- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 汇编程序设计 6.1 算法设计方法 一个复杂的算法, 如果不考虑实时实现, 可以考虑调用现有的函数实现。如求y=sin(x),可以直接调用C语言的sin函数。 该函数直接采用浮点运算, 其内部用泰勒级数公式实现计算, 输入和输出参数也都为浮点数。 调用C语言的sin函数不仅简单、 快捷, 而且精度高, 但运算量大,要求较多的运行时间。 如果时间不够, 可考虑用以下方法改进。 6.1.1 查表法 如果输入变量与输出变量可以用简单的映射关系来描述, 就可以用查表法实现相关函数。 如sin函数(这里泛指任意一个非线性函数), 若在它一个周期内先均匀采样N个点, 制作成一个表, 然后将输入变量x变换成表的偏移地址, 即可实现, 如图6.1所示。 图 6.1 sin函数一个周期的采样值(N=16) 表的偏移地址的计算方法是, 将x=[0~2π)弧度变换到0~N-1之间的整数index。 如果存储单元数富有余地, 可采用加大表的长度的方法提高精度; 如果存储单元数不足, 可采用线性插值的方法提高精度。 设采用线性插值计算x′和index, 如图6.2所示。 图 6.2 线性插值示意图 则插值点x对应的y值近似等价于 y≈y′=y(index)+[y(index+1)-y(index)](x′-index) (6.4)式中, y(index+1)-y(index)可单独制作一张表, 而不必每次都查表计算。 采用更高阶插值的方法可以进一步提高数据精度, 但运算量也随之增加。 6.1.2 数学变换法 C54x的直接运算只有加、 减、 乘、 移位和逻辑运算等, 要实现其他运算, 需采用数学变换将其他运算变换成这类运算才可以实现, 最常见的数学变换为级数展开法。 如正弦用级数展开, 取前5项为 式(6.5)具有迭代性。 若系数用Q15格式表示, 从最里面的括号开始计算, 均为乘加(减)运算, 可用C54x的汇编专用指令快速实现。 余弦等其他函数也可用类似的方法处理。 正弦函数也可用迭代公式(6.6)计算, 但不推荐使用, 因为它容易产生累加误差。 sin(nθ)=2cos(θ)sin[(n-1)θ]-sin[(n-2)θ](6.6) 例6.1 用查表法产生线性调频信号。 线性调频信号(Linear Frequency Modulation, LFM)的理论公式为 若用数字系统实现调频信号, 需对信号进行离散化处理。 设采样频率为fs=1/Ts, Ts为采样周期, 则t=nTs, n=0, 1, 2, …, N-1, N=T/Ts为一个LSF信号周期的采样总点数。 另设一个正弦周期的离散相位数为M,离散化式(6.7), 得 公式虽然简单, 但运算量却不小。 要在一个采样周期内算出一个采样值u(n), 需要足够快的CPU。 一般将运算公式变换成运算量小的加减运算, 尽量避免运算量大的乘除运算。 令 当n0时,f(n)可写成递推公式的形式 f(n)=f(n-1)+2Kcn-Kc+Kp (6.13) 用两个累加器实现: 从式(6.7)可以看出, u(n)仍为正弦信号, 只要按式(6.13)求出n时刻的 f(n), 查正弦表即可求出u(n)(直接计算正弦值的运算量很大, 一般不采用)。 如f1=450 Hz, f2=150 Hz, T=5 s, 设采样频率fs=8 kHz, 一个正弦周期的离散相位数M=1024,可算出Kc=-4.8×10-4, Kp= 57.6。 6.2 FIR滤波器的设计 数字滤波器可分为IIR滤波器和FIR滤波器。 从设计理论来讲, 设计数字滤波器是比较复杂的过程, 但借助于MATLAB等现代设计软件, 可使问题大大简化。 如果利用这些工具设计出来的结果不能满足实践要求, 则需要根据数字滤波器的设计理论进行计算, 再转化为DSP来实现。 FIR滤波器的系统函数为 这是一个典型的乘加运算, 可采用直接型结构实现, 如图6.3所示。 图 6.3 FIR滤波器的直接型实现 FIR的实现结构还有级联型、 频率抽样型、 快速卷积结构和线性相位FIR滤波器(也称系数对称FIR滤波器)结构等多种形式。 如果系数具有对称性, 可采用线性相位FIR滤波器结构, 以节省运算时间。 在DSPLIB库函数中, 一般采用级联型结构, 因为级联型结构更容易实现代码的重复使用。 要实现FIR滤波器, 需合理使用存储器, 以获得较高的运算效率。 6.2.1 直接型FIR滤波器实现 直接型FIR滤波器
您可能关注的文档
- Dreamweaver应用与网页设计案例教程 教学课件 作者 杨长安 沈大林 孟昭勇 第7章站点管理、模板和库.pdf
- Dreamweaver应用与网页设计案例教程 教学课件 作者 杨长安 沈大林 孟昭勇 第8章 动态网站设计.pdf
- DSP 技术及应用 教学课件 作者 陈金鹰 主编 1.ppt
- DSP 技术及应用 教学课件 作者 陈金鹰 主编 2.ppt
- DSP 技术及应用 教学课件 作者 陈金鹰 主编 3.ppt
- DSP 技术及应用 教学课件 作者 陈金鹰 主编 4.ppt
- DSP 技术及应用 教学课件 作者 陈金鹰 主编 5.ppt
- DSP处理器原理与应用 教学课件 作者 鲍安平 全书 第1章.ppt
- DSP处理器原理与应用 教学课件 作者 鲍安平 全书 第2章.ppt
- DSP处理器原理与应用 教学课件 作者 鲍安平 全书 第3章.ppt
- DSP技术及应用 教学课件 作者 江金龙 第5 8章第7章.ppt
- DSP技术及应用 教学课件 作者 江金龙 第5 8章第8章.ppt
- DSP技术实践教程—TMS320F2812设计与实验 教学课件 作者 姚晓通 王紫婷 08819DSP教案.ppt
- DSP技术与应用实验指导 教学课件 作者 段丽娜 DSP 01章芯片慨述.ppt
- DSP技术与应用实验指导 教学课件 作者 段丽娜 DSP 02总体结构.ppt
- DSP技术与应用实验指导 教学课件 作者 段丽娜 DSP 03章(2 4)AD和SCI、SPI.ppt
- DSP技术与应用实验指导 教学课件 作者 段丽娜 DSP 04寻址方式与指令系统.ppt
- DSP技术与应用实验指导 教学课件 作者 段丽娜 DSP 05编程与环境.ppt
- DSP控制器原理及应用 教学课件 作者 宁改娣 杨拴科 2.TIDSP系列及硬件结构.ppt
- DSP控制器原理及应用 教学课件 作者 宁改娣 杨拴科 3.DSP寻址及指令.ppt
文档评论(0)