ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:489.29KB ,
资源ID:17478829      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17478829.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(《阶高通滤波器》word版Word格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

《阶高通滤波器》word版Word格式.docx

1、数字滤波器;DSP Builder;仿真The Design Of The FIR Digital FilterBased On DSP BuilderAbstract: Digital filter algorithm is one of the core techniques in signal processing. The FIR digital filter has been widely used in signal processing field because of its strict linear phase and stability. With the develop

2、ment of microelectronics technology, digital signal processing has made rapid development. Digital filter is the basic processing algorithms in respect of spectral analysis, radar signal processing and communications signal processing applications, and receive widely application at the field of digi

3、tal audio, Image processing, data transmission and biomedical etc.This content includes FIR digital filter network structure, linear-phase conditions, characteristics, design methods, DSP design technology of MATLAB-based, detailed design flow guide and ModelSim simulation and so on. This paper pose

4、d a design example through using the DSP Builder realize Finite Impulse Response Filter and complete hardware design simulation and verification as an example by the realization of 24-step low-pass digital FIR filter.Through simulation and verification, the system of the digital filter designed can

5、run successfully, and the designed filter has good stability, high accuracy, less susceptible to environmental impacts. In the use of FPGA for the development of digital filters using Matlab-based environment as a design tool for DSP Builder can be more convenient to create models, and to complete t

6、he whole design. Key words: MATLAB; Digital filter; DSP Builder; Simulation.一、前言 1(一)数字滤波器的概念以及分类 1(二)FIR和IIR滤波器的比较 1二、FIR数字滤波器的原理 3六、DSP Builder设计流程 14七、基于DSP Builder设计FIR数字滤波器 17(一)3阶常系数FIR滤波器的设计 17(二)4阶FIR滤波器节的设计 21(三)12阶FIR滤波器模型设计 25八、基于MATLAB的滤波器设计工具 30(一)滤波器指标 30(二)打开MATLAB的FDATOOL 30(三)选择DESI

7、GN FILTER 31(四)滤波器分析 33(五)量化 36(六)导出滤波器系数 39(七)修改FIR滤波器模型添加参数 41(八)导出滤波器系数的另一种方法 41九、结束语 43 一、前言(一)数字滤波器的概念以及分类所谓数字滤波器是指输入输出均为数字信号,通过一定的运算关系改变输入信号中所含频率成分的相对比例或者滤除某些频率成分的器件。常用的滤波器有无限长单位脉冲响应(IIR)滤波器和有限长单位脉冲响应(FIR)滤波器两种。其中,FIR滤波器能提供理想的线性相位响应,在整个频带上获得常数群延时从而得到零失真输出信号,同时它可以采用十分简单的算法实现,这两个优点使FIR滤波器成为设计的首选

8、。采用一种基于DSP Builder 的FPGA设计方法,使FIR滤波器设计较为简单易行,并能满足设计要求。设FIR滤波器单位脉冲响应长度为N,其系统函数为: (1-1)是的(N-1)次多项式,它在z平面上有(N-1)个零点,原点z=0是(N-1)阶重极点。因此,永远稳定。稳定和线性相位特性是FIR滤波器突出的优点。(二)FIR和IIR滤波器的比较在很多实际应用中如语音和音频信号处理中,数字滤波器来实现选频功能。因此,指标的形式应为频域中的幅度和相位响应。在通带中,通常希望具有线性相位响应。在FIR滤波器中可以得到精确的线性相位。在IIR滤波器中通常的相位是不可能得到的,因此主要考虑幅度指标。

9、IIR数字滤波器的设计和模拟滤波器的设计有着密切的联系。通常要设计出适当的模拟滤波器,再通过一定的频带变换把它转换成所需要的数字IIR滤波器。此外,任何数字信号处理系统中也还不可避免地用到模拟滤波器,因此模拟滤波器设计也是数字信号应该掌握的技术。FIR滤波器的设计方法和IIR滤波器的设计方法有很大的不同。FIR滤波器设计任务是选择有限长度的,使传输函数满足技术要求。在设计和实现上FIR滤波器具有如下优越性:(1) 相应相位可为严格线性,因此它不存在延迟失真,只有固定的时间延迟;(2) 由于不存在稳定性问题,所以设计相对简单;(3) 只包含实数算法,不涉及复数算法,不需要递推运算,长度为M的滤波

10、器(阶数为M-1)它的计算值约为M/2。二、FIR数字滤波器的原理对于一个FIR滤波器系统而言,它的冲激响应总是有限长的,其系统函数可以记为: (2-1)其中M是FIR滤波器的零点数,即延时节数,在这里被称为FIR滤波器的节数。 最基本的FIR滤波器可用下式表示: (2-2)其中是输入采样序列,是滤波器系数,L是滤波器的系数长度,表示滤波器的输出序列。也可以用卷积来表示输出序列与、的关系。 (2-3)图2-1中显示了一个典型的直接I型4阶FIR滤波器,其输出序列满足下列等式: (2-4)图2-1 4阶FIR滤波器结构在这个FIR滤波器中,总共存在3个延时节,4个乘法单元,一个4输入的加法器。如

11、果采用普通的数字信号处理器(DSP Processor)来实现,只能用串行的方式顺序的执行延时,乘加操作,这不可能在一个DSP(指数字信号处理器)指令周期内完成,必须用多个指令周期来完成。但是,如果采用FPGA来实现,就可以采用并行结构,在一个时钟周期内得到一个FIR滤波器的输出。六、DSP Builder设计流程DSP Builder是一个系统级(或算法级)设计工具,它架构在多个软件工具之上,并把系统级和RTL级两个设计领域的设计工具连接起来,最大程度发挥了两种工具的优势。DSP Builder依赖于Math Works公司数学分析工具Matlab/Simulink,以Simulink的Bl

12、ockset出现,可以在Simulink中进行图形化设计和仿真,同时又通过SignalCompiler可以把Matlab/Simulink的设计文件(.mdl)转成相应的硬件描述语言VHDL设计文件(.vhd),以及用于控制综合与编译的TCL脚本。而对后者的处理可以由FPGA/CPLD开发工具Quartus,DSP Builder针对不同情况提供了两套设计流程,即自动流程和手动流程。图6-1是利用DSP Builder进行DSP设计的流程框图。如图6-1所示,DSP Builder设计流程第一步是在Matlab/Simulink中进行设计输入,即在Matlab的Simulink环境中建立一个m

13、dl模型文件,用图形方式调用Altera DSP Builder和其它Simulink库中的图形模块(Block),构成系统级或算法级设计框图(或称Simulink设计模型)。第二步是利用Simulink强大的图形化仿真、分析功能,分析此设计模型的正确性,完成模型仿真。在这两步中,与一般的Matlab Simulink建模过程几乎没有什么区别,所不同的是设计模型库采用Altera DSP Builder的Simulink库,也不涉及到其它EDA软件,没有自动流程和手动流程的区别。图6-1 DSP Builder设计流程为了针对不同用户的设计目的和设计要求,DSP Builder提供了两种不同的

14、设计流程,主要可以分为自动流程和手动流程。在手动流程中,设计者可以灵活地指定综合、适配条件。不过,需要手动的调用VHDL综合器进行综合,调用Quartus进行适配,调用ModelSim或者Quartus进行仿真,最后用Quartus产生相应的编程文件用于FPGA的配置。采用手动流程时,除了行为级仿真验证和设计输入外,其它过程与标准的基于VHDL的EDA设计流程完全是一致的。由上一步的DSP Builder设计流程得到VHDL文件(由Simulink模型文件.mdl通过SignalCompiler转换而成),送入综合器进行综合。综合器可以是SynplifyPro,也可以是LelnardoSpec

15、trum,或者采用Altera自己的Quartus。在综合时,可能需要对综合器进行配置或者提供综合的约束条件。由于这个过程操作可能比较繁琐,所以DSP Builder的SignalCompiler相应提供了一个接口,针对设计,自动产生一个TCL脚本与综合器Synplify或者LelnardoSpectrum相接。综合器在综合操作后会产生一个网表文件,以供下一个流程使用。这里产生的网表文件称为ATOM网表文件(如图6-1所示),主要是EDIF一种参数可设置的,并含有具体器件系列硬件特征(如逻辑宏LCs、I/O单元、乘积项、嵌入式系统块ESB等)的网表文件。如果用DSP Builder产生的DSP

16、模型只是庞大设计中的一个子模块,则可以在设计中调用DSP Builder产生的VHDL文件,以构成完整的设计。同时,一样可以使用Quartus强大的LogicLock功能和SignalTap测试技术。在图6-1的流程中,其中有个流程在DSP设计中是不可或缺的,那就是HDL仿真。与DSP Builder可以配合使用的HDL仿真器是ModelSim。DSP Builder在生成VHDL代码时,可以同时生成用于测试DSP模块的TestBench(测试平台)文件,DSP Builder生成的TestBench文件采用VHDL 语言,测试向量与该DSP模块在Simulink中的仿真激励相一致。通过Mod

17、elSim仿真生成的TestBench可以验证生成的VHDL代码与Simulink中DSP模型的一致性。另外,DSP Builder在产生TestBench的同时,还产生了针对ModelSim仿真的Rcl脚本来简化用户的操作,掩盖ModelSim仿真时的复杂性。七、利用DSP Builder设计FIR数字滤波器图7-1中显示了一个典型的直接I型4阶FIR滤波器,其输出序列 (7-1)图7-1 4阶FIR滤波器结构如果采用普通的数字信号处理器(DSP Processor)来实现,只能用串行的方式顺序地执行延时,乘加工作,这不可能在一个DSP(指数字信号处理器)指令周期内完成,必须用多个指令周期来

18、完成。使用DSP Builder可以方便地在图形化环境中设计FIR数字滤波器,而且滤波器系数的计算可以帮助Matlab强大的计算能力和现成的滤波器设计工具来完成。(一)3阶常系数FIR滤波器的设计在此用以下示例来说明整个设计过程。假定一个3阶的FIR滤波器,其可以表示为: 其中:,是量化时附加的因子。这里采用直接I型来实现FIR滤波器。设计好的3阶直接I型FIR滤波器模型图可以参见图7-2。图7-2 3阶FIR滤波器图中模块的参数作如下设置:Xin模块:(Altbus)库:Altera DSP Builder中Bus Manipulation库参数“Bus Type”设为“signed int

19、eger”参数“Node Type”设为“Input port”参数“number of bits”设为“8”Yout模块:参数“Nope Type”设为“Output port”Parallel Adder Subtractor模块:(Parallel Adder Subtractor)Altera DSP Builder中Arithmetic库“Add(+)Sub(-)”设为“+”Delay1,Delay2,Delay3模块:(Delay) Altera DSP Builder中Storage库参数“Depth”设为“1”参数“Clock Phase Selection”设为“1”h0模块

20、:(Gain)Altera DSP Builder 中Arithemtic库参数“Gain Value”设为“63”参数“Map Gain Value to Bus Type”设为“Signed Integer”参数“Gate Value number of bits”设为“8”参数“Number of Pipeline Levels”设为“0”h1模块:参数“Gain Value”设为“127”其余同h(0)模块h2模块:h3模块:其余同h0模块。由于FIR滤波器的系数已经给定,是一个常数,从图中看到,在DSP Builder中可以用Gain(增益)模块来实现的运算,用延时Delay模块来实

21、现输入信号序列的延时。设计完3阶FIR滤波器模型后,就可以添加Simulink模块进行仿真了,如图7-3所示。图7-3 带仿真模块的3阶滤波器模型新增的仿真模块的参数作如下设置: Chirp Signal:模块:(Chirp Signal) 库:Simulink中Sources库 参数“Initial Frequency(Hz)”设为“1” 参数“Target time”设为“10”参数“Frequency at target time(Hz)”设为“1” 参数“Interpret vectors parameter as 1-D ”选中 Gain 模块:Simulink中Math Opera

22、tions 库 参数“Gain”设为“Element wise(K.*Vu)” Scope模块:(Scope)Simulink中sinks库参数“Number of Axes”为“2”其中,Chirp Signal模块为线性调频信号发生模块,生成一个线性调频信号0.1Hz1Hz。在该模型仿真中,使用默认的仿真参数。(二)4阶FIR滤波器节的设计对于直接I型FIR滤波器是可以级联的,结构见图7-4,也就是说,在滤波器系数可改变的情况下,可以预先设计好一个FIR滤波器节,在实际应用中通过不断地调用FIR滤波器节,将其级联起来,用来完成多阶FIR滤波器的设计。图7-4 直接I型FIR滤波器结构图7-

23、5是一个直接I型的4阶FIR滤波器节结构。为了使该滤波器节的调用更为方便,在x输入后插入一个延时单元,由3阶滤波器演变成一个4阶的,不过常系数项(系数项)恒为0。由于通信应用中,FIR滤波器处理的往往是信号流,因而,增加一个延时单元不会影响FIR滤波器处理的结果,只是系统延时增加了一个时钟周期。图7-5 直接I型4阶FIR滤波器模型对于该FIR滤波器节,其系统函数可以用下式来表示: (7-2)由于浮点小数在FPGA中实现比较困难,实现的代价太大,因而在DSP Builder中不妨使用整数运算来实现,最后用位数舍取的方法得到结果。为了使参数可变,FIR滤波器系数也作为输入端口。在本设计中输入序列

24、的位宽设为9位。图7-6显示的就是一个设计好的4阶FIR滤波器节,与图7-2的常数FIR滤波器相比,这里运用Product(乘法)模块代替了Gain(增益)模块。图7-6 直接I型4阶FIR滤波器节图7-6中相关模块的参数设置如下:xin、hn1、hn2、hn3、hn4模块:Altera DSP Buider中Bus Manipulation库参数“Bus Type”设为“signed Integer”参数“Node Type” 设为“Input port”参数“number of bits”设为“9”yn模块:参数“Node Type” 设为“output port”参数“number of

25、 bits”设为“20”xn4模块:Altera DSP Buider中Arithmetic库参数“Add(+)Sub(-)”设为“+”使用“Pipeline”参数“Clock Phaese Selectioon”设为“1”Delay、Delay1、Delay2、Delay3模块:Altera DSP Buider中Storage库参数“Clock Phase Selectioon”设为“1”Product模块:(Product)参数“Pipeline”设为“2”不选择“Use LPM”(三)12阶FIR滤波器模型设计利用以上设计的4阶FIR滤波器节可以方便地搭成4n阶直接I型FIR滤波器(注

26、意:)。比如要实现一个12阶的低通滤波器,可以调用3个4阶FIR滤波器来实现。1.设计4阶FIR滤波器节子系统建立一个新的DSP Builder模型,复制上节的FIR4tap模型到新模型。由FIR4tap模型建立子系统(SubSystem),并对端口信号进行修改,把子系统更名为fir4tap,如图7-7所示。fir4tap的内部结构如图7-8所示。(建立子系统的方法:选中模块,在选中模块上点击鼠标右键,在弹出的右键菜单中选择“Create subsystem”。)图7-7 fir4tap子系统图7-8 fir4tap子系统内部原理图2.组成12阶FIR滤波器模型复制3个fir4tap,并将它们衔接起来。前一及的输出端口x4接后一级x输入端口,并附加上24个常数端口,作为FIR滤波器系数的输入。把3个子系统fir4tap的输入端口y连接起来,接入一个3输入端口的加法器,得到FIR滤波器的输出注意:在做好子系统后,要修改其Mask参数MaskType为“SubSystem AlteraBlockSet”。设计好的12阶滤波器如图7-9所示。图7-9 24阶直接I型FIR滤波器模型12阶直接I型FIR滤波器模型中,对新增加的模块作如下设置:xin模块:yout模块:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1