基于FPGA的分布式算法FIR滤波器设计

发布者:ph49635359最新更新时间:2007-10-29 来源: 电子测量技术关键字:寄存  数字  程序  脉冲 手机看文章 扫描二维码
随时随地手机看文章

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滤波器的方法,在提高系统运行速度和节省硬件资源方面具有很大的优势。而且,通过改变阶数和查找表中的系数,还可以将此设计灵活地运用于实现高通、低通和带阻滤波器,可移植性较好。因此,这种方法在高速数字信号处理中将有很好的应用前景。

关键字:寄存  数字  程序  脉冲 引用地址:基于FPGA的分布式算法FIR滤波器设计

上一篇:基于DSP的高速实时语音识别系统的设计
下一篇:MIMO-GMC链路自适应方法及其DSP实现

推荐阅读最新更新时间:2024-05-02 20:38

利用数字电位器实现电压-电阻转换
在工业控制和偏置调节电路中有时需要将电压转换成电阻,这一过程在具体实施时有一定的难度。图1所示电路利用两路数字电位器提供了一个简单的转换方案。 图1. 利用两路相同的数字电位器实现电压-电阻转换 数字电位器U1和比较器U3构成数字式跟踪-保持电路,U1通过调节其内部分压比来保证VWIPER跟踪VIN。这样,滑动电阻将与VIN成正比。由于U1和U2的数字输入是连接在一起的,因此U2的滑动端位置与U1相同,对应端之间的电阻也相同。从而可得到与VIN成正比的电阻,从而实现了电压至电阻的转换。 数字式跟踪-保持电路的工作过程如下所述。为跟踪VIN,在每一个时钟脉冲到达时,U1的滑动端位置(中心抽头)会向上或向下移动。比较器U3对模拟输入(
[电源管理]
利用<font color='red'>数字</font>电位器实现电压-电阻转换
精确到千分之一秒的单片机秒表程序(带仿真)
这个秒表程序是51hei单片机开发光盘里面附带的一个程序,可精确到千分之一秒,附件里面有仿真文件和hex文件.下载地址: http://www.51hei.com/bbs/dpj-19342-1.html #include reg52.h #include intrins.h #define uint unsigned int #define uchar unsigned char sbit duxa=P2^6; sbit wexa=P2^7; sbit k1=P1^2; sbit k2=P1^3; sbit k3=P1^4; uchar temp,qian,bai,shi,ge; uint num,a,shu; uchar
[单片机]
数字电位器的研究及应用
  数字电位器(Digital PotenTIometer)亦称数控可编程电阻器,是一种代替传统机械电位器(模拟电位器)的新型CMOS数字、模拟混合信号处理的集成电路。数字电位器采用数控方式调节电阻值的,具有使用灵活、调节精度高、无触点、低噪声、不易污损、抗振动、抗干扰、体积小、寿命长等显著优点,可在许多领域取代机械电位器。   数字电位器一般带有总线接口,可通过单片机或逻辑电路进行编程。它适合构成各种可编程模拟器件,如可编程增益放大器、可编程滤波器、可编程线性稳压电源及音调/音量控制电路,真正实现了“把模拟器件放到总线上”(即单片机通过总线控制系统的模拟功能块)这一全新设计理念。   目前,数字电位器正在国内外迅速推广,并大
[模拟电子]
三星与UCSF推出My BP Lab智能应用程序
全新应用程序利用Galaxy S9和S9+革新性的光学传感器,反馈参与者的血压和压力值 近日,三星电子与加利福尼亚大学旧金山分校(UCSF)宣布推出双方合作研发的My BP Lab应用程序,可帮助用户监测他们的血压和压力值,并获得有助于日常健康的个性化资讯。 三星宣布,My BP Lab 应用于三星Galaxy S9和S9+所搭载的创新光学传感器,针对用户的个人健康状况提供更详尽、更准确的资讯。该光学传感器内置于设备中,能直接通过智能手机测量血压,不需外接其它硬件。 使用者只要参加由UCSF研究员主导的研究计划,便能获得关于他们全天的压力和血压值的个人化资讯。该研究的目标之一是优化My BP Lab,以提供情景化、科学化的反
[手机便携]
数字示波器在汽修厂中的作用是什么
作为维修工作员,在诊断车辆常见问题时怎样才能精准地捕捉异常现象并找寻原因,是解决问题的关键,而数字示波器则是帮助维修工作员解决这一难点的重要小助手。在此结合数字示波器在维修诊断中的应用进行简单分析。 数字示波器在汽修厂中的作用: 小轿车电子设备的一些信号变化速率是十分快的,变化周期保证千分之一秒,一般检测设备的扫描机速度理应是被测信号的5~10倍。许多常见问题信号是间断性的,时断时续,这就务必实验仪器的检验速度高过常见问题信号的速度。数字示波器可以考虑到这一速度要求,它不仅可以快速捕捉电路信号,可以用较慢的速度来显示这类波形,有利于维修工作员可以一面观察,一面分析。 它可以用储存的方式记录信号波形,可以倒回家了观察早就造成
[测试测量]
<font color='red'>数字</font>示波器在汽修厂中的作用是什么
80C51单片机里的程序是如何运行的
前言 我们想要理解单片机是如何运行程序的,我们首先需要了解单片机的组成,我们这里以80C51单片机为例来理解程序在单片机中是如何运行的。 单片机的组成 8051单片机的内部硬件结构包括: 中央处理器CPU:它是单片机内部的核心部件,决定了单片机的主要功能特性,由运算器和控制器两大部分组成。 存储器:8051单片机在系统结构上采用了哈佛型,将程序和数据分别存放在两个存储器内,一个称为程序存储器,另一个为数据存储器在物理结构上分程序存储器和数据存储器,有四个物理上相互独立的存储空间,即片内ROM和片外ROM,片内RAM和片外RAM。 定时器/计数器(T/C):8051单片机内有两个16位的定时器/计数器,每个T/C既可以设置成计数
[单片机]
80C51单片机里的<font color='red'>程序</font>是如何运行的
你的黑历史老照片 一个小程序就能全翻出来
    老照片,真是一件令人又爱又恨的东西。   它们有回忆,也有惊吓。   不仅明星们会有许多‘想重金删除的’老照片。即便是普通人,突然翻出几年前的旧照,有时也恨不得马上都删掉吧。   你有多久没有回顾自己的‘黑历史’了呢?   今天,给大家推荐的这款小程序,就能帮你找回被遗忘的‘黑历史’。   被遗忘的‘黑历史’   在网盘还没有火起来的年代,我们还习惯用 QQ 聊天,在 QQ 空间的相册里,保存自己的照片、图片。   随着科技的不断进步,人们早已不能忍受被压缩过的照片,转而使用大容量的网盘备份照片。因此,也渐渐就忘记了 QQ 空间中的相册。   虽说你已经另觅新欢,但QQ的相册依旧为你保存着多年前的照片!   想来看看自己以
[手机便携]
拨开数字化转型的迷雾
中国储能网讯: 对制造业企业而言,在数字化转型浪潮面前,如何回答好为何转型、如何转型以及如何契合时代机遇及挑战做出抉择等一系列关键性转型问题,推动企业从制造升级为智造,至关重要。 ■ 文/ 方洪波 美的集团董事长 回到2012年,我刚成为美的集团董事长时,不得不做出数字化转型的选择。因为在那之前,美的已经是一个高度分权的组织,每一个事业部自成一体,以至于所有的信息系统高度离散化,缺乏一致性。 图片 所有信息都是孤岛,不能集成,更不可能自动分享。这是当时面临的困境,于是美的做了一个重大选择,将已经建立多年并稳定运行的信息系统推倒重来。等于说,我们想要在一张白纸上重新画出最新最美的图画。 后来,外部提
[新能源]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved