基于FPGA的FIR数字滤波器设计方案(二)

2013-11-04 09:42:32来源: 互联网

模型搭建好之后,需要确定16阶FIR数字滤波器的系数,在这使用Matlab中的FDATool滤波器设计工具来确定。确定好滤波器的指标:

  (1)设计一个16阶的FIR 滤波器;

  (2)低通滤波器;

  (3)采样频率fs为16 384 Hz,截频点频率fs为533 Hz;

  (4)输入序列位宽为16位。

  在设计滤波器界面中,如图4所示,进行下列选择:

  (1)滤波器类型(Filter Type)为低通(Lowpass);

  (2)设计方法(Design Method)为FIR,采用窗口法(Window);

  (3)滤波器阶数(Filter Order)定制为15(设置为15 阶而不是16阶,是由于设计的16阶FIR滤波器的常系数项h(0)=0);

  (4)滤波器窗口类型为Kaiser,Beta为0.5.

  所有的选项确定好后,在FDATool滤波器设计界面中点击“Design Filter”,Matlab就会计算滤波器系数并作相关分析。图5所示为滤波器的幅频响应。

  

  由于所有的模块都在同一个Simulink图中,这时的Simulink设计图显得很复杂,不利于阅读和排错,因此把FIR数字滤波器模型做成一个子系统在设计图中显示出来,如图7所示,这就是Matlab中的层次化设计,在顶层设计图中,滤波器作为名称是SubFIR_533_16js的一个模块出现。同时,图7中还设置了其他模块,包括仿真信号输入模块、Signal Tap Ⅱ信号实时监测模块、Signal Compiler模块、硬件开发板模块、TestBench模块。

  

  这样整个滤波器的Simulink电路设计模型就完成了,然后要对该模型进行系统级仿真,查看其仿真结果,在频率为533 Hz的波形输入上加入了频率为3 600 Hz的扰动波形,其Simulink仿真结果如图8所示。

  

  图中,上面的波形是533 Hz的输出,中间的波形是533 Hz加上3600 Hz高频干扰后的输出,下面的波形是经过滤波后的输出。

3.2 从模型文件到Verilog代码的RTL级转换和编译适配

  利用Signal Compiler模块将电路模型文件即Simu-link 模块文件(。mdl)转换成RTL 级的Verilog 代码表述和Tcl(工具命令语言)脚本。这种转换是用来对数字滤波器Simulink模型进行结构化分析的[5]。获得转换好的VHDL描述后就可以调用 Verilog综合器,这里我们选用Quartus Ⅱ,用来生成底层网表文件,同时也就可以得到其网表文件对应的RTL电路图。如图9所示。

  

  3.3 数字滤波器的ModelSim功能仿真

  ModelSim软件可支持VHDL和Verilog混合仿真,无论是FPGA设计的RTL级和门级电路仿真,还是系统的功能仿真都可以用ModelSim来实现[4-5]。由Signal Com-piler生成的Verilog硬件描述语言模块,在ModelSim中可以直接对Verilog代码进行仿真,检测源代码是否符合功能要求。图 10所示的16阶FIR数字滤波器的功能仿真结果图。与图8的Simulink仿真结果图的波形一致,表明经过转换的Verilog源代码可以实现正常的滤波功能。

  

  3.4 FIR数字滤波器的FPGA硬件实现

  FIR数字滤波器一般是嵌入在采集器的采集板卡中进行工作的,把由数字滤波器的Verilog源代码生成的模块嵌入到采集板卡的FPGA逻辑中,如图11所示。

  在Quartus Ⅱ环境下,数字滤波器的内部逻辑经过编译适配之后,以。sof文件的形式直接加载到FPGA中。

  

  4 FIR 数字滤波器的FPGA 实时测试

  进行实时测试的电路是应用FPGA和USB的数据采集电路,如图12所示。

  

  测试时把信号发生器设置好的输入信号输入到A/D,采样得到的数据经过FPGA,再通过USB与PC机相连,应用QuartusⅡ中的SignalTapⅡ工具进行实时检测,结果如图13所示,其中,上面的波形为输入波形,频率为200 Hz,下面的波形为输出波形,由于200 Hz在低通的带通内,所以两者的波形相差不大。当输入波形为频率533 Hz时,由于是在截频点,其输出波形的幅值约为输入波形幅值的71%,如图13和14所示。

  

  

  5 结束

  FIR数字滤波器在数字信号处理领域有着广泛的使用,本文通过仿真和实时验证两种方式实现了一种基于FPGA和DSP Builder的FIR数字滤波器。先根据FIR滤波器的基本原理和结构框图搭建了滤波器的模型,再根据滤波器的性能指标通过FDATool工具对其进行设计,并通过系统级仿真和ModelSim功能仿真进行了简要的可行性分析,最后通过QuartusⅡ软件对FIR数字滤波器进行实时验证,表明本方案所设计的FIR 滤波器功能正确,性能良好。

关键字:FPGA  FIR  数字滤波器

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2013/1104/article_20177.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
FPGA
FIR
数字滤波器

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved