基于FPGA器件采用分布式算法实现FIR滤波器及仿真研究分析.doc
《基于FPGA器件采用分布式算法实现FIR滤波器及仿真研究分析.doc》由会员分享,可在线阅读,更多相关《基于FPGA器件采用分布式算法实现FIR滤波器及仿真研究分析.doc(4页珍藏版)》请在三一文库上搜索。
1、基于FPGA器件采用分布式算法实现FIR滤波器及仿真研究分析FIR(finite impulse response)滤波器是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位冲激响应是有限的,没有输入到输出的反馈,是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。目前FIR滤波器的硬件实现有以下几种方式:一种是使用单片通用数字滤波器集成电路,这种电路使用简单,但是由于字长和阶数的规格较少,不易完全满足实际需要。虽然可采用多片扩展来满足要求,但会增加体积和功耗,因而在实际应用中受到限制。另一种是使用DSP芯片。DSP芯
2、片有专用的数字信号处理函数可调用,实现FIR滤波器相对简单,但是由于程序顺序执行,速度受到限制。而且,就是同一公司的不同系统的DSP芯片,其编程指令也会有所不同,开发周期较长。还有一种是使用可编程逻辑器件,FPGACPLD。FPGA有着规整的内部逻辑块整列和丰富的连线资源,特别适合用于细粒度和高并行度结构的FIR滤波器的实现,相对于串行运算主导的通用DSP芯片来说,并行性和可扩展性都更好。FIR滤波器的主要组成模块是乘累加单元(MAC),如果按照直观结构构造乘法器和系数寄存器来实现会占用大量的逻辑资源,显然不可取。本文采用基于分布式算法思想的方法来设计FIR滤波器,并在FPGA上实现。1 分布
3、式算法原理分布式算法(distributed arithmetic,DA)最初是在1973年由Croisier提出的,但直到Xilinx发明FPGA的查找表以后,DA算法才在上世纪90年代初重新受到重视,并有效地应用在FIR滤波器的设计中。DA算法的原理如下。函数f(c(n),xb(n)的实现方法是利用一个LUT(查找表)实现影射f(c(n),xb(n),也就是说2N字宽、预先设定程序的LUT接收一个N位输入向量xb=xb0,xbxbN-1,输出为f(c(n),xb(n),个个影射,f(c(n),xb(n)都由相应的二次幂加权并累加。对于固定系数,整数乘以2b即左移6位,可以通过硬连线实现,不
4、占用逻辑资源,利用图1所示的移位加法器就能有效地实现累加。DA算法的主要特点是巧妙利用SRAM查找表将固定系数的MAC运算转化为查表操作,其运算速度不随系数和输入数据精度的增加而降低,而且相对直接实现乘法器和系数寄存器在逻辑资源占用上得到了极大的改善。缺点是查找表的大小随滤波器的阶数的增加呈指数增长,这时可以采用将大查找表分解为小查找表的方法来降低逻辑资源的消耗,如图2所示。2 FIR滤波器的网络结构N阶FIR滤波器相对于输入时间序列x(n)的输出表达式为:对于线性相位FIR滤波器,其单位取样响应是对称或反对称的,即:3 FIR滤波器的硬件电路设计下面以一个32阶FIR带通滤波器为例说明硬件电
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 器件 采用 分布式 算法 实现 FIR 滤波器 仿真 研究 分析
链接地址:https://www.31doc.com/p-3410204.html