第三章无限长单位脉冲响应滤波器的设计方法
- 格式:ppt
- 大小:830.50 KB
- 文档页数:62
FIR和IIR滤波器设计滤波器是信号处理中常用的工具,用于去除信号中的噪声、增强或抑制特定频率成分等。
FIR(有限脉冲响应)和IIR(无限脉冲响应)是两种常见的滤波器设计方法。
FIR滤波器是一种线性相位的滤波器,其脉冲响应是有限长度的,因此被称为有限脉冲响应。
它的频率响应是通过一个线性组合的单位样本响应来实现的。
在设计FIR滤波器时,可以通过窗函数法或频率采样法来选择滤波器的系数。
窗函数法适用于要求较为简单的滤波器,而频率采样法适用于要求较高的滤波器。
窗函数法是一种基于原始滤波器响应的方法。
它通过将滤波器响应乘以一个窗函数,从而使得脉冲响应在时间上截断。
常用的窗函数有矩形窗、汉明窗、布莱克曼窗等。
通过选择不同窗函数可以得到不同的滤波器特性,如频带宽度、峰值纹波等。
频率采样法是一种通过等间隔采样得到频率响应的方法。
首先确定滤波器的截止频率和带宽,然后选择一组频率点进行采样。
根据采样得到的频率响应,可以通过逆傅里叶变换得到滤波器的脉冲响应,进而得到滤波器的系数。
频率采样法可以灵活地选择频率点,从而得到更精确的滤波器特性。
与FIR滤波器不同,IIR滤波器的脉冲响应是无限长度的,因此被称为无限脉冲响应。
IIR滤波器的频率响应是通过递归方式的单位样本响应来实现的。
在设计IIR滤波器时,可以通过模拟滤波器的方法来选择滤波器的结构和参数。
常用的模拟滤波器有巴特沃斯滤波器、切比雪夫滤波器等。
巴特沃斯滤波器是一种最优近似设计的滤波器,其特点是在通带和阻带中都具有等级衰减。
切比雪夫滤波器是一种在通带和阻带中都具有等级衰减,同时具有较窄过渡带的滤波器。
这两种滤波器的设计方法都是基于频率变换的思想,首先将模拟滤波器的频率响应映射到数字滤波器上,然后利用一定的优化算法来得到滤波器的参数。
FIR和IIR滤波器在滤波器设计中有不同的特点和适用范围。
FIR滤波器具有线性相位特性,因此适用于对信号的相位要求较高的应用,如音频处理、图像处理等。
脉冲响应不变法设计iir数字滤波器以脉冲响应不变法设计IIR数字滤波器引言:数字滤波器是数字信号处理中的重要组成部分,用于处理和改变数字信号的频率特性。
脉冲响应不变法(Impulse Invariance Method)是一种常用的IIR数字滤波器设计方法,其基本原理是通过将连续时间域中的模拟滤波器的脉冲响应与采样脉冲响应进行匹配,从而实现滤波器的设计。
一、脉冲响应不变法基本原理脉冲响应不变法的基本原理是将连续时间域中的模拟滤波器的脉冲响应与离散时间域中的数字滤波器的脉冲响应进行匹配。
在这种方法中,首先需要确定模拟滤波器的脉冲响应,然后通过采样得到数字滤波器的脉冲响应,最后将其离散化得到数字滤波器的差分方程。
二、脉冲响应不变法的设计步骤1. 确定模拟滤波器的脉冲响应:选择适当的模拟滤波器类型,并设计其频率响应。
根据滤波器的阶数和截止频率,确定模拟滤波器的差分方程。
2. 采样得到数字滤波器的脉冲响应:通过将连续时间域中的模拟滤波器的脉冲响应与采样脉冲进行卷积,得到数字滤波器的脉冲响应。
3. 离散化得到数字滤波器的差分方程:将数字滤波器的脉冲响应离散化,得到数字滤波器的差分方程。
根据差分方程,可以计算数字滤波器的各个系数。
三、脉冲响应不变法的优缺点脉冲响应不变法具有以下优点:1. 设计方法简单:通过匹配模拟滤波器和数字滤波器的脉冲响应,可以直接得到数字滤波器的差分方程,设计方法相对简单。
2. 精度较高:脉冲响应不变法可以保持模拟滤波器的频率响应特性,因此可以实现较高的滤波器精度。
3. 适用范围广:脉冲响应不变法适用于各种模拟滤波器类型和滤波器规格的设计。
然而,脉冲响应不变法也存在一些缺点:1. 频率响应失真:由于采样过程中的截断和抽样误差,脉冲响应不变法可能导致数字滤波器的频率响应失真。
2. 高阶滤波器设计困难:对于高阶滤波器的设计,脉冲响应不变法可能会导致数字滤波器的稳定性问题和数值计算问题。
四、脉冲响应不变法的应用领域脉冲响应不变法广泛应用于数字信号处理领域,特别是在音频信号处理、图像处理和通信系统中的滤波器设计中。
fir和iir滤波器原理FIR(有限脉冲响应)滤波器和IIR(无限脉冲响应)滤波器是两种常见的数字滤波器类型。
它们在信号处理中有着广泛的应用,如音频处理、图像处理、数据压缩等。
本篇文章将详细介绍FIR和IIR滤波器的原理,包括其基本概念、数学模型、设计方法以及应用。
一、基本概念FIR滤波器是一种线性时不变滤波器,其输出仅取决于当前的输入和过去的FIR滤波器系数。
IIR滤波器则不同,它的输出不仅取决于当前的输入,还取决于过去的输出和滤波器系数。
二、数学模型1.FIR滤波器:FIR滤波器的传递函数可以表示为系统单位冲击响应的有限长度。
其数学模型为H(z)=∑nx(n)*z(-n),其中x(n)是输入信号,H(z)是输出信号,z(-n)是z的逆,n是滤波器阶数,∑是求和。
2.IIR滤波器:IIR滤波器的传递函数通常表示为一个线性微分方程。
其数学模型为H(z,θ)=∑θ(n)*z(-n)+u(n),其中H(z,θ)是输出信号,u(n)是输入信号,θ(n)是滤波器系数,z(-n)和∑是同FIR滤波器一样。
三、设计方法1.FIR滤波器设计:通常采用窗函数法、频率采样法和等波纹设计法。
窗函数法通过选择合适的窗函数来减少滤波器的相位失真;频率采样法通过采样频率来设计滤波器;等波纹设计法通过调整滤波器系数来使滤波器输出与输入信号的频谱保持一致。
2.IIR滤波器设计:IIR滤波器的设计方法相对复杂,包括零极点配对、长项法和映射法等。
通常需要根据特定需求来选择合适的设计方法,同时注意系统的稳定性、频率响应和稳定性失真等指标。
四、应用FIR和IIR滤波器在各种领域都有广泛应用,包括音频处理、图像处理、通信、数据压缩等。
FIR滤波器在音频处理中常用于消除音频信号中的噪声,改善音质;在图像处理中常用于降噪和图像增强。
IIR滤波器在通信中常用于消除干扰信号,改善通信质量;在数据压缩中常用于降低数据冗余,提高数据传输效率。
五、总结FIR和IIR滤波器是数字信号处理中的重要工具,它们各自有其特点和适用范围。
IIR滤波器的DSP实现一、IIR滤波器的基本结构IIR滤波器差分方程的一般表达式为:式中x(n)为输入序列;y(n)为输出序列;和为滤波器系数.若所有系数等于0,则为FIR滤波器.IIR滤波器具有无限长的单位脉冲响应,在结构上存在反馈回路,具有递归性,即IIR滤波器的输出不仅与输入有关,而且与过去的输出有关.将上式展开得出y(n)表达式为:在零初始条件下,对上式进行z变换,得到:设N=M,则传递函数为:上式可写成:上式具有N个零点和N个极点.若有极点位于单位圆外将导致系统不稳定.由于FIR滤波器所有的系数均为0,不存在极点,不会造成系数的不稳定.对于IIR滤波器,系统稳定的条件如下: 若||<1,当n→时,h(n)→0,系统稳定;若||>1,当n→时,h(n)→,系统不稳定.IIR滤波器具有多种形式,主要有:直接型(也称直接I型)、标准型(也称直接II型)、变换型、级联型和并联型.二阶IIR滤波器,又称为二阶基本节,分为直接型、标准型和变换型.对于一个二阶IIR滤波器,其输出可以写成:1.直接型(直接I型)根据上式可以得到直接二型IIR滤波器的结构图.如图1所示.共使用了4个延迟单元().直接型二阶IIR滤波器还可以用图2的结构实现.图2 直接I型二阶IIR滤波器此时,延时变量变成了w(n).可以证明上图的结构仍满足二阶IIR滤波器输出方程.前向通道:反馈通道:将1.2式代入1.1式可得:2.标准型(直接II型)从图2可以看出,左右两组延迟单元可以重叠,从而得到标准二阶IIR滤波器的结构图,如图3所示.由于这种结构所使用的延迟单元最少(只有2个),得到了广泛地应用,因此称之为标准型IIR滤波器.图3 标准型二阶IIR滤波器二、IIR滤波器的设计IIR滤波器的设计可以利用模拟滤波器原型,借鉴成熟的模拟滤波器的设计结果进行双线性变换,将模拟滤波器变换成满足预定指标的数字滤波器,即根据模拟设计理论设计出满足要求的传递函数H(s),然后将H(s)变换成数字滤波器的传递函数H(z).设计IIR滤波器的基础是设计模拟滤波器的原型,这些原型滤波器主要有:①巴特沃兹(Butterworth)滤波器,其幅度响应在通带内具有最平特性;②切比雪夫(Chebyshev)滤波器,在通带内具有等波纹特性,且阶数小于巴特沃兹滤波器.③椭圆(Elliptic)滤波器,在通带内具有等波纹特性,且阶数最小.将模拟滤波器转换为数字滤波器常用的方法是双线性变换,其作用是完成从s平面到z平面的一个映射.其关系为:双线性变换的基本性质如下:①s平面上的轴映射到z平面的单位圆上;②s平面的左半平面映射到z平面的单位圆内;③s平面的右半平面映射到z平面的单位圆外.考虑到s平面上的虚轴映射为z平面的单位圆,令,它代表一个可变的模拟频率.其z平面上相应的数字频率为,即,将以上两式代入2.1式得:对上式求解得:模拟频率和相应的数字频率之间的映射关系如图4所示:图4 和之间的映射关系当在0~1之间变化时,在0~之间变化,为采样频率:当时,其对应的在之间.双线性变换会造成频率失真,通常采用预畸变来补偿频率失真.双线性变换设计的步骤如下:①选择一个合适的模拟传递函数H(s);②对截止频率或预定的数字频率进行畸变,并根据式2.3求得相应的模拟频率;③用对H(s)中的频率进行换算,即:④用式2.1计算H(z):三、二阶IIR滤波器的DSP实现1.标准型二阶IIR滤波器的实现在二阶IIR滤波器结构中,标准型结构是最常见的滤波器结构,其结构如图5所示:图5 标准型二阶IIR滤波器由结构图可以写出反馈通道和前向通道的差分方程:反馈通道:前向通道:由以上两式对二阶IIR滤波器进行编程,其中乘法-累加运算可采用单操作数指令或双操作数指令,数据和系数可存放在DARAM中,如图6所示:图6 双操作数数据存放和系数表2.直接型二阶IIR滤波器的实现二阶IIR滤波器可以用直接型结构来实现.在迭代运算中,先衰减后增益,系统的动态范围和鲁棒性要好些.直接型二阶IIR滤波器的结构如图7所示:图7 直接型二阶IIR滤波器直接型二阶IIR滤波器的脉冲传递函数为:差分方程为:为了实现直接型滤波,可在DARAM中开辟4个循环缓冲区,用来存放变量和系数,并采用循环缓冲区方式寻址.这4个循环缓冲区的结构如图8所示:图8 循环缓冲区结构四、总体设计方案1.利用MATLAB来确定IIR滤波器的参数;2.启动CCS,在CCS中建立一个汇编源文件、建立一个C源文件和一个命令文件,并将这三个文件添加到工程,再编译并装载程序;3.设置波形时域观察窗口,得到其滤波前后波形变化图;4.设置频域观察窗口,得到其滤波前后频谱变化图.五、主要参数f1=500Hz f2=1000Hz f s=2000六、源程序1.汇编源文件程序(.asm).global _iir,_init,_outdata_iirbset frctsub #1,t0mov t0,mmap(csr)add t0,ar0mov xar2,xdpmov ar2,cdpmov #0,ac0rpt csrmacmz *ar0-,*cdp+,ac0add t0,ar1mov xar3,xdpmov ar3,cdprpt csrmacmz *ar1-,*cdp+,ac0mar *ar1+mov hi(ac0),*ar1mov hi(ac0),t0bclr frctret_initsub #1,t0mov t0,mmap(csr)mov #0,ac0rpt csrmov ac0,*ar0+rpt csrmov ac0,*ar1+ret_outdatamov t1,ac0sub #2,ac0mov ac0,mmap(csr)add ac0,ar0rpt csrdelay *ar0-mar *ar0+mov t0,*ar0ret2.C源文件程序(.c)#includ e "math.h"#define signal_1_f 500#define signal_2_f 10000#define signal_sample_f 25000#define pi 3.1415926#define IIRNUMBER_L 2#define bufer_L 256int N_L=IIRNUMBER_L;int data_in[bufer_L];int out[bufer_L] ;int x[IIRNUMBER_L+1];int y[IIRNUMBER_L+1];int k=0;int bufer=bufer_L;int fBn[IIRNUMBER_L]={0,0x634a};int fAn[IIRNUMBER_L]={0xe5c,0xe5c};extern int iir(int *x,int *y,int *fAn,int *fBn,int N_L); extern int init(int *,int *,int);extern int outdata(int *,int,int);void inputwave();void main(){int iirout;inputwave();init(x,y,N_L);while(1){x[0]=data_in[k];iirout=iir(x,y,fAn,fBn,N_L);outdata(out,iirout,bufer);k++;if(k>=bufer_L){k=0;}}}void inputwave(){fl oat wt1;fl oat wt2;int i;for(i=0;i<=bufer_L;i++){wt1=2*pi*i*signal_1_f;wt1=wt1/signal_sample_f;wt2=2*pi*i*signal_2_f;wt2=wt2/signal_sample_f;data_in[i]=(cos(wt1)+cos(wt2))/2*32768;}}3.命令文件程序(.cmd)-stack 0x0500-sysstack 0x0500-heap 0x1000-c-u _Reset-l rts55.libMEMORY{PAGE 0:RAM(RWIX): origin=0x000100, length=0x01ff00ROM(RIX): origin=0x020100, length=0x01ff00VECS(RIX): origin=0xffff00, length=0x000200 PAGE 2:IOPORT(RWI):origin=0x000000, length=0x020000 }SECTIONS{.text >ROM PAGE 0.data >ROM PAGE 0.bss >RAM PAGE 0.const >RAM PAGE 0.sysmem >RAM PAGE 0.stack >RAM PAGE 0.cio >RAM PAGE 0.sysstack >RAM PAGE 0.switch >RAM PAGE 0.cinit >RAM PAGE 0.pinit >RAM PAGE 0.vectors >VECS PAGE 0.ioport >IOPORT PAGE 2}七、实验结果及分析1.输入波形:①时域波形:②频域波形:2.输出波形:①时域波形:②频域波形:八、心得体会课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,数字技术已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在.通过这次课设,我掌握了数字滤波器的设计过程,了解了IIR的原理和特性,学习IIR滤波器的DSP 实现原理.熟悉设计IIR数字滤波器的原理和方法,学习使用CCS的波形观察窗口观察输入输出信号波形和频谱变化情况.通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力.DSP原理及应用课程设计报告设计课题: IIR滤波器的DSP实现专业班级: 信息07-2班姓名: 王晓萱学号: 07100637同组人: 王鑫、蔚金昌、吴杰、徐扬、李峰。
滤波器设计中的有限脉冲响应滤波器在滤波器设计中,有限脉冲响应(Finite Impulse Response,简称FIR)滤波器是一种常用的数字滤波器。
它的特点是在有限的时间内,对于输入信号的激励响应仅持续一段时间,然后逐渐趋于零。
本文将对有限脉冲响应滤波器的原理、设计方法和应用进行探讨。
一、有限脉冲响应滤波器的原理有限脉冲响应滤波器的原理基于线性时不变系统的概念。
在其输入信号被滤波后,输出信号可以通过其输入信号与系统的冲击响应之间的卷积来得到。
有限脉冲响应滤波器的冲击响应是有限长度的,因此其输出信号只在有限时间内有效。
二、有限脉冲响应滤波器的设计方法有限脉冲响应滤波器的设计需要考虑滤波器的阶数、截止频率以及滤波器系数等因素。
常用的设计方法有窗函数法、频率采样法和最小均方差法等。
1. 窗函数法窗函数法是最常用的有限脉冲响应滤波器设计方法之一。
该方法首先选择一个窗函数,然后通过频域设计要求计算出理想的滤波器频域响应,再通过傅里叶反变换将其转化为时域的冲击响应。
最后,根据窗函数的特性对冲击响应进行加窗处理,得到最终的滤波器系数。
2. 频率采样法频率采样法是一种通过选择一组频率点来得到滤波器系数的方法。
首先在频域上规定一组频率点,然后通过将这些频率点的幅度和相位带入到滤波器特征方程等式中,求解出滤波器系数。
频率采样法的优点是设计过程简单,但在某些情况下可能会出现频谱泄漏等问题。
3. 最小均方差法最小均方差法是通过最小化设计误差的平方和来得到滤波器系数的方法。
该方法首先定义误差函数,然后通过求解导数为零的方程,得到滤波器系数的估计值。
最小均方差法能够减小设计误差,但计算复杂度较高。
三、有限脉冲响应滤波器的应用有限脉冲响应滤波器在数字信号处理中有广泛的应用。
其主要应用领域包括音频处理、图像处理和通信系统等。
1. 音频处理在音频处理中,有限脉冲响应滤波器可以用于音频均衡器、音频效果器和声音降噪等方面。
通过调整滤波器的系数和截止频率,可以实现对音频信号的滤波和调节。