Loading
新闻中心库存中心价格中心PDF中心图片中心
ICGLE 电子技术支持中心,为电气人员和相关企业提供全面的信息(IC技术\IC库存\IC图片\PDF资料等)服务
总线设计PCB设计单片机DSPARM
JAVA驱动设计C/C++汇编J2EE网络协议中间件技术嵌入式系统无线通信通信网络模拟技术接口电路显示光电传感与控制EDA/PLD
气流体控制电子产品电机及工具通信设备仪器仪表电线电缆建筑电气低压电器高压电器电源工控自动化广电设备医疗器械More..
电源设计仪器仪表技术专递电路图片电子专栏储存技术汽车电子测量测试音响技术家用电器
成功方案市场分析行业标准应用前沿芯片应用综合专区
基于FPGA的分布式算法FIR滤波器设计
来源:电子测量技术   作者:赵岚 毕卫红等
字体大小:[大][中][小]

0 引 言

  FIR(finite impulse response)滤波器是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位冲激响应是有限的,没有输入到输出的反馈,是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。

  目前FIR滤波器的硬件实现有以下几种方式:

  一种是使用单片通用数字滤波器集成电路,这种电路使用简单,但是由于字长和阶数的规格较少,不易完全满足实际需要。虽然可采用多片扩展来满足要求,但会增加体积和功耗,因而在实际应用中受到限制。

  另一种是使用DSP芯片。DSP芯片有专用的数字信号处理函数可调用,实现FIR滤波器相对简单,但是由于程序顺序执行,速度受到限制。而且,就是同一公司的不同系统的DSP芯片,其编程指令也会有所不同,开发周期较长。

  还有一种是使用可编程逻辑器件,FPGA/CPLD。FPGA有着规整的内部逻辑块整列和丰富的连线资源,特别适合用于细粒度和高并行度结构的FIR滤波器的实现,相对于串行运算主导的通用DSP芯片来说,并行性和可扩展性都更好。

  FIR滤波器的主要组成模块是乘累加单元(MAC),如果按照直观结构构造乘法器和系数寄存器来实现会占用大量的逻辑资源,显然不可取。本文采用基于分布式算法思想的方法来设计FIR滤波器,并在FPGA上实现。

1 分布式算法原理

  分布式算法(distributed arithmetic,DA)最初是在1973年由Croisier提出的,但直到Xilinx发明FPGA的查找表以后,DA算法才在上世纪90年代初重新受到重视,并有效地应用在FIR滤波器的设计中。DA算法的原理如下。

  一线性时不变网络的输出为:

  假设c(n)为已知常系数,x(n)是变量,用(B+1)位2进制补码表示为:

  函数f(c(n),xb(n))的实现方法是利用一个LUT(查找表)实现影射f(c(n),xb(n)),也就是说2N字宽、预先设定程序的LUT接收一个N位输入向量xb=[xb[0],xb[1]…xb[N-1]],输出为f(c(n),xb(n)),个个影射,f(c(n),xb(n))都由相应的二次幂加权并累加。对于固定系数,整数乘以2b即左移6位,可以通过硬连线实现,不占用逻辑资源,利用图1所示的移位加法器就能有效地实现累加。DA算法的主要特点是巧妙利用SRAM查找表将固定系数的MAC运算转化为查表操作,其运算速度不随系数和输入数据精度的增加而降低,而且相对直接实现乘法器和系数寄存器在逻辑资源占用上得到了极大的改善。缺点是查找表的大小随滤波器的阶数的增加呈指数增长,这时可以采用将大查找表分解为小查找表的方法来降低逻辑资源的消耗,如图2所示。

2 FIR滤波器的网络结构

  N阶FIR滤波器相对于输入时间序列x(n)的输出表达式为:

  即输出序列为单位脉冲相应h(n)与输入x(n)的卷积,由卷积关系可直接画出结构图,称之为直接型结构,如图3所示,该结构中共需要N个乘法器。

  对于线性相位FIR滤波器,其单位取样响应是对称或反对称的,即:

  利用对称性可以简化网络结构,当h(n)为偶对称且N为偶数时,

  其线性网络结构如图4所示,仅需N/Z个乘法器。

