


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、FIR数字滤波器的设计欣(理工学院物电学院通信 092班, 723003 )指导教师:争兵摘要FIR数字滤波器:有限长单位冲激响应滤波器,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。基于DSP Builder对FIR数字滤波器进行设计,根据FIR低通数字滤波器的原理与滤波特性,通过MATLAB/Simulink软件模拟一定性能的 FIR滤波器频率响应与抽头系数 ,实现用软件描述硬件的动 作及其功能。结合 DSPBuilder产生图形化建模仿真,分析此模型的正确性,进行参数设置,获得 理想的滤波效果。最后通过SignalCompil
2、er 把Silmulink 的模型文件转换成硬件描述语言VHDL文件,用QuartusII仿真下载,验证设计结果。关键词VHDL; MATLAB; FIR数字滤波器;仿真中图分类号TN702文献标志码ADesign of FIR digital filtersZha ng xin(Grade06,Class1,Major of Communication Engineering, School of Physics andTelecom muni cati on Engin eeri ng Shaa nxi Uni versity of Tech no logy, Han zho ng 723
3、003,Ch ina)Tutor : Zheng ZhengbingAbstract FIR digital filter:a finite impulse response filter, it can ensure thatany in crease in the freque ncy characteristics of both a strict lin ear phase freque ncy characteristics, while its unit sample response is finite, and therefore the system filter is st
4、able. Based on the DSP Builder of FIR digital filter design, according to the FIR low-pass digital filter principle and filtering characteristics, through the MATLAB / Simuli nk software simulatio n of certa in properties of the FIR filter freque ncy resp onse and the tap coefficients,using software
5、 to describe the action and functionof the hardware.Combined with DSP Builder to produce graphic modeling simulation,analysis of thecorrect ness of the model, parameter sett ing, obta in ideal filteri ng effect. Fin ally through the Sig nalCompiler Silmuli nk model file is con verted into a hardware
6、 descripti on Ianguage VHDL file, using QuartusII simulation, validation of design results.Key words : VHDL; MATLAB; FIR Digital filter; simulationFIR数字滤波器的设计 IAbstrct II目录 11. 绪论 21.1课题背景 2数字滤波器 21.1.2 DSP Builder 软件及开发流程 41.1.3 MATLAB 技术现状 61.2滤波器研究现状 72. FIR滤波器原理及设计方案 82.1 FIR数字滤波器原理 82.2设计方案选择 1
7、02.2.1 方案一:FIR IPCore 102.2.2 方案二:VHDL语言 102.2.3 方案三:DSPBuilder 103. 滤波器的设计 113.1 8阶常系数FIR数字滤波器设计 11设计过程 12滤波器仿真结果 133.2 16阶常数FIR滤波器设计 143.2.1设计过程 14滤波器仿真结果 163.3基于Matlab的滤波器设计工具,获得滤波器系数 173.4基于(IP )核的滤波器设计 20设计过程 20滤波器仿真结果 24结论 25致 27参考文献 281. 绪论1.1课题背景数字滤波器在许多信息处理过程中,如对信号的过滤、检测、预测等,都要广泛地用到 滤波器,而数字
8、滤波器则因其设计灵活、实现方便等特点而广为接受。所谓数字滤波器就是具有某种选择性的器件、网络或以计算机硬件支持的计 算程序。其功能本质是按事先设计好的程序,将一组输入的数字序列通过一定的 运算后转变为另一组输出的数字序列,从而改变信号的形式和容,达到对信号加 工或滤波以符合技术指标的要求。若滤波器的输入、输出都是离散时间信号,那么,该滤波器的冲击响应(或 滤波因子)也必然是离散的,我们称这样的滤波器为数字滤波器(Digital Filter : DF)0当用硬件实现一个 DF时,所需的元件是延迟器、乘法器和加法器。当在计 算机上用软件实现时,它就是一段线性褶积(或卷积)的程序。我们知道,模拟
9、滤波器(Analog Filter ,AF)只能用硬件来实现,其元器件是 R, L,C及运算放 大器或开关电路。因此,DF的实现要比AF容易的多,而且易获得较为理想的效果。 滤波器的种类很多,分类方法也不同,如可以从功能上分,也可以从实现方法上 分,或从设计方法上来分等等。但总的来说,滤波器可以分为两大类,即经典滤 波器和现代滤波器。经典滤波器是假定输入信号x(n)中的有效信号和噪声(或干扰)信号成分各在不同的频带,当 x(n)通过一个线性滤波系统后,可以将欲噪声 信号成分有效地去除。可是,如果有效信号和噪声信号的频率带相互重叠,那么 经典的滤波器将无能为力。现在的地质雷达信号处理中的滤波器主
10、要采用经典的 滤波器进行处理。因此有时滤波效果较好,有时较差。现代滤波理论研究的主要 容是从含有噪声的数据记录(又称为时间序列)中估计出信号的某些特征或信号 本身。一旦信号被估计出,那么估计出的信号将比原信号会有高的信噪比。现代 滤波器把信号和噪声都视为随机信号,利用它们的统计特征(如自相关函数、功 率谱函数等等)导出一套最佳的估值算法,然后用硬件和软件实现。目前现代滤 波器主要有:维纳滤波器、卡尔曼滤波器、线性预测器、自适应滤波器等。数字滤波技术是数字信号分析、处理技术的重要分支。无论是信号的获取、 传输,还是信号的处理和交换都离不开滤波技术,它对信号安全可靠和有效灵活 地传输是至关重要的。
11、在所有的电子系统中,使用最多技术最复杂的要算数字滤 波器了。数字滤波器的优劣直接决定产品的优劣。数字滤波器的应用现状与发展趋势:(1)语音处理语音处理是最早应用数字滤波器的领域之一,也是最早推动数字信号处理理 论发展的领域之一。该领域主要包括 5个方面的容:第一,语音信号分析。对第 二,语音合成。即利用专用数字硬件或在通用计算机上运行软件来产生语音;第 三,语音识别。即用专用硬件或计算机识别人讲的话,或者识别说话的人;第四, 语音增强。即从噪音或干扰中提取被掩盖的语音信号。第五,语音编码。图像处理数字滤波技术以成功地应用于静止图像和活动图像的恢复和增强、数据压缩、 去噪音和干扰、图像识别以及层
12、析 X射线摄影,还成功地应用于雷达、声纳、超 声波和红外信号的可见图像成像。通信在现代通信技术领域,几乎没有一个分支不受到数字滤波技术的影响。采用 数字滤波器,特别是在数字通信、网络通信、图像通信、多媒体通信等应用中, 离开了数字滤波器,几乎是寸步难行。其中,被认为是通信技术未来发展方向的软 件无线电技术,更是以数字滤波技术为基础。电视数字电视取代模拟电视已是必然趋势。高清晰度电视的普及指日可待,与之 配套的视频光盘技术已形成具有巨大市场的产业;可视和会议电视产品不断更新 换代。雷达雷达信号占有的频带非常宽,数据传输速率也非常高,因而压缩数据量和降 低数据传输速率是雷达信号数字处理面临的首要问
13、题。告诉数字器件的出现促进 了雷达信号处理技术的进步。声纳声纳信号处理分为两大类,即有源声纳信号处理和无源声纳信号处理,有源 声纳系统涉及的许多理论和技术与雷达系统相同。(7) 生物医学信号处理数字滤波器在医学中的应用日益广泛,如对脑电图和心电图的分析、层析X射线摄影的计算机辅助分析、胎儿心音的自适应检测等。(8) 音乐数字滤波器为音乐领域开辟了一个新局面,在对音乐信号进行编辑、合成、 以及在音乐中加入交混回响、合声等特殊效果特殊方面,数字滤波技术都显示出 了强大的威力。数字滤波器精确度高、使用灵活、可靠性高,具有模拟设备所没有的许多优 点,已广泛地应用于各个科学技术领域,例如数字电视、语音、
14、通信、雷达、声 纳、遥感、图像、生物医学以及许多工程应用领域。随着信息时代数字时代的到 来,数字滤波技术已经成为一门极其重要的学科和技术领域。以往的滤波器大多 采用模拟电路技术,但是,模拟电路技术存在很多难以解决的问题,例如,模拟 电路元件对温度的敏感性,等等。而采用数字技术则避免很多类似的难题,当然 数字滤波器在其他方面也有很多突出的优点,在前面部分已经提到,这些都是模 拟技术所不能及的,所以采用数字滤波器对信号进行处理是目前的发展方向。1.1.2 DSP Builder软件及开发流程DSPBuilder是一个系统级(或算法级)设计工具,它构架在多个软件工具之 上,并把系统级和 RTL级两个
15、设计领域的设计工具连接起来,最大程度地发挥了 两种工具的优势。DSP Builder依赖于 Math Works公司的数学分析工具 Matlab/Simulink ,以 Simulink的Blockset出现,可以在Simulink中进行图形化设计和仿真,同时又 通过Signal Compiler 可以把 Matlab/Simulink 的设计文件(.mdl)转成相应的 硬件描述语言VHDL设计文件(.vhd ),以及用于控制综合与编译的 TCL脚本。而 对后者的处理可以由FPGA/CPL开发工具Quartus II来完成。DSP Builder是Altera推出的一个数字信号处理(DSP)开
16、发工具,它在Quartus n FPGA设计环境中集成了 MathWorks的Matlab和Simulink DSF开发软件。Altera 的DSP系统体系解决方案是一项具有开创性的解决方案,它将 FPGA勺应用领域从 多通道高性能信号处理扩展到很广泛的基于主流 DSP的应用,是Altera第一款基 于C代码的可编程逻辑设计流程。Altera 可编程逻辑器件(PLD)中的DSP系统设计需要高级算法和 HDL开发工具。Altera DSP Builder 将 The MathWorks MATLAB Simulink 系统级设计工具的算 法开发、仿真和验证功能与 VHDL综合、仿真和Altera
17、开发工具整合在一起,实 现了这些工具的集成。DSP Builder在算法友好的开发环境中帮助设计人员生成DSPS计硬件表征,从而缩短了 DSP设计周期。已有的MATLAB!数和Simulink模块可以和Altera DSP Builder模块以及Altera知识产权(IP)MegaCore功能相结合,将系统级设计实现 和DSP算法开发相。DSFBuilder支持系统、算法和硬件设计共享一个公共开发平 台。设计人员可以使用 DSP Builder模块迅速生成Simulink系统建模硬件。DSPBuilder包括比特和周期精度的Simulink模块,涵盖了算法和存储功能等基本操 作。可以使用DSP
18、 Builder模型中的MegaCore功能实现复杂功能的集成。Altera还提供DSPBuilder高级模块集,这一 Simulink库实现了时序驱动的 Simulink 综合。Altera MegaCore是高级参数化IP功能,例如有限冲击响应(FIR)滤波器和快 速傅立叶变换(FFT)等,经过配置能够迅速方便的达到系统性能要求。MegaCore功 能支持Altera的IP评估特性,使您在购买许可之前,便可以验证功能及其时序。Altera IP MegaStore 上为DSP Builder和IP评估流程提供 DSP IP完整介绍DSP Builder SignalCompiler 模块读
19、取由 DSP Builder 和 MegaCore模块构建 的Simulink建模文件(.mdl),生成VHDL文件和工具命令语言(Tcl)脚本,进行综 合、硬件实施和仿真。下图所示为 DSP Builder设计流程:1.1.3 MATLAB技术现状Matlab 是美国MathWorks公司自20世纪80年代中期推出的数学软 件,优秀的数值计算能力和卓越的数据可视化能力使其很快在数学软件中脱颖而 出。到目前为止,其最高版本6.0版已经推出。随着版本的不断升级,它在数值 计算及符号计算功能上得到了进一步完善。Matlab已经发展成为多学科、多种工作平台的功能强大的大型软件。在欧美等高校,Matl
20、ab已经成为线性代数、自动控制理论、概率论及数理统计、数字信号处理、时间序列分析、动态系统仿 真等高级课程的基本教学工具,是攻读学位的大学生、硕士生、博士生必须掌握 的基本技能。Matlab的主要特点是:有高性能数值计算的高级算法,特别适合 矩阵代数领域;有大量事先定义的数学函数,并且有很强的用户自定义函数的能 力;有强大的绘图功能以及具有教育、科学和艺术学的图解和可视化的二维、三 维图;基于HTML的完整的帮助功能; 适合个人应用的强有力的面向矩阵 (向 量)的高级程序设计语言;与其它语言编写的程序结合和输入输出格式化数据的能力;有在多个应用领域解决难题的工具箱。Matlab作为一个数值运算
21、软件和仿真工具正在越来越多的领域中得到不同程度的应用,下面的容估计还可以大大的 扩。主要应用领域:1工程运算2控制系统设计3.DSP系统和通讯系统设计4. 测量与测试5.图形处理6.金融建模与分析应用。传统的数字滤波器的设计过程复杂,计算工作量大,滤波特性调整困难,影 响了它的应用。利用 MATLAB言号处理工具箱(Signal Processing Toolbox)可以快速有效的设计由软件组成的常规数字滤波器的设计方法。给出了使用MATLA语言进行程序设计和利用信号处理工具箱的 FDATool工具进行界面设计的详细步骤。 利用MATLA设计滤波器,可以随时对比设计要求和滤波器特性调整参数,直
22、观简 便,极大的减轻了工作量,有利于滤波器设计的最优化。MATLAB是一种功能强大的数据分析和工程计算高级语言,在工业、电子、信号处理、医学、建筑以及航 空等领域有着广泛的应用。Altera 的 DSP Builder 是连接 MATLA中的 Simulink 和 Quartus U 开发软件 的DSP开发工具,在它的实际应用中,FIR滤波器是最为常用的模块之一,而且基 于DSP Builder的FIR滤波器设计方式有很多种。基于Matlab的Web应用原理,在信号分析和诊断上也可应用,例如文献资 料证明,可以利用这一原理开发远程信号分析与诊断系统,其中包含频谱分析、 相关分析、时序分析、小波
23、分析、小波包含分析、时频分析、机械图像分析以及 远程智能诊断系统,该系统能充分利用Matlab强大的信号分析和工程计算能力,充分发挥Matlab的平台良好的扩展性,以及对硬件和数据库的操作性,实现更高 级的功能。1.2滤波器研究现状数字信号实际上是用数字序列表示的信号,语音信号经采样和量化后,得到 的数字信号是一个一维离散时间序列;而图像信号经采样和量化后,得到的数字 信号是一个二维离散空间序列。数字信号处理,就是用数值计算的方法对数字序 列进行各种处理,把信号变换成符合需要的某种形式。例如,对数字信号经行滤 波以限制他的频带或滤除噪音和干扰,或将他们与其他信号进行分离;对信号进 行频谱分析或
24、功率谱分析以了解信号的频谱组成,进而对信号进行识别;对信号 进行某种变换,使之更适合于传输,存储和应用;对信号进行编码以达到数据压 缩的目的,等等。在所有的电子系统中,使用最多技术最复杂的要算数字滤波器 了。数字滤波器的优劣直接决定产品的优劣。数字滤波器的实现,大体上有如下几种方法:(1) 在通用的微型机上用软件来实现。软件可以由使用者自己编写或使用现成的。自IEEE DSPComm于1979年推出第一个信号处理软件包以来,国外的研究机构、公司也陆续推出不同语言不同用 途的信号处理软件包。这种实现方法速度较慢,多用于教学与科研。(2) 用单片机来实现。目前单片机的发展速度很快,功能也很强依靠单
25、片机的硬件环境和信号处理 软件可用于工程实际,如数字控制、医疗仪器等。(3) 利用专门用于信号处理的DSP片来实现。DSP芯片较之单片机有着更为突出的优点,如部带有乘法器、累加器,采用流 水线工作方式及并行结构,多总线,速度快,配有适于信号处理的指令等,DSP芯片的问世及飞速发展,为信号处理技术应用于工程实际提供了可能。2. FIR滤波器原理及设计方案2.1 FIR数字滤波器原理数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响 应(IIR)滤波器和有限长冲激响应(FIR)滤波器。不论是窗函数设计法,还是频率 抽样设计法,都要求出滤波器的单位冲激响应h(n),然后才能在时域中实
26、现频域中的滤波。1. 滤波系数的差分方程在频域,当其输入信号为X(ej co)时,如滤波器的频率响应为H(ej o),则其输出信号为丫(ej o )=X(ej o )H(ej o)。在时域,设滤 波器的单位冲激响应h(n)为一 N点序列,即OWn<N-1时h(n)的值不为零,根据离散傅氏变换的性质,则可以将滤波器的输入序列x (n)的响应y (n)表示为x(n)与h(n)的卷积和,即:n)_ 叢(n、呆 h( fl、A-1=- wj >罰0这就是滤波系统的差分方程,它给滤波器的实现奠定了理论基础。即求出时域的h(n)后,便可通过卷积来实现频域的滤波。2. 卷积和运算的实现FIR 数
27、字滤波器的设计组成结构如下图所示:移应奇加第并行矢呈乘法器(1) h(n)序列N个点数值的存储由于h(n)是根据滤波性能要求已经设计好的有限长单位冲激响应,故其 N个点的数值是已知的,因此可以存放在ROMERAM当中,且对应着N个不同的地址,便于寻址。(2) 输入序列x (n)的移位寄存输入序列x (n)是不断变化的,因此只能对其进行移位寄存,寄存器的个数为N,即N个寄存器中分别存放着x (n)、x(n-1 )x (n-N+1),它们都随着n的变化而变化。(3) 乘法器 用以完成两个数值的乘法,即h(m)x (n-m),也就是将存储 器中N地址所对应的N个固定数值h(m)分别与N个移位寄存器中
28、的不断变化的 N 个变化数值x (n-m)相乘。(4) 累加器 用以实现N个乘积的累加,即将当前x (n)所对应的N个乘 积进行累加,所得到的和就是y (n)。当滤波器的下一个输入值即x (n +1 )到 来时,累加器清零,并重新将下一组 x (n+1)所对应的N个乘积进行累加,所得 到的和就是y (n +1) o2.2设计方案选择2.2.1 方案一:FIR IPCore首先要安装 Altera 公司的FIR IPCore,并利用 QuartusII 软件打开IP Toolbench完成FIR的参数设置;然后通过摸/数转换器(ADC采集模拟信号并将 数据送给FIR数字滤波器进行处理。利用 Qu
29、artusII完成整个设计,最后下载并 进行测试,利用嵌入式逻辑分析仪观测 FIR滤波器的输入输出数据之间的关系。 本实验的模拟信号使有DD护生的。方案二:VHDL语言由Matlabb计算FIR数字滤波器的滤波系数,再进过 VHDL语言设计逻辑电路, 再通过QuartusII软件,将各个模块软件封装成期间,在顶层设计过连线,完成 整个系统。最后仿真下载,观察对比。2.2.3 方案三:DSPBuilder由滤波器原理的得出方案的框图,如图 所示,根据框图可以完成实验 设计。图223 DPSBulider方案设计经过方案的对比,方案一和方案二的设计过程都比较繁琐,中间涉及一些生 疏的知识环节不利于
30、设计工程的顺利进行,尤其 VHDL语言程序设计要求语确、结 构完整,给模块设计和顶层文件设计带来诸多不便。但是,方案三的实际过程简 便,易于错误修改,仿真运行结果清晰,即使初学者也能进行独立的操作和设计。 最终我们小组决定采用方案三完成 FIR数字滤波器的设计。3. 滤波器的设计3.1 8阶常系数FIR数字滤波器设计假定一个8阶的FIR滤波器,其h (n)可以表示为:h(n) C(h(O)x( n) h(1)x( n 1)h(2)x( n 2)h(3)x( n 3)h(4)x (n 4)h(5)x (n 5)h(6)x( n 6)h(7)x(n7)h(0)=269h(1)=395h(2)=47
31、0是量化时附加的因子h(3)=511其中:h(4)=511 Ch(5)=470h(6)=395h( 7)=269设计过程1) 启动 Matlab软件,打开Simulink Library Browser界面,建立一个新的模型 文件,保留并命名为FIR8.mdl。2) 如图所示,拖入相应的模块,然后按图所示连接电路。In cerme ntDecreme nt 模块:参数“ Bus type ” 设为“ Un sig ned In teger ” “ Numerof bits ” 设为“ 20”参数“ Drectio n ”设为 “ In creme nt ”BusCo nv ersi on 模块
32、:参数 “ In put Bus Tipe ” 设为“ Un sig ned In teger ” 参 数 “Inputnumber of bits ” 设为“ 20” 参数“ Outputnumber of bits ”设 为 “13”Parallel Adder Subtractor 模块:参数“ Number of in put” 设为“ 2 ”“Add(+)Sub(-) ” 设为“ +”参数“ Clock Phase Slection ”设为 “ 1”Phaseword1 模块:参数“ Bus type ” 设为“ Un sig ned In teger ”“ Numerofbits
33、” 设为“ 16”参数“ Node Type ”设为 “ Integer Node ”BusC onv ersi on 模块:参数 “ In put Bus Tipe ” 设为“ Un sig ned In teger ” 参 数 “Inputnumber of bits ”设为 “ 16” 参数“ Outputnumber of bits ”设 为“ 8”“ In put Bit Conn ected to Output LSB ” 设为“ 8”Delay 模块: 参数“ Depth”设为 “ 1”参数“ Clock Phase Slection”设为“1”图7阶常数滤波器上部
34、分为扫频电路模型,下部分为滤波器模型。3)设置仿真参数本模型添加了 SimulinkSkinsScope模块,用与查看相应的位选信号的产生结果,选中其中的“Data history ” ,把 Limit data points to tast:设为 100000。选择Simulio n菜单下的con figuration parameters进行仿真参数的相应设置,在弹出的窗口中,stop time设置为100000,然后单击“ OK。4)保存FIR8模型并进行仿真选择Simulation菜单下的Start项,或按下Ctrl+T键开始启动仿真。滤波器仿真结果如图所示:图常数FIR滤波器仿真波形
35、所设计为8阶FIR低通滤波器,观察以上仿真波形可知,滤波器对低频信号 的衰减较小,信号的频率越高,滤波器对信号的衰减越大。由此可知所涉及的滤 波器性能良好,滤波效果明显。3.2 16阶常数FIR滤波器设计3.2.1设计过程1)启动 Matlab软件,打开Simulink Library Browser界面,建立一个新的模型 文件,保留并命名为FIR16.mdl2)如图所示,拖入相应的模块,然后按图所示连接电路In cerme nt Decreme nt 模块:参数“ Bus type ” 设为“ Un sig ned In teger ” “ Numerof bits ” 设为“ 20”参数“
36、 Drectio n ”设为 “ In creme nt ”BusCo nv ersi on 模块:参数 “ In put Bus Tipe ” 设为“ Un sig ned In teger ” 参 数 “Inputnumber of bits ” 设为“ 20” 参数“ Outputnumber of bits ”设 为 “13”Parallel Adder Subtractor 模块:参数“ Number of in put ” 设为“ 2 ”“Add(+)Sub(-) ” 设为“ +”参数“ Clock Phase Slection ”设为 “ 1”Phasewordl 模块:参数“
37、Bus type ” 设为“ Un sig ned In teger ”“ Numerofbits ” 设为“ 16”参数“ Node Type ”设为 “ Integer Node ”BusC onv ersi on 模块:参数 “ In put Bus Tipe ” 设为“ Un sig ned In teger ” 参 数 “Inputnumber of bits ”设为 “ 16” 参数“ Outputnumber of bits ”设 为“ 8”“ In put Bit Conn ected to Output LSB ” 设为“ 8”Delay 模块: 参数“ Depth”设为 “
38、 1” 参数“ Clock Phase Slection ” 设为“1”3)设置仿真参数本模型添加了 SimulinkSkinsScope模块,用与查看相应的位选信号的产生结果,选中其中的“ Data history ” ,把 Limit data points to tast: 设为 100000。选择Simulio n菜单下的con figuration parameters进行仿真参数的相应设置,在弹出的窗口中,stop time设置为100000,然后单击“ OK。4)保存FIR16模型并进行仿真选择Simulation菜单下的Start项,或按下Ctrl+T键开始启动仿真。滤波器仿真
39、结果如下图所示:图3.2.2 16阶常数滤波器所设计为16阶FIR低通滤波器,观察以上仿真波形可知,滤波器对低频信号 的衰减较小,信号的频率越高,滤波器对信号的衰减越大。由此可知所涉及的滤3.3基于Matlab的滤波器设计工具,获得滤波器系数FDATool(Filter Design & Analysis Tool) 是 MATLA信号处理工具箱里专用 的滤波器设计分析工具,MATLAB6.C以上的版本还专门增加了滤波器设计工具箱 (Filter Desig n Toolbox)FDATool界面总共分两大部分,一部分是 Design Filter ,在界面的下半部, 用来设置滤波器的
40、设计参数,另一部分则是特性区,在界面的上半部分,用来显 示滤波器的各种特性。Desig n Filter部分主要分为:Filter Type( 滤波器类型)选项,包括Lowpass(低通)、Highpass(高通)、 Bandpass(带通)、Bandstop(带阻)和特殊的FIR滤波器。Design Method(设计方法)选项,包括IIR滤波器的Butterworth(巴特沃思) 法、Chebyshev Type I(切比雪夫 I 型)法、Chebyshev Type II( 切比雪夫 II 型) 法、Elliptic( 椭圆滤波器)法和FIR滤波器的Equiripple 法、Least-
41、Squares(最 小乘方)法、Window(窗函数)法。Filter Order(滤波器阶数)选项,定义滤波器的阶数,包括Specify Order(指 定阶数)和Minimum Order(最小阶数)。在Specify Order中填入所要设计的滤波 器的阶数(N阶滤波器,Specify Order = N-1),如果选择 MinimumOrder则MATLAB 根据所选择的滤波器类型自动使用最小阶数。Fren que ncy Specificati ons选项,可以详细定义频带的各参数,包括采样频率Fs和频带的截止频率。它的具体选项由Filter Type 选项和Design Metho
42、d选项决定,例如Bandpass(带通)滤波器需要定义Fstop1(下阻带截止频率)、 Fpass1(通带下限截止频率)、Fpass2(通带上限截止频率)、Fstop2(上阻带截止频 率),而Lowpass(低通)滤波器只需要定义Fstop1、Fpass1。采用窗函数设计滤波 器时,由于过渡带是由窗函数的类型和阶数所决定的,所以只需要定义通带截止 频率,而不必定义阻带参数。Mag nitude Specificati ons选项,可以定义幅值衰减的情况。例如设计带通滤波器时,可以定义 Wstop1(频率Fstop1处的幅值衰减)、Wpass(通带围的幅值衰减)、Wstop2(频率Fstop2处
43、的幅值衰减)。当采用窗函数设计时,通带截止频率 处的幅值衰减固定为6db,所以不必定义。Win dowSpecificatio ns选项,当选取采用窗函数设计时,该选项可定义,它包含了各种窗函数,在通带的衰减为6dB。1)打开Matlab的FDATool,如下图331所示。根据具体设计要求计算滤波器的 系数,在系数计算好填入图中后,16阶FIR滤波器才能真正应用,这就要使用我们 强大的MATLABT具了。MATLAB集成了一套功能强大的滤波器设计工具FDATool(Filter Design & Analysis Tool),可以完成多种滤波器的设计、分析和性能评估。点击 MATLAB
44、窗口下方的 “start ” 按钮,选择 “ToolBox” “Filter Design” “ Filter Design & Analysis Tool(FDAToo)”,打开 FDAToo。其界面如下所示:此时我们可以进行滤波器的设计:选择滤波器类型为低通,设计方法为FIR, 采用窗口法(WindoW,滤波器阶数定制为15(在此设置的是15阶,而不是16阶, 这是由于在前面设计的16阶FIR的常系数h(0)=0 ),采样频率Fs=50KHZ截止频 率 Fc=10KHZ2) 选择 Design Filer 。点击“ Design Filter ”,就可以让 MATLAB+ 算 FI
45、R 滤波器的系数并作相关的分析。求出的FIR滤波器的系数可以通过选择菜单“Analysis ” “ Filter Coefficients ” 来观察。如图 3.3.2 所示3) 滤波器分析。可以通过 FDATool的菜单“An alysis ”进行幅频响应分析、 相频响应分析、群延时分析、冲激响应分析、阶跃响应分析、零极点分析。如果觉得某些结果不符合设计要求,则可以进行相应的参数调整。4)导出滤波器系数,如图所示。为导出设计好的滤波器系数,选择FDATool菜单的“ File ” “ Export”,打开导出(Export )对话框,在该窗口 中,选择导出到工作区(Workspace),这是
46、滤波器系数就存到一个一维变量中了, 要将它们变成整数,只要在 MATLA吐窗口的窗口命令中键入:Num*08)即得, 如图所示。把计算出的系数逐个填入到FIR滤波器模型中,就完成了一个16阶直接I型低通滤波器的设计。lil.9 £di. LF IJ 7O d I属召专r x _£J IKdv A. Jd<7uriidl 且久3.1.1:常Am o an: <: a vntiiJfci E .Ikl 皿C iihtrclCikr¥«>04 i a Ac q|i.i c i 1 l oa'i'D » 1 B H D
47、ll fiJE«4d¥ il t mr Di暑nCumAULdi 丄 LlJIuN t7T>er fl vmyev fhftt »D5P Buz Idc F-Ht al Fr roDSP E-l:i Ider Fa± al Er ro-DSP E-ualdec Fa-t =1 Err-oT l L l r Bu 1.f l 11 ax- bu 1 «orrILIiI卜 i I肌旃点2书JTmvH)- Ihm*f2_Sl矗一12-2-2 下牛】韦】H-anL«*2_8lK 12-2-Z9 Jt牛PrU* 12-2-Z9 上牛9&q
48、uot;* 122-2S 上牛0Z:HlArodl»4TLAB»b iltfirt(DL CcMliirVihkMd Q.r丄址*1匸 m皐工rises-rAfttFii -E5?1 Lo si c3JL£CUc iMcci4l thn and J>i也孟I 5色近亡怜lii t* A« JJi n 电 *Ih4£T ft VCf- ;-flL I'iGIn k >- rw «Ki Cntr*!机 jrpii gMa <! Tt «d£ c 1L w» f 口nf r a-1M.
49、4al-£«£ad Csdilir&lLaiiIl« -W ! n*L.<!3-k亡,叫L臨4蚩丸卑J. EI v mXI «1. C«npii.mL.<P*t fci s-1 ?i- f f *r-*r«* i1 中 i *n涉 *»lp 勺 >?«<?DSP5甲書Fat al Er epDSP Brjildec Fatal Err« L'SP Ezldec WirxLirLE i d» WaErnlne s Ttie* Pllsalver *
50、 aA*45h . Ycai *aj Cenf ifi-ura ion F5L>aRet-e rftb frf rh*? Cerfiniir Warnirg s Output po-rt 2 a.n.-LLrig lputport3Wamina r OjtpuJt port 4 A a.iilrig l LUI f LFl_i.iLpXI rc7zd.5 in the LlTl Ibl .!. a =Lc*t.-E*丄*厂4 Ml J1«JT* ll»rNKlL 啊!! LUIL|3t/Ida1: > t.yw S" v%Luvk ° DSP
51、 Bl4ari 4=i: The ,0日oil ' Fll salv&t J fidk=45" TCrtlZ omf ETira.1 i. on PiraiLC-t- e:三丁工口E t CU tVta& &r the ConTlEUirat !Atamtni t gtgT patt 2 WarmnE i QvtjnL3tfamiric: Output p&r 4图 331 打开 FDATool图3.3.2滤波器设计界面图333导出系数对话框» Nt 2 ®沁=C 01115 L thronfh 12-9/5S352.S3O
52、11. iS15 LdCS3 -22. 5362 -12. E53-116.8190 W7. 2134L07; 214 J6. fl 18-3 -L2.5531 -22-fl匸 Mum弓 13 ThrcniEh 麻1- IMS 13. ISIS 2. S3 IS -9. 5615图系数产生由于产生系数数值太小,滤波不明显,所以对所有系数扩大9倍,进行滤波器设计。把上面得到的系数,作为 AltBusI、AltBus2、AltBus3、AltBus4、AltBus5、 AltBus6、AltBus7、AltBus8、AltBus9、AltBuslO、AltBusll、AltBus12、AltBus
53、13、 AltBus14、AltBus15 模块的设计。3.4基于(IP )核的滤波器设计设计过程首先安装Altera 公司的FIR IPCore,然后在Simulink库管理器中看到 MegaCoreFunction 这个库,并利用 DSPBuilder 软件打开 IP Toolbench 完成 FIR 的参数设置;把扫频信号产生电路产生的信号输入FIR数字滤波器进行处理。1)启动 Matlab软件,打开Simulink Library Browser界面,建立一个新的模型 文件,保留并命名为FIR_IP.mdl2)如图2.331所示,拖入相应的模块,然后按图所示连接电路图3.4.1 FIR
54、_IP 实验模型In cerme nt Decreme nt 模块:参数“ Bus type ” 设为“ Un sig ned In teger ” “ Numer of bits ” 设为“ 18”参数“ Drectio n ”设为 “ In creme nt ”BusCo nv ersi on 模块:参数 “ In put Bus Tipe ” 设为“ Un sig ned In teger ” 参 数 “Inputnumber of bits ”设为 “ 18” 参数“ Outputnumber of bits”设为 “13”Parallel Adder Subtractor 模块:参数
55、“ Number of in put” 设为“ 2 ”“Add(+)Sub(-) ” 设为“ +”参数“ Clock Phase Slection ”设为 “ 1”Phaseword1 模块:参数“ Bus type ” 设为“ Un sig ned In teger ”“ Numerofbits ” 设为“ 16”参数“ Node Type ”设为 “ Integer Node ”BusC onv ersi on 模块:参数 “ In put Bus Tipe ” 设为“ Un sig ned In teger ” 参 数 “Inputnumber of bits ”设为 “ 16” 参数“
56、 Outputnumber of bits ”设 为“ 8”“ In put Bit Conn ected to Output LSB ” 设为“ 8”Delay模块: 参数“ Depth ”设为 “ 1”参数“ Clock Phase Slectio n”设为“1”3)在 Altera DSP Builder 中的 Megacore Functions 库中找到 fir_complier 块,拖入模型中。Fik Edit. View H&lpzcc¥ 盧-ib pr ts中-O| Sirrj lintB0u.7)- ft|AlteraCSPBuid&r Blocks&t k- m.II BIC U:住HAltLab|-Arrtti nietic! "Ed 吕"mP - CorpltxTyae= Gaze & Controli *咐沁chi klOfi Busp lihgaCpn&FundvnL-R.at* Changs-j iSinulation Blocks Litngry'-Sta:e&
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教育心理学在提升学生社交技巧中的应用
- 游戏化在幼儿体育教育中的应用研究
- 教育大数据提升教学质量的有效工具
- 企业信息安全文化建设的重要性与实践
- 医学心理学与疾病预防的交叉研究
- 智慧城市公共安全信息系统的基石建设
- 基于教育技术的全球混学创新与实践分析报告
- 逆向思维培训课件图片
- 抖音商户退款退货处理效率考核制度
- 抖音商户直播情感连接策略制度
- 商场活动授权协议书
- 联合出书合同协议书
- 肥胖医学营养治疗
- 《初中英语语法教学课件》
- 股权质押融资与境外投资合作协议
- 汽油清净性评价 汽油机进气阀沉积物模拟试验法 编制说明
- 旅行社计调国家职业技能标准
- 2025广州市黄埔区辅警考试试卷真题
- 西宁市湟中县2025年数学三下期末考试试题含解析
- 食品标鉴知识培训课件
- 测绘成果保密管理制度
评论
0/150
提交评论