文档介绍:蒀重庆三峡学院薇膄实验报告羂艿课程名称数字信号处理原理及实现蚇薅实验名称IIR滤波器和FIR滤波器实现蚃羈实验类型学时2螇羅系别专业膁肀年级班别开出学期2010-2011下袇膂学生姓名学号袃实验教师成绩蝿袇薃芁薈羆羄2011年5月25日羃实验四IIR滤波器和FIR滤波器实现薁一、实验目的肆 1. 掌握IIR滤波器的原理与设计方法;莅2、掌握FIR滤波器的原理和窗函数设计法蒁 3、 掌握用C语言编写DSP程序的方法。莀二、实验设备膆1. S软件的计算机;螆 2. DSP实验箱的TMS320C5410主控板;膃 3. DSP硬件仿真器。腿三、实验原理芆 1、数字滤波器的输入x[k]和输出y[k]之间的关系可以用如下常系数线性差分方程及其z变换描述:袃蚁系统的转移函数为:羈莆设计一个IIR滤波器就是要根据所给定的指标确定上式中的分子和分母系数。芄 设计IIR数字滤波器可以先设计一个合适的模拟滤波器,然后变换成满足给定指标的数字滤波器。这种方法很简便,因为模拟滤波器有多种设计方法,如巴特沃思型滤波器、切比雪夫型滤波器、椭圆函数型滤波器等,并且已经具有很多简单而又现成的设计公式。采用这种方法需要把s平面映射到z平面,使模拟系统函数H(s)变换成所需的数字滤波器的系统函数H(z)。映射方法主要有冲激响应不变法、阶跃响应不变法和双线性变换法。前两种方法会因为多值映射关系产生混叠失真,双线性变换法克服了这一缺点。双线性变换法的映射关系式是:莂羁 本实验采用的是巴特沃思型滤波器,并用双线性变换法转换成数字滤波器。蒆2、数字滤波是DSP的最基本的应用领域之一。对于许多应用来说,数字滤波一般具有如下的差分方程形式:蚄螀式中,X(n)为输入序列,Y(n)为输出序列,Ak和Bk为滤波器系数,N是滤波器的阶数。若式中所有的Bk均为零,且通常把系数Ak记为hk, 则有:蝿蒆上式就是FIR滤波器的差分方程了。FIR滤波器的最主要的特点是没有反馈回路,因此它是无条件稳定系统。它的单位脉冲响应h(n)是一个有限长序列。由上面的方程可见,FIR滤波算法实际上是一种乘法累加运算,它不断地输入样本x(n),经延时(z–1),做乘法累加,再输出滤波结果y(n)。肅 要设计一个FIR滤波器就是要求出它的冲击响应系数h(n),设计方法主要有窗函数法和频率抽样法,本实验要求掌握窗函数法,这也是最基本的方法。薂 理想的低通滤波器的频率响应Hd(w)是一个矩形,这意味着它在时域上是无限长的序列,这在实际上是不可能实现的。因此我们要采取某种方法截断Hd(n),可以用一个有限长度的窗函数序列w(n)与之相乘。这个窗函数序列的形状和长度都会对最后系统的频率响应特性产生影响,因此对窗函数的分析和选择是设计FIR滤波器的关键问题所在。蒈 本实验举了五种常用的窗函数为例,通过设置参数可以得到加上不同窗后的冲击响应序列h(n),并且可以观察到其幅频响应图。薆关于根据给定频率要求进行FIR滤波器设计的详细原理,以及在求得符合要求的h(n)后如何对输入信号序列进行滤波,请读者参考数字信号处理的有关资料。蒆四、实验步骤羀(一)IIR滤波器薁1. 在CCS环境中打开本实验的工程(),,然后通过仿真器把执行代码(.out的文件)下载到DSP芯片中;蚂芀3. 运行程序;螅4. 在Watch窗口观察系统函数H(z)的分子和分母系数ptr_b,ptr_a。写出该滤波器的系统函数。->graph->time/frequency…。设置对话框中的参数:其中 “StartAddress”设为“hwdb”,“Acquisitionbuffersize”和“DisplayDatasize”都设为“50”,并且把“DSPDataType”设为“32-bitfloatingpoint”,观察幅频响应的波形(如图);蒄聿袅5. 修改滤波器的设计参量fp,fr,fs,ap,ar等,重复上述过程,观察设计结果。(其参数值均在编写的程序中请注意按程序修改)蒅(二)FIR滤波器袂1. 复习有关FIR滤波器的原理;袈2. 在CCS环境中打开本实验的工程(),,然后通过仿真器把执行代码(.out的文件)下载到DSP芯片中;薄袁4. 阅读源代码,记下各种窗函数的公式;肅5. 运行程序(执行需要一定时间);羃6. 选择view->graph->time/frequency…。设置对话框中的参数:其中“StartAddress”设为“hd”,“Acquisitionbuffersize”和“DisplayDatasize”都设为“21”(因为源程序中n=21),并且把“DSPDataType”设为“32-bitfloati