新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于FPGA的FIR数字滤波器设计方案

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

作者:时间:2014-02-14来源:摘自《电子发烧友》收藏

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

本文引用地址:http://www.eepw.com.cn/article/221566.htm

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

图9 数字滤波器RTL电路图

  3.3 数字的ModelSim功能仿真

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

图10 ModelSim时序仿真结果图

  3.4 数字滤波器的硬件实现

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

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

图11 数字滤波器Verilog模块逻辑图

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

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

图12 测试电路原理框图

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

图13 数字滤波器的硬件调试结果图
图14  数字滤波器的硬件调试结果图

  5 结束

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

滤波器相关文章:滤波器原理


fpga相关文章:fpga是什么


滤波器相关文章:滤波器原理


电源滤波器相关文章:电源滤波器原理


数字滤波器相关文章:数字滤波器原理

上一页 1 2 3 下一页

关键词: DSP FPGA VHDL 滤波器 FIR

评论


相关推荐

技术专区

关闭