《Iir滤波器设计》word版.doc_第1页
《Iir滤波器设计》word版.doc_第2页
《Iir滤波器设计》word版.doc_第3页
《Iir滤波器设计》word版.doc_第4页
《Iir滤波器设计》word版.doc_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

电子信息工程专业课程设计题目:Iir滤波器设计班级:电信071姓名:袁晶学号:200709802摘 要摘 要:本论文首先介绍了滤波器的滤波原理以及模拟滤波器、数字滤波器的设计方法。重点介绍了IIR数字滤波器的设计方法。即脉冲响应不变法和双线性变换法。在此基础上,用DSP虚拟实现任意阶IIR数字滤波器。此设计扩展性好,便于调节滤波器的性能,可以根据不同的要求在DSP上加以实现。关键字: DSP 滤波、IIR数字低通滤波器第1章 滤波器简介从广义上讲,任何对某些频率(相对于其他频率来说)进行修正的系统称为滤波器。严格地讲,对输入信号通过一定的处理得到输出信号,这个处理通常是提取信号中某频率范围内的信号成分,把这种处理的过程称为滤波。实现滤波处理的运算电路或设备称为滤波器。在许多科学技术领域中,广泛应用线性滤波和频谱分析对信号进行加工处理,模拟滤波是处理连续信号,数字滤波则是处理离散信号,而后者是在前者的基础上发展起来的。我们知道,无源或有源模拟滤波器是分立元件构成的线性网络,他们的性能可以用线性微分方程来描述,而数字滤波器是个离散线性系统,要用差分方程来描述,并以离散变换方法来分析。这些方程组可以用专用的或通用的数字计算机进行数字运算来实现。因此,数字滤波器的滤波过程是一个计算过程,它将输入信号的序列数字按照预定的要求转换成输出数列。1.1 滤波器的工作原理1.1.1 模拟滤波器的工作原理我们知道,模拟滤波器是对模拟信号实行线性滤波的一种线性时不变系统,如图1.1所示。在时域内,它的动态特性可以用系统的单位冲激函数的响应来描述,也就是该滤波系统在任何时刻对输入单位冲激信号=(t)的输出响应。这个函数从时域上反映了该滤波系统的传输特性。对于任意输入信号,系统的输出可以卷积表示: = (1.1)上式表明在对线性滤波器系统进行时域分析时,采用了叠加原理,先将任意输入信号波形分成不同时间的窄脉冲之和,再分别求出各个脉冲通过滤波器之后的响应,并进行线性叠加从而得到总的输出信号。模拟滤波器,H(s)图1.1模拟滤波器原理在频域分析时,线性滤波器的转移函数等于系统的单位冲激函数的响应的拉普拉斯变换: (1.2)很明显,当s=j,上式就是傅立叶变换的表达式,它反映了滤波器的传输特性对各种频率的响应,也就是滤波器的频率响应函数,它决定着滤波特性。当滤波器输入信号与输出信号的拉普拉斯变换,得 (1.3)这表明两信号卷积的变换等于各自变换的乘积。在频谱关系上,一个输入信号的频谱,经过滤波器的作用后,被变换成的频谱。因此,根据不同的滤波要求来选定,就可以得到不同类型的模拟滤波器。还可以看出,滤波器的滤波过程就是完成信号与它的单位冲激函数响应之间的数学卷积运算过程。1.1.2 数字滤波器的工作原理在数字滤波中,我们主要讨论离散时间序列。如图1.2所示。设输入序列为,离散或数字滤波器对单位抽样序列的响应为。因在时域离散信号和系统中所起的作用相当于单位冲激函数在时域连续信号和系统中所起的作用。数字滤波器,H(z)图1.2 数字滤波器原理数字滤波器的序列将是这两个序列的离散卷积,即 (1.4) 同样,两个序列卷积的z变换等于个自z变换的乘积,即 (1.5)用代入上式,其中T为抽样周期,则得到 (1.6)式中和 分别为数字滤波器输入序列和输出序列的频谱,而为单位抽样序列响应的频谱。由此可见,输入序列的频谱经过滤波后,变为 ,按照的特点和我们处理信号的目的,选取适当的使的滤波后的符合我们的要求。1.2 滤波器的基本特性1.2.1 模拟滤波器与数字滤波器的基本特性如利用模拟电路直接对模拟信号进行处理则构成模拟滤波器,它是一个连续时间系统。如果利用离散时间系统对数字信号(时间离散、幅度量化的信号)进行滤波则构成数字滤波器。数字滤波器的差分方程表示为: 系统函数表示:数字滤波器的特性通常用其频率响应函数来描述,包括幅度特性和相位特性。按信号通过系统时的特性(主要是幅频特性)来分类:可以有低通、高通、带通和带阻四种基本类型。(1) 低通数字滤波器:图1.3所示|H(ej)|c-c-22-fs/2-fsfs/2fs-fcfcf图1.3 低通数字滤波器的频谱(2) 高通数字滤波器:图1.4所示|H(ej)|c-c-22图1.4 高通数字滤波器的频谱(3) 带通数字滤波器:图1.5所示|H(ej)|2-2-221-1图1.5 带通数字滤波器的频谱(4)带阻数字滤波器:图1.6所示1|H(ej)|2-2-22-1 图1.6 带阻数字滤波器的频谱 其他较复杂的特性可以由基本滤波器组合。1.2.2 无限冲击响应IIR和有限冲击响应FIR滤波器按系统冲击响应(或差分方程)可以分成无限冲击响应 IIR和有限冲击响应FIR滤波器两类。这两种滤波器都可以现实各种频率特性要求,但它们在计算流程、具体特性逼近等方面是有差别的。(1) FIR滤波器(非递归型):(2) IIR滤波器(递归型) 还有一些其他的分类方法,例如在特定场合使用的滤波器。1.3 滤波器的主要技术指标滤波器的主要技术指标取决于具体的应用或相互间的相互关系。具体的有最大通带增益(即通带允许起伏);最大阻带增益;通带截止频率;阻带截止频率。如图1.7所示dB0dBdB图1.7 滤波器的主要技术指标第2章 模拟滤波器的设计模拟滤波器的理论和设计方法已经发展的相当成熟,且有若干典型的模拟滤波器供我们选择,如巴特沃斯(Butterworth滤波器.切比雪夫(Chebyshev)滤波器等。这些工作的理论分析和设计方法在20世纪30年代就完成,然而烦琐.冗长的数字计算使它难以付诸实用。直到50年代,由于计算机技术的逐步成熟,求出大量设计参数和图表,这种方法才得到广泛应用。这些典型的滤波器各有特点:巴特沃斯滤波器具有单调下降的幅频特性;切比雪夫滤波器的幅频特性在通带或者阻带有波动发,可以提高选择性。这样根据具体要求可以选择不同类型的滤波器。模拟滤波器按幅度特征可以分成低通、高通、带通和带阻滤波器。它们的理想幅度特性如图2.1所示,但我们设计滤波器时,总是先设计低通滤波器,再通过频率变换将低通滤波器转换成希望类型的滤波器带通带阻图2.1 模拟滤波器理想幅度特性低通高通2.1 模拟滤波器的设计方法利用频率变换设计模拟滤波器的步骤为:(1)给定模拟滤波器的性能指标,如截止频率或上、下边界频率等。(2)确定滤波器阶数(3)设计模拟低通原型滤波器。(4)按频率变换设计模拟滤波器(低通、高通、带通、带阻)。模拟低通滤波器的设计指标有,和,其中和分别称为通带截止频率和阻带截止频率。 是通带(=0)中的最大衰减系数,是阻带的最小衰减系数,和一般用dB表示。对于单调下降的幅度特性,可表示成: (2.1) (2.2)如果=0处幅度已归一化为一,即,和表示为 (2.3) (2.4)以上技术指标用图2.2表示,图中称为3dB 截止频率,因,-20 10.7070图2.2 低通滤波器的幅度特性滤波器的技术指标给定以后,需要设计一个传输函数,希望其幅度平方函数满足给定的指标和,一般滤波器的单位冲激响应为实数,因此 = (2.5)如果能由,求出,那么就可以求出所需的,对于上面介绍的典型滤波器,其幅度平方函数有自己的表达式,可以直接引用。这里要说明的是必须是稳定的。因此极点必须落在s平面的左半平面,相应的的极点落在右半平面。2.2 模拟原型滤波器及最小阶数的选择2.2.1 巴特沃斯滤波器及最小阶数的选择巴特沃斯滤波器是最基本的逼近方法形式之一。它的幅频特性模平方为 (2.6)式中N是滤波器的阶数。当=0时,;当=时,是3dB截止频率。不同阶数N的巴特沃斯滤波器特性如图2.3所示,这一幅频特性具有下列特点:(1)最大平坦性:可以证明:在=0点,它的前(2N-1)阶导数都等于0,这表明巴特沃斯滤波器在=0附近一段范围内是非常平直的,它以原点的最大平坦性来逼近理想低通滤波器。“最平响应”即由此而来。(2)通带,阻带下降的单调性。这种滤波器具有良好的相频特性。(3)3dB的不变性:随着N的增加,频带边缘下降越陡峭,越接近理想特性,但不管N是多少,幅频特性都通过-3dB点。当时,特性以20NdB/dec速度下降。图2.3 不同阶数N的巴特沃斯滤波器特性现根据式(2.6)求巴特沃斯滤波器的系统函数Ha(s)。令=s/j,带入式(2.6)对应的极点: (2.7)即为的极点,此极点分布有下列特点:(1)的2N个极点以/N为间隔均匀分布在半径为的圆周上,这个圆称为巴特沃斯圆。(2)所有极点以j轴为对称轴成对称分布,j轴上没有极点。(3)当N为奇数时,有两个极点分布在的实轴上;N为偶函数时,实轴上没有极点。所有复数极点两两呈共轭对称分布。图2.4画出了N=3时的极点分布。全部零点位于s=处。j图2.4 N=3时Ha(s)Ha(-s)极点分布为得到稳定的,取全部左半平面的极点。 (2.8)当N为偶数时 (2.9)当N为奇数时 (2.10)为使用方便把式(2.9)和式(2.10)对进行归一化处理,为此,分子分母各除以,并令,称为归一化复频率:(N为偶数) (2.11) (N为奇数)(2.12)用归一化频率表示的频率特性称为原型滤波特性(即归一化复频率s 的虚部)。对式(2.6)所示的低通巴特沃斯特性用表示得到: (2.13)称为巴特沃斯低通原型滤波器幅频特性。在低通原型滤波频率特性上,截止频率=1。若给出模拟低通滤波器的设计性能指标要求:通带边界频率,阻带边界频率,通带波纹,阻带衰减,要确定butterworth ,,低通滤波器最小阶数N及截止频率。,的意义如图所示。当=时, 即,以截至频率(幅值下降3dB)为1,化为相对为相对的相对频率由上式可写为。同理,当=时, 。由此可见 N应向上取整,再用MATLAB 编程计算滤波器最小阶数N和截止频率。就是切比雪夫滤波器的极点,给定N,即可求的2N个极点分布。由式(2.22)实部与虚部的正弦和余弦函数平方约束关系可以看出,此极点分布满足椭圆方程,其短轴和长轴分别为 (2.23)图2.7画出了N=3时切比雪夫滤波器的极点分布。abj 图2.7极点所在的椭圆可以和半径为a的圆和半径为b的圆联系起来,这两个圆分别称为巴特沃斯小圆和巴特沃斯大圆。N阶切比雪夫滤波器极点的纵坐标,而横坐标等于N阶巴特沃斯小圆极点的横坐标取左半平面的极点: k=1,2,N (2.24)则切比雪夫滤波器的系统函数: (2.25)其中,常数A=。因而切比雪夫滤波器的系统函数表示为: (2.27)切比雪夫滤波器的截止角频率不是像巴特沃斯滤波器中所规定的(-3dB)处角频率,而是通带边缘的频率。若波纹参数满足,可以求的-3dB处的角频率为 (2.28)将式(2.27)表示的对归一化,得到切比雪夫I型2.2.2低通原型滤波器的系统函数 (2.29)对不同的N,式(2.29)的分母多项式已制成表格,供设计参考。和butterworth低通模拟滤波器设计一样,若给定性能指标要求:,确定Chebyshev低通模拟滤波器最小阶数N和截止频率(-3dB频率)。2.2.2.1 Chbbyshev I型由式可得 故阶数N可由下式求得 式中,截至频率由上面两式用Matlab 编程计算滤波器最小阶数N和截止频率 2.2.2.2 Chbbyshev II型Chbbyshev II型通带内是平滑的,而阻带具有等波纹起伏特性。因此,在阶数N的计算公式上是相同的,而-3dB截止频率则不同。2.2.3 椭圆滤波器及最小阶数的选择椭圆的模拟低通滤波器圆形的平方幅值响应函数为 式中,为小于1的正书,表示波纹情况;为截止频率;)为椭圆函数,定义为当N为偶数(N=2m)时,当N为奇数(N=2m+1)时, 其中椭圆模拟滤波器特点是:在通带和阻带内均具有等波纹起伏特性。何以上滤波器相比,相同的性能指标所需要的阶数最小。但频率响应应具有明显的非线性。由式滤波器的阶数可由下式确定, , 式中 由上式计算滤波器的最小阶数N和截止频率。2.2.4贝塞尔滤波器贝塞尔模拟低通滤波器原型的特点是在零频时具有最平坦的群延迟,并在整个通带内延迟几乎不变。在零频时的群延迟为。由于这一特点,贝塞尔模拟滤波器通带内保持信号形状不变。滤波器传递汉书具有下面形式第3章 IIR数字滤波器的设计3.1 IIR数字滤波器的设计方法 IIR滤波器是一种数字滤波器,滤波器的系统函数如式 (3.1)由于它的脉冲响应序列是无限长的,故称无限冲激响应滤波器。IIR滤波器的设计就是根据滤波器某些性能指标要求,设计滤波器的分子和分母多项式。它和FIR滤波器相比优点是在满足相同性能指标要求条件下,IIR滤波器的阶数要明显低于FIR滤波器。但IIR滤波器的相位是非线性的。IIR滤波器设计方法可分为三种:模拟滤波器变换(经典设计法)、直接设计法、参数模型设计法、最大平滑滤波器设计。3.2 IIR滤波器经典设计 基于模拟滤波器变换原理,首先是根据滤波器的技术指标设计出相应的模拟滤波器,然后再将设计好的模拟滤波器变换成满足给定技术指标的数字滤波器。这就是IIR滤波器设计的经典法。经典法可设计出低通、高通、带通、带阻等各种IIR滤波器。在MATLAB中,经典法设计IIR数字滤波器采用下面的主要步骤:模拟低通滤波原型频率变换模拟离散化IIR滤波器由上可见,经典设计法是利用模拟滤波器的设计成果。第二步完成后,一个达到期望性能指标的模拟滤波器(低通、高通、带通和带阻)已经设计出来。第三步离散化主要任务就是把模拟滤波器变换成数字滤波器,即把模拟滤波器的系数映射成数字滤波器的系统函数。数字滤波器的设计工作就全部完成。实现系统传递函数s域至z域映射有脉冲响应不变法和双线性映射两种方法。脉冲响应不变法利用模拟滤波器成熟的理论和设计方法来设计IIR数字低通滤波器是经常用的方法。设计过程是:按照技术要求设计一个模拟低通滤波器,得到模拟低通滤波器的传输函数转换成数字低通滤波器的系统函数H(z)。这样设计的关键问题就是找这种转换关系,将s平面上的转换成z平面上的H(z)。为了保证转换后的H(z)稳定且满足技术要求,对转换关系提出两点要求:(1)因果稳定的模拟滤波器转换成数字滤波器,仍是因果稳定的。我们知道,模拟滤波器因果稳定要求其传输函数的极点全部位于s平面的左半平面;数字滤波器因果则要求H(z)的极点全部在单位圆内。因此,转换关系应是s平面的左半平面映射z平面的单位圆内部。 (2)数字滤波器的频率响应模仿模拟滤波器的频响,s平面的虚轴映射z平面的单位圆,相应的频率至间成线性关系。 将传输函数从s平面传换到z平面的方法有多种,但工程上常用的是脉冲响应不变法和双线性变换法。我们先研究脉冲响应不变法。设模拟滤波器的传输函数为,相应的单位冲激响应是,=LTLT.代表拉氏变换,对进行等间隔采样,采样间隔为T,得到,将h(n)= 作为数字滤波器的单位取样响应,那么数字滤波器的系统函数H(z)便是h(n)的Z变换。因此脉冲响应不变法是一种时域上的转换方法,它是h(n)在采样点上等于。 设模拟滤波器只有单阶极点,且分母多项式的阶次高于分子多项式的阶次,将用部分分式表示: (3.2)式中为的单阶极点。将逆拉氏变换得到: (3.3)式中u(t)是单位阶跃函数。对进行等间隔采样,采样间隔为T,得到: (3.4) 对上式进行Z变换,得到数字滤波器的系统函数H(z): (3.5) 对比3.2、3.5式,的极点映射到z平面,其极点变成,系数不变化。下面我们分析从模拟滤波器转换到数字滤波器,s平面和z平面之间的映射关系,从而找到这种转换方法的优缺点。这里我们以采样信号作为桥梁,推导其映射关系。设的采样信号用表示, (3.6)对进行拉氏变换,得到: (3.7)式中是在采样点t=n T时的幅度值,它与序列h(n)的幅度值相等,它与序列h(n)的幅度值相等,即h(n)= ,因此得到:上式表示采样信号的拉氏变换与相应的序列的Z变换之间的映射关系可用下式表示: (3.8) 我们知道模拟信号的傅立叶变换和其采样信号的傅立叶变换和其采样信号的傅立叶变换之间的关系满足式: (3.9)将代入上式,得 (3.10)由 (3.8)、(3.10)式得到: (3.11)上式表明将模拟信号的拉氏变换在s平面上沿虚轴按照周期延迟后,再按照(3.8)式映射关系,映射到z平面上,就得到H(z)。(3.8)式可称为标准映射关系。下面进一步分析这种映射关系。设 按照(3.8)式,得到:因此得到: (3.12)那么 上式关系式说明,s平面的虚轴()映射z平面的单位圆(),s平面左平面()映射z平面单位内(),s平面右半平面映射平面单位圆外()。这说明如果因果稳定,转换后得到()仍是因果稳定的。另外,注意到z=是一个周期函数,可写成M为任意整数当不变,模拟频率变化2/T的整数倍时,映射值不变。或者说,将s平面沿着j轴分割成一条条宽为2/T的水平带,每条水平面都按照前面分析的映射关系对应着整个z平面。此时所在的s平面与所在的z平面的映射关系如图所示。当模拟频率从变化到时,数字频率则从变化到,且按照(3.12)式,即与之间成线性关系。但是,从模拟信号到采样信号,其拉氏变换要按照式。其为周期,沿虚轴方向进行周期化。如果原模拟信号得频带不是限于之间,则会在得奇数倍附近产生频率混叠,从而映射到平面上,在附近产生频率混叠。脉冲相应不变法的频率混叠现象如图所示。这种会使设计出的滤波器在附近的频率特性,程度不同地偏离模拟滤波在附近的频率特性,严重时使滤波器不满足给定的技术指标。因此,希望设计的滤波器使带限滤波器,如果不是带限的,例如高通滤波器,带阻滤波器,需要在高通带阻滤波器之前加保护滤波器,滤除高于折叠频率以上的频带,以避免产生频率混叠现象。但这样会增加系统的成本和复杂性,因此,高通与带阻滤波器不适合用这种方法设计。假设没有频率混叠现象,即满足将关系式代入,得到:说明用脉冲响应不变法设计的数字滤波器可以很好地重现原模拟滤波器的频响。上式中,的幅度特性与采样间隔成反比,这样当T较小时,就会有太高的增益。为避免这一现象,令那么,此时一般的极点是一个复数,且以共轭成对的形式出现,在式中讲一对复数共轭极点放在一起,形成一个二阶基本节。如果模拟滤波器的二阶基本节的形式为,极点为可以推导出相应的数字滤波器二阶基本节(只有实数乘法)的形式为如果模拟滤波器二阶基本节的形式为,极点为,则对应的数字滤波器二阶基本节的具体形式为利用以上这些变换关系,可以简化设计。双线性变换法这种变换方法,采用非线性频率压缩方法,将整个频率轴上的频率范围压缩到/T之间,再用转换到z平面上。设Ha(s),s=j,经过非线性频率压缩后用Ha(s1),=j1表示,这里用正切变换实现频率压缩: (3.13)式中T仍是采样间隔,当1从-/T经过0变化到/T时,则由-经过0变化到+,实现了s平面上整个虚轴完全压缩到平面上虚轴的/T之间的转换。这样便有 (3.14)再通过 转换到z平面上,得到: (3.15) (3.16)式(3.15)或式(3.16)称为双线性变换。从s平面映射到平面,再从平面映射到z平面,其映射情况如图3.1所示。由于从s平面到平面具有非线性频率压缩的功能,因此不可能产生频率混叠现象。另外,从平面转换到z平面仍然采用标准转换关系 ,平面的 /T之间水平带的左半部分映射z平面单位圆内部,虚轴映射单位圆。这样,Ha(s)因果稳定,转换成的H(z)也是因果稳定的。下面分析模拟频率和数字频率之间的关系。令 ,并代入(3.15)式中,有 (3.17)ImRez平面js平面j11s1平面/T-/T图3.1 双线性变换法的映射关系上式说明,s平面上与平面上的成非线性正切关系,如图3.2所示。在=0附近接近线性关系;当增加是,增加得愈来愈快;当趋近时,趋近于。正是因为这种非线性关系,消除了频率混叠现象。-0图3.2 双线性变换法的频率变换与之间的非线性关系是双线性变换法的缺点,直接影响数字滤波器频响逼真的模仿模拟滤波器的频响,幅度特性和相位特性失真的情况如图3.3所示。这种非线性影响的实质问题是:如果的刻度是均匀的,则影射到z平面的刻度不是均匀的,而是随增加愈来愈密。000000图3.3 双线性变换法幅度和相位特性的非线性映射双线性变换法可由简单的代数公式(3.15)将Ha(s)直接转换成H(z),这是该变换法的优点。但当阶数稍高时,将H(z)整理成需要的形式,也不是一件简单的工作。3.3 IIR滤波器直接设计 IIR数字滤波器的经典设计法只限于几种标准的低通、高通、带通、带阻滤波器,而对于具有形状或多频带滤波器的设计是无能为力的。 如果所设计IIR滤波器幅频特性比较复杂,可采用最小二乘法拟合给定的幅频响应,使设计的滤波器幅频特性逼近期望的频率特性,这种方法称为IIR滤波器的直接设计法。 MATLAB信号处理工具箱函数YULEWALK采用直接设计IIR数字滤波器。函数YULEWALK采取下面步骤计算分子多项式:(1) 计算与分子多项式相应的幅值平方响应的辅助式;(2) 由辅助分子式和分母多项式计算完全的频率响应;(3) 计算滤波器的脉冲响应;(4) 采用最小二乘法拟合脉冲响应最终求得滤波器的分子多项式系数。 函数YULEWALK允许我们自由定义滤波器的频率向量f和幅值向量m,因此该函数可设计具有任意形状的幅频响应的滤波器,包括多频带滤器。3.4 IIR滤波器的MATLAB设计数字高通、带通及带阻IIR滤波器设计除了低通数字滤波器之外,实际中还常常需要高通、带通及带阻数字滤波器,这三种数字滤波器的设计步骤如下:步骤1:将数字滤波器H(z)的技术指标p和s,通过tan(/2)转变为模拟滤波器G(s)的技术指标p和s,作归一化处理后,得到p1,ss/p;步骤2:化解为模拟原型滤波器G(s)的技术指标;步骤3:设计模拟原型滤波器G(p);步骤4:将G(p)转换为模拟滤波器的转移函数G(s);步骤5:将G(s)转换成数字滤波器的转移函数H(z),s=(z1)(z+1)。所谓原型滤波器是指归一化的低通滤波器。本节主要讨论通过IIR数字滤波器的原型转换设计法和IIR数字滤波器的直接设计方法来设计数字高通、带通及带阻滤波器其转换方法主要有3种:一是直接由模拟低通滤波器转换成数字高通、带通或带阻滤波器;二是先由模拟低通滤波器转换成模拟高通、带通或带阻滤波器,然后再把它转换成相应的数字滤波器;三是将模拟低通滤波器先转换成数字低通滤波器,再通过变量代换变换成高通、带通或带阻滤波器。以先由模拟低通滤波器转换成模拟高通、带通或带阻滤波器,然后再把它转换成相应的数字滤波器为例首先由频率变换将模拟低通原型滤波器变换成模拟高通、带通或带阻滤波器,然后根据双线性Z变换将模拟高通滤波器变换成相应的高通、带通或带阻数字滤波器。其模拟低通原型滤波器变换成模拟高通、带通或带阻滤波器的关系式如表4-1所示。模拟低通原型滤波器变换成模拟高通、带通或带阻滤波器频率变换模拟滤波器类型频率变换公式高通带通带阻将模拟低通滤波器先转换成数字低通滤波器,再通过变量代换变换成高通、带通 或带阻滤波器该方法中的模拟低通滤波器先转换成数字低通滤波器,可以利用冲激响应不变法和双线性变换法来实现,再通过变量代换变换成数字高通、带通或带阻滤波器。用双线性变换法设计一个带通椭圆滤波器使其幅频特性逼近于一个具有如下技术指标的模拟带通滤波器:Wp1=10Hz,Wp2=20Hz,在通带内的最大衰减为0.5dB,在阻带内的最大衰减为50dB,抽样频率为100Hz。MATLAB实现,该数字滤波器的幅频特性曲线如图所示。wp1=10;wp2=20;Fs=100;rp=0.5;rs=50;wp1=2*pi*wp1;wp2=2*pi*wp2;Bw=wp2-wp1;Wo=sqrt(wp2*wp1);z,p,k=ellipap(7,rp,rs);A,B,C,D=zp2ss(z,p,k);At,Bt,Ct,Dt=lp2bp(A,B,C,D,Wo,Bw);At1,Bt1,Ct1,Dt1=bilinear(At,Bt,Ct,Dt,Fs);num,den=ss2tf(At1,Bt1,Ct1,Dt1);H,W=freqz(num,den);plot(W*Fs/(2*pi),abs(H);grid;xlabel(频率/Hz);ylabel(幅值);图4-6 椭圆滤波器的频率响应窗体底端使用双线性Z变换法设计一个低通数字滤波器,给定的数字滤波器的技术指标为fp100Hz,fs=300Hz,p=3dB,p=20dB,抽样频率为Fs=1000Hz。实现例4-2的MATLAB程序如例程4-2所示,程序的运行结果如图4-2所示基于双线性Z变换法设计数字滤波器:fp=100;fs=300;Fs=1000;rp=3;rs=20;%wp=2*pi*fp/Fs;ws=2*pi*fs/Fs;Fs=Fs/Fs;%Firstly to finish frequency prewarping;wap=tan(wp/2);was=tan(ws/2);n,wn=buttord(wap,was,rp,rs,s)%Note:s!z,p,k=buttap(n);bp,ap=zp2tf(z,p,k)bs,as=lp2lp(bp,ap,wap)%Note:s=(2/Ts)(z-1)(z+1);Ts=1,that is 2fs=1,fs=0.5;bz,az=bilinear(bs,as,Fs/2)h,w=freqz(bz,az,256,Fs*1000);plot(w,abs(h);grid on。IIR滤波器的DSP实现.在用定点DSP器件设计数字滤波器时,一个重要的问题就是由于硬件字长精度有限,运算会出现溢出。IIR滤波器可以用较少的阶数获得很高的选择特性,所用的存储单元少、运算次数少,具经济、高效的特点。在相位要求不敏感的场合,如语音通信等,很适合用IIR滤波器。 简述CCS环境 CCS,即Code Composer Studio,是TI公司在1999年推出的一个开放、具有强大集成开发环境。它最初是由GO DSP公司为TI的C6000系列DSP开发的。在TI收购了GO DSP后,将CCS扩展到了其它系列。现在所有TI的DSP都可以使用CCS进行开发,但是其中的DSPBIOS功能只有C5000和C6000的CCS中才提供。 以前的DSP软件开发都是在一个分散的开发环境下进行,程序的编写、代码的生成以及调试等都是要通过命令来完成,类似于以前的DOS,十分烦杂。而CCS的出现是DSP开发软件的一次革命性的变化。CCS主要由代码生成工具、CCS集成开发环境、DSPBIOS和API函数以及RTDX组成。 CCS主要特点集成可视化代码编辑界面,可以方便地直接编写C、汇编、.h文件、.cmd文件等。集成代码生成工具,包括汇编器、优化的C编译器和连接器等。具有完整的基本调试工具,可以载入执行文件(.out),查看寄存器窗口、存储器窗口和变量窗口、反汇编窗口等,支持在C源代码级进行调试。支持多片DSP联合调试。断点工具,支持硬件断点、数据空间读/写断点、条件断点等。探针工具,用于进行算法仿真,数据监视等。剖析工具,用于评估代码执行的时间。数据图形显示工具,可绘制时域/频域波形、眼图、星座图等,并可以自动刷新。提供GEI工具,用户可以根据需要编写自己的控制面板/菜单,从而方便直观地修改变量,配置参数。DSP/BIOS和API函数以及RTDX插件DSP/BIOS(Basic Input Output System)和API(Application Program Interface)函数为CCS的主要插件之一。DSPBIOS可以看作是一个准实时操作系统,支持TI DSP芯片的各种实时操作系统都是以DSP/BIOS作为底层软件,为嵌入式应用提供基本的运行服务。并且,它还能实时获取目标机的信息,并将其传递给主机上的BIOSCOPE工具,对应用程序进行实时分析RTDX (Real Time Data Exchange)插件是CCS中另一个十分重要的插件。实时数据交换技术为CCS提供了一个实时、连续的可视环境,开发人员可以看到DSP应用程序工作的真实过程。RTDX允许系统开发者在不停止运行目标应用程序的情况下在计算机和DSP芯片之间传输数据,同时还可以在主机上利用对象链接嵌入(OLE)技术分析和观察数据。RTDX可以在DSPBIOS中使用,也可以脱离DSP/BIOS使用。由于CCS中的Simulator不支持RTDX,所以必须在连接有硬件仿真器或目标板的Emulator下使用。 CCS配置 击桌面图标的“setup CCStudio v3.1”图标,运行CCS设置程序,如图所示:点击AddSave&quit完成设置。用标准配置文件设置系统配置 CCS环境中工程文件的使用 建立工程文件在CCS集成环境下开发汇编程序或者C/C+程序,首先要建立一个工程项目文件(*.pjt),再向工程项目文件中添加汇编程序源文件(*.asm),C/C+源文件(*.c)和链接命令文件(*.cmd),并设置工程项目选项。使用CCS开发应用程序的一般步骤如下:创建或打开一个工程项目文件(*.pjt),编辑各类文件,可以使用CCS提供的集成编辑环境,对链接命令文件和源程序进行编辑。对工程项目进行编译。在编译过程中如果出现语法错误,将在编译链接信息视窗(build)窗口中显示错误信息,用户可以根据显示的信息找到错误的位置,更改错误。对结果和数据进行分析和算法评估。用户可以利用CCS提供的探测点.图形显示和性能评价等工具,对运行结果及输出数据进行分析,评估算法的可能性。 下面分别进行介绍建立工程文件,单击ProjectNew命令,系统将弹出如图所示的对话框,在该对话框中输入项目文件名,如iir单击“完成”系统就会创建一个名为iir.pjt的工程项目文件。创建新文件选择FileNew可打开一个新的编辑窗口。在新窗口中输入源代码。选择FileSave,在出现的对话框中输入一个文件名,并选择一个扩展名(C源代码选择*.c,汇编源代码选择*.asm),然后单击保存将源程序保存。 向工程项目中添加文件添加文件:单击ProjectAdd File to Project命令然后会弹出如图所示的对话框,单击打开完成对文件的添加。向工程项目中添加文件对话框 编译链接和运行目标文件 对程序进行编译链接对程序进行编译:执行ProjectCompile命令就可以对当前的汇编程序进行编译生成.obj文件。如果程序存在语法错误,那么就会在下面的编译链接信息框中显示错误信息。根据错误提示,读者可对程序进行修改2。对程序进行编译链接执行ProjectBuild命令,就可以对当前的项目文件同时进行编译,汇编和链接操作,并生成与工程项目名称相同的可执行的.out文件。如果有错误信息,则会在“编译链接”信息框中显示。也可以执行Project下的build All命令,所有项目中的文件重新编译,汇编和链接,生成.out文件。 装载.out文件单击主菜单“File”中“Load Program”选项,在对话框中,在CCS安装目录下,找到构建该工程的Debug目录,选择构建生成后的.out文件,并打开CCS装载完毕后,该“*.out”文件到目标dsp之后,会自动弹出“Disassembly”窗口如图所示。CCS调试程序时出现的视窗加工程界面代码如下:extern void InitC5402(void);extern void OpenMcBSP(void);extern void CloseMcBSP(void);extern void READAD50(void);extern void WRITEAD50(void);/* Main Function Program*/ #include stdio.h #include math.h #def

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论