新闻中心

EEPW首页 > 消费电子 > 设计应用 > 基于VerilogHDL的FIR数字滤波器设计与仿真

基于VerilogHDL的FIR数字滤波器设计与仿真

作者:时间:2015-01-05来源:网络收藏

  1、设计意图

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

  本例主要是在Stratix 器件内实现基本有限脉冲响应滤波器。

   的基本结构包括一系列的乘法和加法。 的运算可用式( 1) 的方程描述, 现重写如下:

  

 

  x(n)表示输入样本序列, h(n)代表滤波器的系数, L 是抽头的数量。

  一个L=8 的 设计如图2, 利用了输入的8 个样本。因此称之为8 抽头滤波器。该结构是有一个移位寄存器, 乘法器和加法器组成的, 可实现L=8 阶的FIR。其数据通道必须足够宽, 以适应乘法器和加法器的输出。这些采样值被编码为有限

  字长的形式, 然后通过M个寄存器并行移动。可见用一个MAC级连链就可以构成这种机器。每个寄存器提供一个单位样本内延迟。这些延迟输入与各自的系数相乘, 然后叠加得到输出。图2 所示为基于MAC 的8 阶FIR 结构。

  

 

  在该设计中有八个抽头, 各抽头有18 位输入和滤波器系数。由于一个DSP 块可以支持4 个18 位输入的分支, 所以设计需要2 个DSP 块。输入数据串行加载到DSP 块中, DSP 内部的移入/移出寄存器链用于产生延迟。滤波器系数从TriMatrix(tm)的ROM存储器中加载。

  

 

  2、 HDL 代码编写风格

  HDL 代码编写应该具有很好的易读性和可重用性, 而自顶向下的分割方法可以帮助我们达到最佳的结果。HDL 代码在达到功能的情况下要尽可能的简洁, 尽量避免使用带有特殊库单元的实例, 因为这样会使得整个进程变得不可靠。在本设计中, 我们将设计划分成一个顶级文件和三个次级文件, 并且调用了QuartusII 中的MegaFunction 功能辅助完成整个设计。

  

 

  3、验证仿真

  完全可综合设计的一个优点就是同样的HDL 代码能够用于验证和综合。在使用HDL 代码之前必须要验证设计的功能,最好且最简单的方法就是利用验证工具, 其次是利用仿真工具作有目的的仿真。QuartusII 内部带有仿真器, 只要通过建立正确的Vector Waveform File( 向量波形文件) 就可以开始仿真了。图4 所示为QuartusII 内部仿真器得到的8 阶FIR 的脉冲响应波形。

  

 

  3 结论

  利用 HDL 设计的最大优点就是可使设计更加灵活。比较硬件电路图设计, HDL 语言设计的参数可以很容易在Verilog 程序中更改, 通过综合工具的简化和综合即可以得到电路图, 其效率要高出利用卡诺图进行人工设计许多。而且编译过程也非常简单高效。优秀编码风格能够在综合过程中节省芯片使用的单元, 从而降低设计成本。

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


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


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


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


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

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