最新DSP原理与应用.pptVIP

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

图7-6 的信号流图 * hhjkl 图7-7 二阶IIR滤波器的直接型Ⅱ的实现 由于直接型Ⅱ对于给定的传递函数具有最小可能的延迟数、加法器数和乘法器数,所以被称为标准型。 * hhjkl 7.4.2 高阶IIR滤波器的结构 高阶IIR滤波器的差分方程和系统函数分别为: * hhjkl 图7-8 高阶IIR滤波器的直接型Ⅱ实现(L=M+1) * hhjkl 图7-9 高阶IIR滤波器的串联型结构 图7-10 第k个二阶节 * hhjkl 对于 ,有 其中, 注意: * hhjkl 7.4.3 IIR滤波器的C语言实现 例7-11,采用二维数组编写的IIR滤波器C语言程序。 temp=xin; /*xin为IIR滤波器的输入 */ for(k=0;kN_IIR;k++) /*N_IIR为IIR滤波器二阶节的个数 { w[0][k]=temp-a[1][k]*w[1][k]-a[2][k]*w[2][k]; /*这里,temp为本二阶节的输入,也是上一级二阶节的输出*/ temp=b[0][k]*w[0][k]+b[1][k]*w[1][k]+b[2][k]*w[2][k]; /*这里,temp为本二阶节的输出,也是下一级二阶节的输入*/ w[2][k]=w[1][k]; w[1][k]=w[0][k]; } xoutput=temp;/*xoutput为IIR滤波器的输出 */ a[i][k](i=1,2)和b[i][k] (i=0,1,2)分别为第k(k=0,1,K)个二阶IIR滤波器环节的系数。 w[i][k] (i=0,1,2)是第k个二阶IIR滤波器环节中对应于图7-10中(m= 0, 1,2)的中间信号。 * hhjkl 7.4.4 IIR滤波器的汇编语言实现 例7-12,采用指针编写的IIR滤波器汇编语言程序。 ;iir.asm ;函数原型: ;void iir(int *,unsigned int,int *,int *,unsigned int,int *); ;入口参数: ;参数0:AR0 - 输入信号缓冲区指针 ;参数1:T0 - 输入信号缓冲区的样本数 ;参数2:AR2 - 输出信号缓冲区指针 ;参数3:AR1 – IIR滤波器系数数组指针 ;参数4:T1 - 二阶IIR节的个数 ;参数5:AR3 – 延迟线指针 * hhjkl ;第k节IIR滤波器: ;w(n)=x(n)-a1k*w(n-1)-a2k*w(n-2) ;y(n)=b0k*w(n)+b1k*w(n-1)+b2k*w(n-2) ; ;存储器分配: ; 暂存单元[2* N_IIR] 系数 [5* N_IIR] ; AR3 - w1i AR7 - a1k ; w1j a2k ; : b2k ; w2i b0k ; w2j b1k ; : : ; 标定:Q14 格式 * hhjkl .global _iir .sect iir_code _iir pshm ST1_55 ; 保存ST1,ST2,ST3 pshm ST2_55 pshm ST3_55 psh T3 ; 保存T3 pshboth XAR7 ; 保存AR7 or #0x340,mmap(ST1_55) ;设置FRCT,SXMD,SATD bset SMUL ;置位SMUL sub #1,T0 ; 样本数 - 1 mov T0,BRC0 ; 设置外循环计数器 sub #1,T1,T0 ; 二阶节个数 - 1 mov T0,BRC1 ; 设置内循环计数器 mov T1,T0 ;设置循环缓冲区大小 sfts T0,#1 mov mmap(T0),BK03 ;BK03=2*二阶节个数 sfts T0,#1 add T1,T0 * hhj

文档评论(0)

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

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

1亿VIP精品文档

相关文档