欢迎来到天天文库
浏览记录
ID:23640727
大小:56.00 KB
页数:6页
时间:2018-11-09
《基于fpga的fir滤波器的实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于FPGA的FIR滤波器的实现
2、第1内容显示中傅立叶系数h(n)实际上就是数字滤波器的冲激响应。获得有限冲激响应数字滤波器的一种可能方法就是把式(1)的无穷级数截取为有限项级数来近似,而众所周知的吉布斯现象使得直接截取法不甚令人满意。窗函数法是用被称为窗函数的有限加权序列{ouseg(this)">选用汉宁(Hnnning)窗作为窗函数,函数如式(6)所示。500)this.style.ouseg(this)">2十六阶FIR低通数字滤波器硬件电路设计下面以一个十六阶FIR低通滤波器为例说明硬件电路的设计方法和过程。2.1设计指标和参数提取2.1.1设计指标500)this.st
3、yle.ouseg(this)">截止频率:37.5kHz类型:低通输入数据宽度:8位阶数:16阶输出数据宽度:16位2.1.2参数提取采用上面介绍的低通滤波器的频率响应函数和汉宁窗函数进行设计。计算出的符合设计指标的线性相位16阶FIR数字低通滤波器的特性参数如下:h[0]=h[15]=0.000000h[1]=h[14]=0.001992h[2]=h[13]=0.008241h[3]=h[12]=0.018332h[4]=h[11]=0.030784h[5]=h[10]=0.043353h[6]=h[9]=0.053550h=[7]=h[8]=0.0592572.2单元电路设计F
4、IR低通数字滤波器电路分为数据位扩展、并串转换器、移位寄存器组、前加单元、中间处理单元、后处理单元以及控制单元等部分,其构成框图如图1所示。2.2.1数据位扩展这里所设计的FIR数字滤波器输入是8位宽的,为了防止溢出,保证电路的正常工作,这里采用符号位扩展方法,经过符号位扩展,总的输入数据宽度为9位。2.2.2并/串转换器并/串转换器由9个2选1选择器和9个D触发器组成,结构十分简单,在此不再对其电路结构赘述。其工作过程为:并/串转换器以采样速率周期地采入8位样点数据,并输出1位数据流给后级的移位寄存器。2.2.3移位寄存器组寄存器组主要完成移位功能。2.2.4前加单元前加单元的主要
5、功能是将移位寄存器输出的1位串行数据流进行预相加,它由一位串行加法器构成。XC4000系列芯片具有以下两个特点:(1)内部基本单元CLB(可配置逻辑模块)包括三个函数发生器,分别以F、G和H标记。其中两个第一级的函数发生器F和G,每个可实现4输入的任何函数,同时它们也可以与H函数发生器组合生成五输入的任何函数。此外,CLB还具有CLB内部连线比外部连线延时小的特点。(2)XC4000系列提供了快速进位逻辑(CarryLogic)用来加速加法器和计数器的进位通道。利用快速进位逻辑、加法器和计数器,在占用最小数量CLB的情况下,却具有极快的工作速度。且该进位逻辑可以进行灵活配置,以实现任
6、意长度的计数器和减法器。500)this.style.ouseg(this)">因此,从提高芯片利用率、布线率,减小电路延时等方面考虑,必须充分利用XC4000系列芯片的特点,对电路中的1位全加器作适合于FPGA特点的特殊设计。图2电路为本文所采用的经优化后的包括快速进位逻辑的1位全加器电路,其中FMAP为函数映射,可将特定电路映射到CLB的F、G或H函数发生器中;CY4为快速进位逻辑宏单元。2.2.5中间处理单元在FIR数字滤波器中,中间处理单元主要实现对来自前加单元的1位串行输出数据的相乘和累加功能。这里采用基于ROM查表法的分布式算法进行中间处理单元的电路设计。如前所述,本文仅
7、考虑冲激响应对称的情况,即滤波器的系数是对称的,所以独立系数的数目应等于1/2的阶数。对于16阶的FIR滤波器来说,其独立系数的个数为8个。这8个独立系数按表1所示的各种组合存储于2个基于ROM的查找表内。500)this.style.ouseg(this)">2.2.6后处理单元后处理单元的主要功能是对数据进行四舍五入和从数据流中取出需要的数据。完成四舍五入功能需要一个16位的加法器,取数据则需要16位并行D触发器。2.2.7控制单元500)this.style.ouseg(this)">控制单元主要由计数器和D触发器组成。它对电路的控制主要包括:在电路开始工作前进行全局复位,作好
8、工作准备;对输入单元的工作进行控制;提供中间处理单元正常工作所必须的一些信号;提供最终输出结果时的输出同步信号(OUTSYN)。2.3电路原理及功能仿真采用Xilinx公司的XC4005EPC84设计的16阶FIR低通数字滤波器的硬件电路最上层的电路原理图如图3所示。500)this.style.ouseg(this)">图3是FIR数字滤波器的上层图,其输入输出管脚情况和硬件资源占用情况分别见表2和表3。为了检测设计的电路能否连续正确地工作,连续输入了1
此文档下载收益归作者所有