滤波器的性能指标及MATLAB仿真.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
滤波器的性能指标及MATLAB仿真.doc

FIR数字滤波器的DSP实现 TMS320C5402 在指令集和硬件结构上对滤波器算法的实现有专门的考虑。首先是在指令中设置了MACD 指令, 他的功能是将数据区的两个数相乘以后, 再与累加器中的值累加, 运算结果仍保留于累加器中, 而为下一次操作准备; 其次, 在硬件上设计了间接寻址时的循环寻址功能, 即将滤波器系数保存于一个可循环寻址的数据缓冲区, 寻址指针由低地址自动增长, 当达到缓冲区顶部时, 自动返回低地址重新寻址, 这样, 配合单指令重复指令RPT , 就可以快速实现卷积操作。 在FIR数字滤波器的设计中, 一个必须注意的问题是计算的精度和结果溢出问题。由于在滤波器设计时, 滤波器的系数都是小数, 为了获得较高的精度和整数化系数,一般都要对求出来的系数乘一个较大的数, 然后再调整。这样导致在计算中有可能累加器溢出; 另一个问题是计算后累加器中的结果数值为32 位, 而物理的存储器位数是16 位, 在存储处理结果时, 通常的做法是将低16 位结果直接丢弃不用, 只取高16位作为计算结果, 但这样做带来的后果是精度降低。因而在考虑滤波器设计时, 必须综合考虑输入信号的幅度, 并仔细分析中间值的大小, 调整滤波器的系数, 在不影响计算速度的情况下, 提高计算精度。 TMS320C5402在指令集和硬件结构上对滤波器算法的实现有专门的考虑。首先是在指令中设置了MACD指令, 他的功能是将数据区的两个数相乘以后, 再与累加器中的值累加, 运算结果仍保留于累加器中, 而为下一次操作准备; 其次, 在硬件上设计了间接寻址时的循环寻址功能, 即将滤波器系数保存于一个可循环寻址的数据缓冲区, 寻址指针由低地址自动增长, 当达到缓冲区顶部时, 自动返回低地址重新寻址, 这样, 配合单指令重复指令RPT , 就可以快速实现卷积操作。 在FIR数字滤波器的设计中, 一个必须注意的问题是计算的精度和结果溢出问题。由于在滤波器设计时, 滤波器的系数都是小数, 为了获得较高的精度和整数化系数,一般都要对求出来的系数乘一个较大的数, 然后再调整。这样导致在计算中有可能累加器溢出; 另一个问题是计算后累加器中的结果数值为32 位, 而物理的存储器位数是16 位, 在存储处理结果时, 通常的做法是将低16 位结果直接丢弃不用, 只取高16 位作为计算结果, 但这样做带来的后果是精度降低。因而在考虑滤波器设计时, 必须综合考虑输入信号的幅度, 并仔细分析中间值的大小, 调整滤波器的系数, 在不影响计算速度的情况下, 提高计算精度。 利用数字信号处理器处理语音时, 除了在语音输入端加上硬件滤波电路外, 还需进行数字滤波。因为硬件滤波电路的阻带衰减不好, 在滤波时无用的频率成分不可能滤干净。该数字滤波器的技术指标为:通带截止频率,阻带截止频率为,实际通带波动,最小阻带衰减,抽样频率,窗函数的选用用凯塞窗可以满足设计需求。 上述FIR数字滤波器的源程序如下: .mm regs .global begin k_fir_index.set1 k_fir_bffr.set82 ;FIR数字滤波器的阶数 k_frame_size.set256 .data output.space k_frame_size*16 ;输出数据缓冲区的大小 input.copy firinput ;输入信号(c语言编程生成的文件) coff_fir_start .copy coff_fir ;FIR滤波器的系数 fir_dp .usect “fir_vars”,0 d_filin .usect “fir_vars”,1 d_filout .usect “fir_vars”,1 fir_coff_table .usect “fir_vars”,20 d_data_buffer .usect “fir_bfr”,40 bo s .usect “stack”,0fh to s .usect “stack”,1 .text .def inilite_dsp .def fir_init .def fir_task .asg ar0,fir_index_p .asg ar4,fir_data_p .asg ar5,fir_coff_p inilite_ds

文档评论(0)

aiwendang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档