所有提交的EM系统将被重定向到网上投稿系统.作者被要求将文章直接提交给网上投稿系统各自的日志。

FPGA上设计FIR滤波器的系统级工具

Mrs.Bhagyalakshmi N1, Dr.Rekha K R2, Dr.Nataraj K R3.
  1. 印度班加罗尔耆那大学欧洲经委会系研究学者。
  2. 印度班加罗尔SJBIT欧洲经委会系教授。
  3. 印度班加罗尔SJBIT欧洲经济学院教授兼系主任。
有关文章载于Pubmed谷歌学者

更多相关文章请访问国际电气、电子和仪器工程高级研究杂志

摘要

本文提出了在Xilinx System Generator中使用Simulink等系统级工具进行FIR滤波器的设计,以及使用Verilog进行基于硬件的FIR滤波器设计。系统级工具,如Xilinx系统生成器用于设计高效的DSP算法和FPGA上的应用程序。这两种设计都在Xilinx Spartan3 FPGA套件上进一步合成。最后,将软件仿真结果与FPGA仿真结果进行了比较

关键字

DSP, FIR滤波器,FPGA, Simulink,系统生成器。

介绍

数字信号处理技术在通信、视频处理和多媒体等领域有着广泛的应用。DSP算法需要非常快速地执行大量的数学运算。DSP功能主要包括数字滤波器和数字变换,它们比模拟设计更有优势。由于最近半导体技术的进步,数字滤波器已经成为模拟滤波器越来越有吸引力的替代品。随着运算速度的提高,无论是为了允许宽带信号的实时处理,还是为了共享运算单元,硬件的复杂性都会迅速增加,这可以用IC的数量和功耗来衡量。导致这种增长的主要因素是高速乘法器[1]。

2相关工作

基于MATLAB的Simulink工具有助于在高端FPGA上设计基于图和仿真的模型,自动化代码生成和相应设计的验证。滤波器设计与分析(FDA)工具是MATLAB信号处理工具箱中的一个功能强大的工具,可以帮助我们设计和分析不同类型的滤波器[2]。
软件工具开发的最新进展是在fpga中广泛支持DSP应用。System Generator for DSP™是业界领先的高级工具,用于设计使用fpga[3]的高性能DSP系统。System Generator工具提供Simulink库来设计算术、逻辑、数学、内存块和DSP函数[4]。DSP功能包括FIR滤波和变换。在本文中,我们在FDA工具的帮助下使用系统生成器模型设计FIR滤波器。
滤波器的设计基本上包括完成设计过程的两个基本步骤。第一步是系数的生成,第二步是使用生成的系数进行滤波器的仿真。尽管FIR滤波器设计复杂,但与IIR滤波器相比,其持久的优势使其广泛用于过滤应用。IIR滤波器不能提供高阶的稳定性,而FIR滤波器总是稳定的,特别适用于需要精确线性相位响应的应用[8]。本文的组织结构如下:第2节简要回顾了FIR滤波器的设计。第3节介绍了使用系统发生器的FIR滤波器设计。第4节介绍了FIR滤波器设计的结果和比较。第5节给出了结论。

3Fir滤波器设计

在数字设计中,有限脉冲响应(FIR)可以被视为图1所示的函数图,并使用下面[5]给出的方程(1)来实现。
图像
图像
在这里,我们设计了4-Tap FIR滤波器的并行实现,如图2所示。该过滤器主要包含乘法块、加法器块和触发器。触发器充当暂时存储数据的寄存器。输入数据乘以滤波系数。结果存储在寄存器中。接下来相乘的数据与寄存器中的数据一起添加,以加快处理速度。因此可以避免延误。由于寄存器的使用,故障问题将被过滤掉。因此降低了设计的功耗。
这个设计是颠倒过来的。本设计是基于FIR滤波器乘法器的基本设计。现在市场上有许多无乘数的结构。
图像

四、采用系统发生器设计fir滤波器