3 FIR滤波器的硬件电路设计

  下面以一个32阶FIR带通滤波器为例说明硬件电路设计的方法和过程。

3.1 设计指标

  采用频率:200 Hz        类型:带通

  上限截止频率:54.3 Hz     下限截止频率:46 Hz

  阶数:32阶           系数数据宽度:16位

  输入数据宽度:16位       输出数据宽度:16位

3.2 滤波器的设计

  使用MATLAB 7.1软件中Filter Design&AnalysisTool,选取带通滤波器,Kaiser窗设计方法,设计出符合设计指标的32阶线性相位FIR滤波器,其幅频特性和相频特性如图5所示。

  滤波器的特征参数用16位二进制补码表示如下:

3.3 硬件电路组成单元

  FIR滤波器的硬件电路包括数据位扩展、并串转换器、移位寄存器组、预相加单元、查找表单元、查表结果相加单元、移位累加单元、锁存输出单元、控制单元等,总的结构如图6所示。

  (1) 数据位扩展:由于输入数据要进行预相加,为了防止溢出,保证电路正常工作,采用符号位扩展,使输入数据由16位增加到17位。

  (2) 并串转换器:由于电路以串行方式工作,须将并行输入的数据转换为串行数据输入,且顺序是先输入低位(LSB),后输入高位(MSB)。

  (3) 移位寄存器组:其主要功能是用寄存器组存储输入序列,实现输入数据的延时输出,存储的级数等于FIR滤波器的阶数减1,即31。移位寄存器组输出的数据和并串转换器输出的数据一起形成如图1中所示的输入数据阵列形式。

  (4) 预相加单元:利用FIR滤波器系数的对称性,按照图4所示的FIR滤波器线性网络结构,将相同滤波器系数相乘两个输入数据预先相加,这样相当于将滤波器的阶数减半,减小了硬件规模。预相加单元采用在位串行电路中广泛应用的串行加法器来实现。

  (5) 查找表单元:如前所述,LUT的规模随滤波器阶数的增加呈指数增长,当滤波器的阶数很大时,查找表的规模过于庞大。为了减小规模,可以将1个有16位地址总线的LUT分割,产生4个4位地址总线部分LUT,先分别对4个部分表查表,再将结果相加。为防止相加时产生溢出,将16位查表输出经过1位符号扩展变为17位。

  (6) 查表结果相加单元:加法器是影响FIR滤波器性能的主要部件,其工作速度决定了FIR滤波器的效率,因此采用具有超前进位功能的流水线加法器。

  (7) 移位累加单元:得到的查表结果相当于一个部分积,移位累加单元将其与寄存器中的部分积相加,结果右移1位还放入寄存器中,直到所有的位数都查表结束。特别应注意,最高位查表得到的结果不是与上一个右移1位的部分积相加,而是相减。这里的加法器仍是采用具有超前进位功能的流水线加法器,作减法时,只需将被减数取补即可。

  (8) 锁存输出单元:加法器的输出不稳定,将其结果经过一锁存器得到稳定的输出。

  (9) 控制单元:产生复位,时序等控制信号,控制电路的总体运行。

3.4 电路仿真

  在ALTERA公司的MAX+PLUS2软件环境下,用硬件描述语言VHDL对上述FIR滤波器的模块进行编程描述,并仿真各模块的波形,最后将各模块综合起来下载到器件FLEX10KE中形成FIR滤波器。

  用MATLAB设计了一幅度为0.22的50 Hz的正弦波,用250 Hz的采样器对其采样,得到周期序列[0,0.209 2,0.129 3,—0.129 3,—0.209 2],用16位二进制补码表示为:[0000H,1ACBH,108DH,EF73H,E538H],将其输入到FIR滤波器的输入端,滤波器的输出如图6所示,实验结果与理论计算一致。并取32位以后的输出结果,在MATLAB里绘制波形,如图7所示,可见,FPGA仿真结果正确,50 Hz的正弦波通过了FIR滤波器。

4 结 论

  本文所介绍的基于FPGA、采用分布式算法实现FIR滤波器的方法,在提高系统运行速度和节省硬件资源方面具有很大的优势。而且,通过改变阶数和查找表中的系数,还可以将此设计灵活地运用于实现高通、低通和带阻滤波器,可移植性较好。因此,这种方法在高速数字信号处理中将有很好的应用前景。




