关键词:
FIR滤波器
可编程逻辑器件
流水线
分布式算法
查找表
摘要:
在现代电子系统中,FIR数字滤波器以其良好的线性特性被广泛使用,属于数字信号处理的基本模块之一。在工程实践中,往往要求对信号处理要有实时性和灵活性,而已有的一些软件和硬件实现方式则难以同时达到这两方面的要求。随着可编程逻辑器件和EDA技术的发展,使用FPGA来实现FIR滤波器,既具有实时性,又兼顾了一定的灵活性,越来越多的电子工程师采用FPGA器件来实现FIR滤波器。
本文对基于FPGA的FIR数字滤波器实现进行了研究。本论文所做的主要工作如下:
1.以FIR数字滤波器的基本理论为依据,使用分布式算法为滤波器的硬件实现算法,并对其进行了详细的讨论。针对分布式算法中查找表规模过大的缺点,对其进行了优化方面的讨论,采用多块查找表以及线性FIR滤波器的对称性特点使得硬件规模极大的减小。
2.针对基于FPGA硬件实现的特点,本论文分别采用了并行和串行的设计方案,分别实现了级联方式实现16阶线性FIR低通滤波器和8阶FIR低通滤波器,并对两种方式进行了性能的比较。在设计中都采用了层次化、模块化的设计思想,将整个滤波器划分为多个功能模块,利用VHDL语言设计方式进行了各个功能模块的设计,最终完成了FIR数字滤波器的系统设计。
3.设计中采用Xilinx Virtex-Ⅱ系列器件,通过ISE6.1i软件对两种设计方案进行了综合仿真。为了更好的验证仿真结果的正确性,文中应用了MATLAB和VHDL联合仿真方法对设计的电路进行仿真测试,结果达到设计指标。并用MATLAB对仿真结果进行了分析,证明了所设计的FIR数字滤波器功能正确。
仿真结果表明,本论文设计的滤波器硬件规模较小,是对DA设计方法的一种发展改进,改进后系统最高时钟频率达到了100MHz以上。同时只要将查找表进行相应的改动,就能分别实现低通、高通、带通FIR滤波器,体现了设计的灵活性。