系统生成器是一个高级系统设计工具,用于在FPGA上轻松创建自定义DSP块。系统生成器基本上提供了两个关键工具:
ï ·块用于构建模型。
ï ·硬件生成器模型。
Simulink为[9]设计提供了一个测试环境。
图3显示了3- tap滤波器设计。输入是一个啁啾信号,随时间给出向上或向下的频率,输出信号是一个线性啁啾信号(频率随时间线性变化的正弦波)。
本设计是采用最小二乘法设计的低功耗三抽头FIR滤波器,如图3所示。自适应滤波器采用最小均方(LMS)算法,寻找与产生误差信号(期望信号与实际信号之间的差值)的最小均方相关的滤波器系数。
它是设计FIR滤波器的最优滤波器设计方法之一。基本思想是一次又一次地生成滤波器系数,直到某个特定的误差最小化。大多数滤波器的目的是将需要的信号与不需要的信号或噪声分离。由于信号的能量与信号的平方有关,平方误差近似准则适用于FIR滤波器的优化设计。LMS算法的选择在于其实现简单,在不同信号条件下具有稳定的鲁棒性。
输入信号频率为100MHZ, Filter的频率规格如下:
Fs=48000 Hz, Fpass=9600Hz, Fstop=12000Hz。
系数由FDA工具生成。我们必须将系数值导出到MATLAB工作区,并保存为变量名Num。Num包含4个系数,如下所示。
coeffiecient1 = 0.180209484969501
coeffiecient2 = 0.407209809882283
coeffiecient3 = 0.407209809882283
coeffiecient4 = 0.180209484969501
图像
震级(100db)和频率图如图4所示。
图像
图5显示了使用2种不同输入频率的6-Tap滤波器设计。输入信号是两个不同频率的正弦波。系数由FDA工具生成。它包含7个系数。
图像
图像

五、结果与比较

使用系统发生器的3-Tap滤波器的Simulink仿真结果如图6所示。图6中包含了Chirp信号作为输入(上图)和滤波后的输出(下图)。
基于Verilog的3-Tap FIR滤波器仿真结果如图7所示。基于硬件的3-tap FIR滤波器的输入是一个Chirp信号,该信号通过simout生成,如图3所示的文本形式用于FIR设计,然后使用I-sim模拟器进行仿真。
基于系统发生器和硬件的FIR滤波器模块的比较如下所示。
图像

VI.CONCLUSION

本文描述了在现场可编程门阵列(FPGA)上使用系统生成器和后续Verilog合成实现FIR滤波器的系统级方法。FIR滤波器的并行实现在面积和系统生成器模型方面是优秀的,极大地提高了FIR滤波器实现的操作速度。在系统级工具的帮助下,我们可以在短时间内设计任何DSP模型,适用于高速FPGA。

参考文献

  1. A. Peled和B. Liu,“一种新的数字滤波器硬件实现”,IEEE学报,ASSP-22卷,第456-462页,1974年12月。
  2. MathWorksï  productsï  Simulink, http://www.mathworks.com/products/simulink/。
  3. Xilinx系统生成器,DSP用户指南,www.xilinx.com。
  4. James Hwang和Jonathan Ballagh,“使用系统生成器构建定制FIR滤波器”,Xilinx公司,2100逻辑驱动器,圣何塞,CA 95124(美国)。
  5. Fábio Fabian Daitx, Vagner S. Rosa,“VHDL生成优化FIR滤波器”,信号,电路和系统国际会议,2008。
  6. Oppenheim, A. V.和R. W. Schafe,“离散时间信号处理”,Englewood Cliffs, NJ: Prentice Hall, 1989。
  7. Proakis, J.和D. Manolakis,“数字信号处理”,第3版,Englewood Cliffs, NJ: Prentice-Hall, 1996。
  8. “基于Xilinx系统发生器的FIR滤波器设计与比较”,清华大学学报(自然科学版),vol.2, no. 2。8, pp.207-210, 2013。
  9. Evan Everett和Michael Wu,“Xilinx系统发生器介绍”,ELEC 433- 2013春季。

全球科技峰会