Upload by 小刘(2007-10-30)
IC
·基于RS232及红外接口的多功能通讯..
·MSP430系统应用结构设计与选型
·基于PIC单片机控制的RLC智能测量..
·数字娱乐设备中采用多锁相环和扩频时钟..
·走近Caneland服务器平台
·FLCOS技术掀起消费电子设备显示革..
·飞思卡尔三轴加速计产品激发创新应用思..
·用FPGA设计MP3个人数字播放机
·便携式数字X射线光锥耦合CCD成像系..
·MPEG-4 ASP视频编码器的软件..
·数字卫星电视节目的加密与解密技术
·基于高端FPGA的IC验证平台的PI..
·弧焊电源保护电路的设计
·ESD保护元件的对比分析及大电流性能..
·饱和电感及在开关电源中的应用
·RF电路中LDO电源抑制比和噪声的选..
·一种新型开关电源模块均流技术的研究
·基于FPGA+PCI的并行计算平台实..
·基于Protel SDK的传输线分析..
·基于USB的高速硬件精插补器设计
·基于FPGA的32Kbit/s CV..
·高速嵌入式视频系统中SDRAM时序控..
·嵌入式应用中存储器类型的选择技巧
·基于NOR FLASH存储器的嵌入式..
·嵌入式系统中闪存设备I/O软件的设计..
·非标准化传感器信号调理的一种新方法
·一种高精度光纤Bragg光栅传感器解..
·基于DSP的线阵CCD实时测量系统设..
·使用单片机实现GPRS通信小系统的研..
·高速印制电路板的设计及布线要点
·RTP协议的IP电话QoS监测及提高..
·高精度的步进电机控制系统设计
·CY7C68013与FPGA接口的V..
·基于MiniGUI的机车显示终端图形..
·基于WiMAX网络的切换管理研究
·面向FTTH的EPON系统应用与管理
·浅析电气火灾自动保护型断路器的使用
·构建基于RTLinux的嵌入式系统研..
·基于MiniGUI的机车显示终端图形..
·突破新兴高效能电源要求上的限制(图)
IC
推荐技术文章:
·数字电源的特点与发展现状..
·2007年及以后的电源驱动系统集成(....
·光电转换电源控制系统的设计(图)..
·三相、三输出控制器节省了POL转换器....
·一种用于航天工程的二次电源系统设计(....
·基于AVR单片机PWM功能的数控恒流....
·基于片上状态机的智能电源管理单元设计....
·天线方向图自动测试系统的设计..
·基于GPRS的自动抄表系统设计..
·基于IEEE1451标准的IP传感器....
·基于单片机的舵机控制 ..
·针对高速PCB设计问题定义一体化的设....
·基于VxWorks的TrueFFS文....
·基于Nios II的JPEG图像显示....
·用SoC实现视频图形引擎功能 ..
·信产部副部长苟仲文强调政府大力支持I....
·基于ARM9的嵌入式网关的研究..
·基于TMS320F2812和μC/O....
·ADC时延和建立时间的区别..
·利用Astro-Rail分析FFT芯....
·数据融合在舰炮系统低角跟踪中的应用
·低速率无线传感器网络演示系统的设计与..
·ARM多核和MIPS多执行绪嵌入式处..
·从ARM看企业的自我定位
·浅谈ARM仿真器中的断点资源
·基于ARM处理器的MVB 2类设备研..
·基于TMS320F28XX UCD8..
·基于TMS320LF2407的馈线终..
·基于DSP的Max-Log-MAP算..
·采用集成DSP与微处理器内核的嵌入式..
·基于DSP的平流层验证飞艇组合导肮系..
·高速DSP与PC实现串口通信的方法
·基于DSP和CPLD的智能相机系统设..
·用SPI实现dsPlC与ISD语音芯..
·基于DSP的同步相量测量装置的研究
·FPGA-DSP 瞄准目标:用得起的..
·基于DSP的高速实时语音识别系统的设..
·基于89C51单片机的数字视频监控系..
·基于C8051F041的电力变压器非..
·用单片机和EDA协同设计温度采集系统
IC
IC

©2007 版权归ICGLE所有   页面执行时间:78.125毫秒