《FIR高通滤波器设计.docx》由会员分享,可在线阅读,更多相关《FIR高通滤波器设计.docx(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、FIR 高通滤波器设计摘要本文介绍了数字滤波器的工作原理及其常用设计方法,特别是对 FIR 滤波器和窗函数法进展了具体说明。文中承受窗函数法设计FIR 数字滤波器,给出了TMS320C5509 的源程序及其仿真波形。1. 滤波器原理滤波器是一种选频装置,可以使信号中特定的频率成分通过,而极大地衰减其它频率成分。在测试装 置中,利用滤波器的这种选频作用,可以滤除干扰噪声或进展频谱分析。在数字信号处理中,滤波占有及 其重要的地位,如对信号的过滤、检测、推想等,都要广泛地用到滤波器,而数字滤波器则因其设计灵敏、实行便利等特点而广为承受。数字滤波是语音处理、图像处理、模式识别、频谱分析等应用的根本处理
2、算 法。FIR 滤波器具有幅度特性可任凭设计、线性相位特性可准确保证等优点,因此在要求相位线性信道的现代电子系统,如图像处理、数据传输等波形传递系统中,具有很大吸引力。所谓数字滤波器就是具有某种选择性的器件、网络或以计算机硬件支持的计算程序。其功能本质是按事先设计好的程序,将一组输入的数字序列通过确定的运算后转变为另一组输出的数字序列,从而转变改 变输入信号所含频率成分的相比按例,或者滤除某些频率成分的数字器件或程序,到达对信号加工或滤波 以符合技术指标的要求。与模拟滤波器相比,数字滤波器处理精度高、稳定、体积小、重量轻、灵敏、不 存在阻抗匹配问题,可以实现模拟滤波器无法实现的特别滤波功能。2
3、. 常用的数字滤波器两种类型依据单位冲激响应可分为无限冲激响应滤波器(IIR)和有限冲激响应滤波器(FIR)。在 IIR 系统中,用有理分式表示的系统函数来靠近所需要的频率响应,即其单位冲激响应h(n)是无限 长的;而在FIR 系统中,则用一个有理多项式表示的系统函数去靠近所需要的频率响应,即其单位冲激响应 h(n)在有限个n 值处不为零。IIR 滤波器由于吸取了模拟滤波器的结果,有大量的图表可查,可以便利、简洁、有效地完成设计,效果很好,但是其相位特性不好把握,必需用全通网络进展简洁的相位较正,才 能实现线性相位特性的要求。FIR 滤波器则可在幅度特性任凭设计的同时,保证准确、严格的线性相位
4、特性。FIR 滤波器不断地对输入样本x(n)延时后,再作乘法累加算法,将滤波结果y(n)输出,因此,FIR 实际上是一种乘法累加运算。这在要求相位线性信道的现代电子系统等波形传递系统中,是具有很大吸引力的。而且,其单位冲激响应 是有限长的,不存在不稳定的因数,并且可用因果系统来实现。3. FIR 滤波器的的优点a. 具有严格的线性相位,同时具有任意幅度特性,因此满足要求信道具有线性相位特性的图像处理以及数据传输。b. FIR 滤波器的单位抽样响应是有限唱的,因而滤波器确定是稳定的。c. FIT 滤波器由于单位冲激响应是有限长的,因而可以用快速傅里叶变换(FFT)算法来实现过滤信号, 从而可大大
5、提高运算效率。在数字滤波器中,是没有反响回路,故不存在不稳定的问题;同时,可以在幅度特性是任凭设置的同时,保证准确的线性相位。稳定和线性相位特性是FIR 滤波器的突出优点。另外,它还有以下特点:设计方式是线性的;硬件简洁实现;滤波器过渡过程具有有限区间;14. FIR 滤波器的设计方法(1) 窗函数设计法从时域动身,把抱负的无限长的h(d(n) 用确定外形的窗函数截取成有限长的h(n),以此h(n)来靠近h (n) ,从而使所得到得频率响应Hde jw与所要求的抱负频率响应H)de jw相接近。窗函数设计的根本思( )想是要选取某一种适宜的抱负频率选择性滤波器,然后将它的脉冲响应截断以得到一个
6、线性相位和因果的FIR 滤波器。优点是简洁、有用,缺点是截止频率不易把握。(2) 频率抽样设计法d频率取样法则是在频域内,以有限个频率响应取样,去近似所要求的抱负频率响应H( )( )e jw的方法。d从频率动身,把给定的抱负频率响应He jw 加以等间隔抽样,所得到的H(k)作逆离散傅氏变换,从而求( )( )得 h(n),并用与之相对应的频率响应Hde jw 去靠近抱负频率响应Hde jw。优点是直接在频域进展设计,便于优化,缺点是截止频率不能自由取值。(3) 等波浪靠近计算机关心设计法前面两种方法虽然在频率取样点上的误差格外小,但在非取样点处得误差沿频率不是均匀分布的,而且截止频率的选择
7、还受到了不必要的限制。因此又由切比雪夫理论提出了等波浪靠近计算机关心设计法。 它不但能准确地指定通带和阻带的边缘,而且还在确定意义上实现对所期望的频率响应实行最正确靠近。5. 窗函数法设计的原理用窗函数法设计FIR 数字滤波器,先依据w 和N 求出相应的抱负滤波器单位脉冲响应ch (n) =1d2pwc Hd- wc(e jw )e jwn dw,再依据阻带最小衰减选择适宜的窗函数w(n),最终得到 FIR 滤波器单位脉冲响应h(n) = hd(n)w(n) 。设期望靠近的滤波器频率响应函数为H(w),其单位脉冲响应是hd(n)。H(e jw ) = dh (n)e - jwn ,由的 Hdd
8、(e jw ) 求出hd(n) ,经过 Z 变换可以得到滤波器的系统函数。通n =-常以抱负滤波器作为Hd(e jw ) ,其幅频特性逐段恒定,在边界频率处有不连续的点,因而hd(n) 是无限时宽的,且是非因果序列的某为了构造一个长度为N 的线性相位滤波器,只有将hd(n) 截取一段,设截取的那段用h(n)表示即: h(n)=hd(n)Rn(n) ,式中Rn(n) 是一个矩形序列,长度为N 。我们实际设计的滤波N 1-器的单位脉冲响应为h(n)。长度为N,其系统函数为H(Z)=h(n)z n 。这样用一个有限长的序列h(n)n=0去代替hd(n),确定会引起误差,表现在频域就是通常所说的吉布斯
9、效应。该效应引起过度加宽以及通带和阻带内的波动,尤其使阻带的衰减小,从而满足不了技术上的要求。吉布斯效应是由于将hd(n) 直接截2断引起的,称为截断效应,窗函数法设计FIE 滤波器就是构造一个窗函数w(n)来削减截断效应。表 1 典型窗函数根本参数窗函数类型旁瓣峰值过渡带宽度 B阻带最小衰an/dBt近似值准确值减 as/dB矩形窗-134p / N1.8p / N-21三角窗-258p / N6.1p / N-25汉宁窗-318p / N6.2p / N-44哈明窗-418p / N6.6p / N-53布莱克曼窗-5710p / N11p / N-74凯赛窗-5710p / N-806.
10、 DSP 系统及其设计流程1 典型的DSP 系统框图输入抗混叠滤波器A/D数字信号处理D/A平 滑滤 波输出图 1 典型的 DSP 系统抗混叠滤波器: 将输入信号xt中高于折叠频率其值等于采样频率的一半重量滤除,防止信号频谱的混叠A/D: xt转换成处理器可以处理的串行或并行的数字流xn 数字信号处理器:数字信号处理算法D/A:DSP 输出的数字信号转换为模拟输出信号低通滤波器: 模拟波形重建(2)DSP 应用系统设计的流程:3DSP应用系统定义系统性能指标选择DSP芯片软件编程硬件设计软件调试硬件调试系统集成系统测试和调试7. 设计任务图 2 DSP 应用系统设计的流程( )( )给定一抱负
11、高通滤波频率特性,当|W|3.14/3 时, Hde jw=0;当 3.14/3|w|3.14 时, Hde jw=1。现用矩形窗法设计该滤波器,要求具有线性相位,假定滤波器系数的长度为29 点。1 设计方案ph d ( n ) =12pH d ( ep3jw )epjwndw +1 2 p- p3 H d ( e- pjw )e jwn dw= 1 2 ppe jwn- pdw - 12 p3 ep3jwn dw 1 p1 1p3=e jwnjn- 2 p jn ejwn - p - p3=12 j sinn p - 2 j sinn p 2 p nj3= 1sinn p - sinn p
12、p n3p3sinn= -p n0 n 2 83sin n p h(n) = -p n4( )由抱负频率响应 Hde jw的傅里叶反变换推出对应的单位脉冲响应,算出数据如下:h(1)= -0.275h(2)=-0.137h(3)=0h(4)=0.069h(5)=0.055h(6)=0h(7)=-0.039h(8)=-0.034h(9)=0h(10)=0.028h(11)=0.025h(12)=0h(13)=-0.021h(14)=-0.020h(15)=0h(16)=0.017h(17)=0.016h(18)=0h(19)=-0.015h(20)=-0.014h(21)= 0h(22)=0.0
13、13h(23)=0.012h(24)=0h(25)=-0.011h(26)=-0.011h(27)=0h(28)=0.0102FIR 高通滤波器设计流程图 3 设计流程图3上机仿真1、启动CCS,翻开工程,扫瞄程序,工程名称为:FIR.pjt2、编译并下载程序。3、翻开观看窗口。选择菜单ViewGraphTime/Frequency,进展如下设置:5图 4 观看窗口 1图 5 观看窗口 2图 6观看窗口 36图 7观看窗口 44.设置断点:在程序Fir.c 中有注释“break point”的语句上设置软件断点。5.运行并观看结果:(1) 选择“Debug“菜单的“Animate”项,或按F1
14、2 键运行程序。(2) 观看“FIR”窗口中时域图形,观看滤波图 8 滤波图形4软件程序#include “myapp.h“#include “ICETEK-VC5509-EDU.h“7#include “scancode.h“ #include #define FIRNUMBER 29#define SIGNAL1F 1000#define SIGNAL2F 4500#define SAMPLEF10000#define PI 3.1415926 float InputWave; float FIR;float fHnFIRNUMBER= -0.0197,-0.0212,0.0,0.0251
15、,0.0276,0.0,-0.0345,-0.0394,0.0,-0.0552,0.0689,0.0,-0.1378,-0.2758,0.0,-0.2758,-0.1378,0.0,0.0689,-0.0552,0.0,-0.0394,-0.0345,0.0,0.0276,0.0251,0.0,-0.0212,-0.0197; float fXnFIRNUMBER= 0.0 ;float fInput,fOutput; float fSignal1,fSignal2;float fStepSignal1,fStepSignal2; float f2PI;int i;float fIn256,f
16、Out256; int nIn,nOut;mainnIn=0; nOut=0; f2PI=2*PI;fSignal2=0.0; fSignal1=PI*0.1; fStepSignal2=2*PI/30; fStepSignal1=2*PI*1.4; while ( 1 )8fInput=InputWave; fInnIn=fInput; nIn+; nIn%=256;fOutput=FIR; fOutnOut=fOutput;nOut+;/* break point */ if ( nOut=256 )nOut=0;float InputWavefor ( i=FIRNUMBER-1;i0;
17、i- )fXni=fXni-1; fXn0=sin(double)fSignal1)+cos(double)fSignal2)/6.0; fSignal1+=fStepSignal1;if ( fSignal1=f2PI )fSignal1-=f2PI; fSignal2+=fStepSignal2;if ( fSignal2=f2PI )fSignal2-=f2PI; return(fXn0);float FIRfloat fSum; fSum=0;for ( i=0;iFIRNUMBER;i+ )fSum+=(fXni*fHni);9return(fSum);参考文献1. 赵洪亮等.TMS320C55xDSP 应用系统设计M.北京:北京航空航天大学出版社,2023.2. 刘顺兰,吴杰,高西全.数字信号处理M.西安:西安电子科技大学出版社,2023.3. 余一彪,曹洪龙,邵雷.DSP 技术与应用根底M.北京:北京大学出版社,2023.4. 谭浩强.C 程序设计M.北京:清华大学出版社,2023.10