【FIR数字低通滤波器的设计5900字(论文)】_第1页
【FIR数字低通滤波器的设计5900字(论文)】_第2页
【FIR数字低通滤波器的设计5900字(论文)】_第3页
【FIR数字低通滤波器的设计5900字(论文)】_第4页
【FIR数字低通滤波器的设计5900字(论文)】_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

FIR数字低通滤波器的设计摘要介绍了基于FPGA的FIR数字滤波器的设计与实现,该设计利用Matlab工具箱设计窗函数计算FIR滤波器系数,并通过VHDL层次化设计方法,同时FPGA与单片机有机结合,采用C51及VHDL语言模块化的设计思想及进行优化编程,有效实现了键盘可设置参数及LCD显示。结果表明此实现结构能进一步完善数据的快速处理和有效控制,提高了设计的灵活性、可靠性和功能的可扩展性。关键词:FPGAFIR滤波器低通分布式算法目录TOC\o"1-3"\h\u113041引言 1180132数字滤波器的应用现状与发展趋势 1185083FIR滤波器的结构及基本原理 3183103.1分布式算法 458133.2FIR滤波器的结构及基本原理 4283524FIR滤波器设计 6208064.1滤波器系数的确定 6305744.2系数的量化 7129884.3VHDL语言实现滤波器 7293634.4FIR数字滤波器模块设计与系统级仿真 9111634.5FIR数字滤波器的FPGA实时测试 11274355结束语 1212181参考文献 121引言当今,数字信号处理(DSP:DigtalSignalProcessing)技术正突飞猛进,它不但自成一门学科,更是以不同形式影响和渗透到其他学科:它与国民经济息息相关,与国防建设紧密相连;它影响着也改变着我们的生产、生活方式,因此受到人们普遍的关注。数字化、智能化和网络化是当代信息技术发展的三大趋势。实际生活中遇到的信号多种多样,例如广播信号、电视信号、雷达信号、通信信号、控制信号、气象信号、地震勘探信号、导航信号、射电天文信号、生物医学信号、机械振动信号、遥感遥测信号,等等。上述这些信号大部分是模拟信号,剩下的小部分部分是数字信号。模拟信号是自变量的连续函数,自变量可以是一维的,也可以是二维或多维的。大多数情况下一维模拟信号的自变量是时间,经过时间上的离散化(采样)和幅度上的离散化(量化),这类模拟信号便成为一维数字信号,而数字化是智能化和网络化的基础。因此,数字信号实际上是用数字序列表示的信号,语音信号经采样和量化后,得到的数字信号是一个一维离散时间序列;而图像信号经采样和量化后,得到的数字信号是一个二维离散空间序列。数字信号处理,就是用数值计算的方法对数字序列进行各种处理,把信号变换成符合需要的某种形式。例如,对数字信号经行滤波以限制他的频带或滤除噪音和干扰,或将他们与其他信号进行分离;对信号进行频谱分析或功率谱分析以了解信号的频谱组成,进而对信号进行识别;对信号进行某种变换,使之更适合于传输,存储和应用;对信号进行编码以达到数据压缩的目的,等等。数字滤波技术是数字信号分析、处理技术的重要分支。无论是信号的获取、传输,还是信号的处理和交换都离不开滤波技术,它对信号安全可靠和有效灵活地传输是至关重要的。在所有的电子系统中,使用最多技术最复杂的要算数字滤波器了。数字滤波器的优劣直接决定产品的优劣。2数字滤波器的应用现状与发展趋势在信号处理过程中,所处理的信号往往混有噪音,从接收到的信号中消除或减弱噪音是信号传输和处理中十分重要的问题。根据有用信号和噪音的不同特性,提取有用信号的过程称为滤波,实现滤波功能的系统称为滤波器。在近代电信设备和各类控制系统中,数字滤波器应用极为广泛,这里只列举部分应用最成功的领域。1.语音处理语音处理是最早应用数字滤波器的领域之一,也是最早推动数字信号处理理论发展的领域之一。该领域主要包括5个方面的内容:第一,语音信号分析。即对语音信号的波形特征、统计特性、模型参数等进行分析计算;第二,语音合成。即利用专用数字硬件或在通用计算机上运行软件来产生语音;第三,语音识别。即用专用硬件或计算机识别人讲的话,或者识别说话的人;第四,语音增强。即从噪音或干扰中提取被掩盖的语音信号。第五,语音编码。主要用于语音数据压缩,目前已经建立了一系列语音编码的国际标准,大量用于通信和音频处理。近年来,这5个方面都取得了不少研究成果,并且,在市场上已出现了一些相关的软件和硬件产品,例如,盲人阅读机、哑人语音合成器、口授打印机、语音应答机,各种会说话的仪器和玩具,以及通信和视听产品大量使用的音频压缩编码技术。2.图像处理数字滤波技术已成功地应用于静止图像和活动图像的恢复和增强、数据压缩、去噪音和干扰、图像识别以及层析X射线摄影,还成功地应用于雷达、声纳、超声波和红外信号的可见图像成像。3.通信在现代通信技术领域内,几乎没有一个分支不受到数字滤波技术的影响。信源编码、信道编码、调制、多路复用、数据压缩以及自适应信道均衡等,都广泛地采用数字滤波器,特别是在数字通信、网络通信、图像通信、多媒体通信等应用中,离开了数字滤波器,几乎是寸步难行。其中,被认为是通信技术未来发展方向的软件无线电技术,更是以数字滤波技术为基础。4.电视数字电视取代模拟电视已是必然趋势。高清晰度电视的普及指日可待,与之配套的视频光盘技术已形成具有巨大市场的产业;可视电话和会议电视产品不断更新换代。视频压缩和音频压缩技术所取得的成就和标准化工作,促成了电视领域产业的蓬勃发展,而数字滤波器及其相关技术是视频压缩和音频压缩技术的重要基础。5.雷达雷达信号占有的频带非常宽,数据传输速率也非常高,因而压缩数据量和降低数据传输速率是雷达信号数字处理面临的首要问题。告诉数字器件的出现促进了雷达信号处理技术的进步。在现代雷达系统中,数字信号处理部分是不可缺少的,因为从信号的产生、滤波、加工到目标参数的估计和目标成像显示都离不开数字滤波技术。雷达信号的数字滤波器是当今十分活跃的研究领域之一。6.声纳声纳信号处理分为两大类,即有源声纳信号处理和无源声纳信号处理,有源声纳系统涉及的许多理论和技术与雷达系统相同。例如,他们都要产生和发射脉冲式探测信号,他们的信号处理任务都主要是对微弱的目标回波进行检测和分析,从而达到对目标进行探测、定位、跟踪、导航、成像显示等目的,他们要应用到的主要信号处理技术包括滤波、门限比较、谱估计等。7.生物医学信号处理数字滤波器在医学中的应用日益广泛,如对脑电图和心电图的分析、层析X射线摄影的计算机辅助分析、胎儿心音的自适应检测等。8.音乐数字滤波器为音乐领域开辟了一个新局面,在对音乐信号进行编辑、合成、以及在音乐中加入交混回响、合声等特殊效果特殊方面,数字滤波技术都显示出了强大的威力。数字滤波器还可用于作曲、录音和播放,或对旧录音带的音质进行恢复等。9.其他领域数字滤波器的应用领域如此广泛,以至于想完全列举他们是根本不可能的,除了以上几个领域外,还有很多其他的应用领域。例如,在军事上被大量应用于导航、制导、电子对抗、战场侦察;在电力系统中被应用于能源分布规划和自动检测;在环境保护中被应用于对空气污染和噪声干扰的自动监测,在经济领域中被应用于股票市场预测和经济效益分析,等等。3FIR滤波器的结构及基本原理在信号信息处理中,如对信号的过滤、检测、预测等,都要使用到滤波器。FIR滤波器是数字信号处理中常用的一种方法,它具有稳定、能保证精确的线性相位的特性。FPGA具有灵活的可编程特性,突破了并行处理与流水级数的限制,可以很好地实现信号处理的及时性,且它的开发程序可移植性好,开发周期短。而采用FPGA技术来设计FIR滤波器正成为设计的趋势。目前,用FPGA设计滤波器的方法有很多种,主要有利用单片通用数字滤波器集成电路、DSP器件和可编程逻辑器件实现三种。单片通用数字滤波器使用方便,但由于字长和阶数的规格较少,不能满足实际需要;使用DSP器件实现虽然简单,但由于程序顺序执行,执行速度受限;FPGA有着规整的内部逻辑阵列和丰富的线性资源,特别适用于数字信号处理任务。且FPGA在实现乘法运算的有效结构上的改进,使得其在数字信号处理方面有了长足的发展。本文主要研究基于FPGA技术、采用分布式算法实现FIR低通滤波器的原理和方法。该设计利用Matlab工具箱设计窗函数计算FIR滤波器系数,并用QuartusⅡ进行硬件仿真,仿真结果表明设计FIR滤波器的正确性。最后以16阶的FIR低通滤波器为例,给出了仿真波形、硬件验证方法和实际测量结果。3.1分布式算法分布式算法是一种以实现乘累加运算为目的的运算方法,不同于传统算法是等到所有的乘积已经产生之后再来相加完成乘累加运算,它是在完成乘累加功能时,通过将各输入数据对每一对应位产生的部分积预先进行相加形成相应的部分积,然后再对各个部分累加形成最终结果,从而大大减少乘法器和累加器的使用。用分布式算法来实现FIR滤波器的硬件结构主要包括串行方式、并行方式和表分割简化规模分布式算法。本次设计综合考虑运行速度和电路的规模两项因素,采用基于查找表的高采样FIR滤波器设计,与传统的滤波器结构相比,不仅在速度上有大幅度提高,而且大大减少了所占用的资源。3.2FIR滤波器的结构及基本原理设有限长单位响应滤波器的单位脉冲响应h(n)为长度N的序列,其传递函数一般为:(1)差分方程可描述为:(2)由式(2)可以看出,FIR滤波器的阶数为N-1,长度为N。系统输出只与输入的函数有关,而与过去的输出无直接关系,不含有反馈支路。其直接型结构如图3-1所示。图3-1FIR滤波器的直接型结构如果FIR滤波器的单位脉冲响应h(n)为实数,并且h(n)满足偶对称或者奇对称,即:则滤波器具有线性相位特性。当N为偶数时:当N为奇数时:其中“+”表示h(n)为偶对称;“-”表示h(n)为奇对称。其网络结构如图3-2、图3-3所示。图3-2N为偶数时的线性相位结构图3-3N为奇数时的线性相位结构4FIR滤波器设计设计一个16阶的FIR低通滤波器,该滤波器指标为:采样频率fs=10MHz,截止频率fc=1.5MHz。4.1滤波器系数的确定FIR滤波器的系数可用窗函数的方法来得到,窗函数法的基本要求是主瓣宽度最窄,并且旁瓣要尽可能小,在此选用海明(Hamming)窗用于滤波器的设计。用Matlab提供的工具箱FDATool仿真设计滤波器,得到滤波器的系数,滤波器的幅频特性满足指标要求,图4-1是符合上述指标要求的滤波器的幅度响应曲线。把获得的滤波器系数导出为文本文件保存,16阶FIR滤波器的脉冲响应系数如下:h(0)=h(15)=0.0024h(1)=h(14)=-0.0009h(2)=h(13)=-0.0120h(3)=h(12)=-0.0251h(4)=h(11)=-0.0084h(5)=h(10)=0.0693h(6)=h(9)=0.1912h(7)=h(8)=0.2861图4.1滤波器的幅度响应曲线4.2系数的量化Matlab模拟得到的脉冲型滤波器的系数都是浮点数,一般定点数的实现比较容易,因为其具有速度高和成本低的特点,浮点数的特点是具有比较高的动态范围而不需要换算,但是一般的仿真器不支持浮点数,因此需要把脉冲响应系数变为二进制数。在本设计中,先把得到的系数扩大212倍,然后转为对应的二进制的形式。以上16个响应系数转化后如下:h(0)=h(15)=(9)10=(1001)2h(1)=h(14)=-(3)10=-(11)2h(2)=h(13)=-(49)10=-(110001)2h(3)=h(12)=-(102)10=-(1100110)2h(4)=h(11)=-(34)10=-(100010)2h(5)=h(10)=(283)10=(100011011)2h(6)=h(9)=(783)10=(1100001111)2h(7)=h(8)=(1171)10=(10010010011)24.3VHDL语言实现滤波器VHDL涵盖面广,抽象描述能力强,支持硬件的设计、验证、综合与测试。VHDL能在多个级别上对同一逻辑功能进行描述,如,可以在寄存器级别上对电路的组成结构进行描述,也可以在行为描述级别上对电路的功能与性能进行描述。16阶FIR数字滤波器VHDL源程序如下:PACKAGEINTDEFINEISSUBTYPEINTSISINTEGERRANGE-32768TO32767;TYPEARRAY_INT_SISARRAY(0TO15)OFINT_S;ENDINTDEFINE;USEWORK.INT_DEFINE.ALL;LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;ENTITYFIR16ISPORT(elk:INSTD_LOGIC;x:ININT_S;Y:OUTINT_S);ENDFIR_16;ARCHITECTUREBHVOFFIRSIGNALcoe:ARRAY_INT_S;BEGINPROCESSBEGINWAITUNTILelk=1;Y<=8*coa}0)+coe}0}+8*coa(15)一2*coe(1)一coa(1)一2*16IScoe(15)+coe(14)-coe(14)一32*coe(2)一16*coe(2)一coe(2)-32*coe(13)一16*coe(13)一coe(13)一64*coe(3)一32*coe(3)一4*coe(3)一2*coe(3)-64*coe(12)一32*coe(12)一4*coe(12)一2*coe(12)一32*coe(4)一2*coe(4)一32*coe(11)一2*coe(11)+256*coe(5)+16*coe(5)+8*coe(5)+2*coe(5)+coe(5)+256*coe(40)+16*coe(10)+8*coe(10)+2*coe(40)+coe(10)+512*coe(6)+256*coe(6)+8*coe(6)+4*coe}6)+2*coe}6)+coe(6)+5}2*coe}9)+256*coe(9)+8*coe(9)+4*coa(9)+2*coe(9)+coe(9)+1024*coe(7)+128*coe(7)+16*coe(7)+2*coe(7)+coe(7)+1024*coe(8)+128*coe(8)+16*coe(8)+2*coe(8)+coe(8);FORIIN15DOWNTO1LOOPcoe(I)<=coe(I一1);ENDLOOPcoe(0)END<=xPROCESS;ENDBHV;上述VHDL程序是对图上中直接型FIR滤波器结构的描述,该设计是对称的,但对非对称滤波器也同样适用。4.4FIR数字滤波器模块设计与系统级仿真根据FIR数字滤波器的原理,在Simulink环境下搭建16阶的FIR数字滤波器结构,如图4-2所示。在模型的搭建过程中,使用了两个8位的ShiftTaps移位寄存器模块对输入信号进行分解,然后根据数字滤波器的原理进行算法计算。图4-2FIR数字滤波器的Simulink结构图模型搭建好之后,需要确定16阶FIR数字滤波器的系数,在这使用Matlab中的FDATool滤波器设计工具来确定。确定好滤波器的指标:设计一个16阶的FIR滤波器;低通滤波器;采样频率fs为16384Hz,截频点频率fs为533Hz;输入序列位宽为16位。在设计滤波器界面中,如图4-3所示,进行下列选择:滤波器类型(FilterType)为低通(Lowpass);设计方法(DesignMethod)为FIR,采用窗口法(Window);滤波器阶数(FilterOrder)定制为15(设置为15阶而不是16阶,是由于设计的16阶FIR滤波器的常系数项h(0)=0);滤波器窗口类型为Kaiser,Beta为0.5。所有的选项确定好后,在FDATool滤波器设计界面中点击“DesignFilter”,Matlab就会计算滤波器系数并作相关分析。图4-4所示为滤波器的幅频响应,图4-5所示为滤波器的阶跃响应。图4-3FDATool的滤波器设计界面图4-4FIR滤波器的幅频响应图4-5FIR滤波器的阶跃响应由于所有的模块都在同一个Simulink图中,这时的Simulink设计图显得很复杂,不利于阅读和排错,因此把FIR数字滤波器模型做成一个子系统在设计图中显示出来,如图4-6所示,这就是Matlab中的层次化设计,在顶层设计图中,滤波器作为名称是SubFIR_533_16js的一个模块出现。同时,图4-6中还设置了其他模块,包括仿真信号输入模块、SignalTapⅡ信号实时监测模块、SignalCompiler模块、硬件开发板模块、TestBench模块。图4-6FIR数字滤波器的顶层设计图这样整个滤波器的Simulink电路设计模型就完成了,然后要对该模型进行系统级仿真,查看其仿真结果,在频率为533Hz的波形输入上加入了频率为3600Hz的扰动波形,其Simulink仿真结果如图4-7所示。图4-7Simulink仿真结果图图中,上面的波形是533Hz的输出,中间的波形是533Hz加上3600Hz高频干扰后的输出,下面的波形是经过滤波后的输出。4.5FIR数字滤波器的FPGA实时测试进行实时

温馨提示

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

最新文档

评论

0/150

提交评论