快速实现基于FPGA的脉动FIR滤波器

发布者:心愿成真最新更新时间:2012-11-19 来源: 21ic关键字:FPGA  脉动FIR滤波器 手机看文章 扫描二维码
随时随地手机看文章
   

引言

目前,用FPGA(现场可编程门阵列)实现FIR(有限冲击响应)滤波器的方法大多利用FPGA中LUT(查找表)的特点采用DA(分布式算法)或CSD码等方法,将乘加运算操作转化为位与、加减和移位操作。这些结构需要占用器件较多的LE(逻辑元件)资源,设计周期长,工作频率低,实时性差。本文提出一种基于Stratix系列FPGA器件的新的实时高速脉动FIR滤波器的快速实现方法。利 用FGPA集成的DSP(数字信号处理器)乘加模块定制卷积运算单元,利用VHDL(甚高速集成电路硬件描述语言)元件例化语句快速生成脉动阵列结构的FIR滤波器,设计周期短、可移植性强,设计采用全流水结构,能高速、无滞后地实现实时信号处理。

1 设计指标及参数量化

1.1 滤波器技术指标

本文依据以下技术指标设计一个64阶等波纹滤波器:Fs=4.092 MHz;Fpass=1.4 MHz,fstop=1.6 MHz;Wpass<1 dB,Wstop<-50 dB。使用MATLAB中FDA-Tool工具获得滤波器系数。

1.2 参数量化

从FDATool中得到的滤波器系数值是一组浮点小数,必须量化为定点数才能在FPGA器件中实现。本文采用移位舍入的量化方法对滤波器系数进行量化,MATLAB描述为:

 

 

得到64阶系数。滤波器系数预先存入器件内部ROM中,通过修改coet.mif文件中的参数可以改变滤波器的类型或参数。使用Altera_mf库中altsyncram元件可以直接调用ROM中保存的数据。其调用语句描述如下:

 

 

2 FIR设计

2.1 器件简介

Stratix系列FPGA内部提供了丰富的硬功能模块,如片内RAM、PLL(锁相环)、DSP模块等,充分理解这些模块的结构特点和工作原理,掌握其使用方法,可以充分利用器件资源,最大程度地发挥器件在整个系统设计中的作用,使系统设计最优化。提供的DSP模块集成了乘、加/减/累加、求和这几种算术操作,支持符号数、无符号数和混合运算,并且在这些计算路径中集成了可选的寄存器级和全局/局部时钟控制。一个DSP块最多可以配置成8个9×9、4个18×18或者1个36×36的乘法器,可工作在简单乘法器模式、乘累加模式、2乘加模式和4乘加模式,应用这4种模式,可以实现高性能的DSP算法。本文选用StratixⅡ器件,在QuartusⅡ开发环境下应用4乘加模式生成脉动阵列PE(处理单元),用VHDL描述实现FIR滤波器设计。

2.2 脉动阵列结构没计

本文参考文献[6]中阵列F结构--扇入结果,输入流动,权值存入PE,设计一种可实时更替权值的FIR脉动结构,如图1所示。权值w从上流入各个PE中,输入x门左向右流入PE。在这个阵列中,x值在每个单步时刻内向右边的PE移动一次。在每次计算中,各个PE同时进行乘法,算出同一个y值的各乘积项,然后将乘积结果扇入至加法器中相加,得到该y值的结果,实现FIR算法。

[page]

 

   

2.3 PE设计

DSP模块集成的算术操作中,4乘加模式就是4个乘法器将乘积送出相加,输出一个加/减的结果。利用模块内部可选的寄存器,可使输入数据在模块内部流动,实现移位寄存器功能,如图2所示FPGA片内DSP块的结构。若两路输入分别为输入信号和滤波器系数。

本文选用DSP模块构成脉动阵列结构FIR滤波器的PE卷积单元。具体方法是,采用基于Altera_mf库的乘累加运算元件“ALTMULT_ADD”可以快速完成PE设计。通过Altera的IP工具MegaWizard管理器(MegaWizard Plug-In Manager),定制算术单元(Arith-metic)中乘累加底层基本宏功能模块的参数,设置需要的乘法器个数、输入输出数据格式、流水线控制时钟等参数,即可完成4阶卷积PE元件的设计。

通过调用宏功能模块生成元件的封装文什,然后在设计代码中调用该封装文件。本文选择16位符号数输入、34位符号数输出,设置分级流水线控制输入、输出、乘积结果和加法结果,选择一路输入内部移位。第k个PE元件例化VHDL描述如下:

 

 

元件中clk0~clk1分别指向PE中各级寄存器建立时钟。例如t-1时刻,x(t-I)~x(t-4)参与PEk中计算;t时刻,数据x(t)流入PE时,PE 中 4个乘法单元中寄存的数据往前流动,x(t-4)从shiftouta端门流向下级PE。[page]

 

   

3 FIR优化设计

将前述的例化的PE单元按图1所示的脉动结构连接起来,就完成了一个基本的脉动FIR滤波器设计,为提高系统性能,需要进一步对设计进行优化。

3.1 时序优化设计

对设计而言,提高工作频率至关重要,更高的工作频率意味着更强的处理能力。合理设计系统的时序对提高整个设计的工作频率有着至关重要的作用。而整个系统中最核心和复杂的时序关系为PE内部乘加时序。以下时序优化以PE单元为例。

本设计期望系统工作在200 MHz以上。因此,对设计的tco(时钟到输出延时)、tsu(输入建立时间)、tpd(引脚到引脚延时)分别约束为3 ns、2 ns、5 ns。编译后从时序分析报告(Timing Analyzer Report)可得到PE处理单元的基本时序关系。若使用单周期设计,从输入数据到参与乘法、加法计算再到结果输出,至少需要2.023+1.829+2.625+2.577=9.84 ns才能完成一次运算,达不到期望时钟频率。若应用DSP模块的流水线工作,合理设置PE单元各级触发时钟,则可使系统工作频率昆著提高,系统最高可工作在356.13 MHz(相同速度等级的芯片,Altera公司提供的9位16阶FIR IP核,参考工作频率为217.15 MHz)。考虑系统完成后全天候工作,为保证系统长期稳定,本设计最终选用208.33 MHz系统工作频率。

3.2 加法优化设计

设计一个64阶的滤波器,需要使用16个PE,即需要对16个乘加结果进行加操作,如果采用图1所示的加法运算,如图4(a)所示,计算一次y值需要15个时钟周期才能完成,而且在15个周期内各个加法输入不能变化,若设计中PE能达到300 MHz的工作频牢,加法也只能工作在20 MHz,必然阻碍设计的高速实现,成为制约系统性能的瓶颈。

[page]

 

   

采用流水线的加法运算是解决这个瓶颈的最好方法。如图4(b)所示。clk1~clk5与PE计算时钟同步,无需延长加法计算时钟,第5级流水的加法器使能后就能实时得到y结果。通过LPM(参数化模块库),直接在代码中实例化LPM加法运算,就能快速生成全流水结构的加法模块。其中第1级16个加法描述如下:

 

 

END GENERATE;

4 FIR实现

上述的描述在QuartusⅡ开发工具中进行编译和布局布线,采用的目标器件为EP2S601024C4芯片,系统内部最高运算时钟为356.13 MHz。

设计的其他性能参数如下:总逻辑单元1 037个;总寄存器单元1 070个;总存储器容量2 048B;使用的9位DSP模块128个;最差输入引脚到寄存器延时1.750 ns;最差寄存器到输出引脚延时2.615 ns。

本设计经过MATLAB与Modelsim联合功能仿真,MATLAB与Quartus联合时序仿真,两种仿真结果与FPGA处理后的数据一致。

5 结束语

本文结合FPGA器件的结构和特点,利用DSP模块及其内部寄存器实现FIR脉动滤波器,不仅性能高,同时节约了LE资源和布线资源。通过MegaWizard宏模块编辑器,可以快速定制核心的处理单元实现脉动结构,对不同结构的滤波器只需修改定制处理单元参数和ROM中系数,就可以迅速设计出新的滤波器。采用全流水加法结构,使用最少的逻辑单元,达到最高的工作频率,完成对信号的实时、高速处理。

关键字:FPGA  脉动FIR滤波器 引用地址:快速实现基于FPGA的脉动FIR滤波器

上一篇:FPGA迈入新阶段 Altera 20nm混合系统的三大创新
下一篇:基于CPLD的机载小型化控制与保护

推荐阅读最新更新时间:2024-05-02 22:26

Vector Informatik网络接口产品线采用Altera Cyclone III FPGA
通过汽车认证的知识产权实现了和标准网络协议的无缝通信 2007年12月5号,北京—— Altera今天宣布Vector在其网络接口产品线上采用了低成本、低功耗Altera Cyclone III FPGA。Vector Informatik网络接口产品支持汽车网络设计人员实现PC和CAN、LIN、FlexRay以及MOST总线系统的连接,应用于电子网络的开发、分析和优化。 Vector全球产品线经理Rainer Zaiser评论说:“我们之所以选择了Altera解决方案,是因为Cyclone III FPGA的功耗非常低,同时Altera还提供灵活的封装和通过汽车认证的知识产权。而且,加入了Altera的Cyclone III
[焦点新闻]
基于FPGA+DSP的红外信息数据处理系统设计
现代空战中,光电对抗装备在战争中扮演着重要的角色,而红外侦测与跟踪系统由于采用的无源探测技术,因此与雷达等主动探测系统相比具有隐身性强、抗干扰能力好和小型化程度高等优点,受到业内的关注。新一代红外成像导引系统须具备高精度、处理速度快、实时性强且反应时间短等特点,这便要求图像处理计算机能满足图像处理中大数据量、复杂运算、实时性强、高传输率和稳定可靠等要求。文中从工作原理、硬件及软件3个方面介绍了基于 DSP 和 FPGA 芯片的红外信息数据处理系统设计方法。 1红外制导控制系统硬件总体设计 红外信息数据处理系统按照功能划分为两大板块,由图像信息处理板和控制信息处理板组成数据处理系统。其红外制导控制信息数据处理系统如图1
[嵌入式]
基于<font color='red'>FPGA</font>+DSP的红外信息数据处理系统设计
Altera首次实现了对关键工业以太网协议的FPGA IP支持
  工业OEM能够以高性价比,在单片硬件设计中灵活实现关键通信协议 2007年7月25号,北京 ——Altera公司(NASDAQ: ALTR)今天宣布为工业自动化应用中的以太网通信协议提供FPGA支持,这些应用包括ProfiNet、Ethernet/IP、Modbus-IDA、EtherCAT、SERCOS III接口和Ethernet Powerlink等。这些关键通信协议的知识产权(IP)内核现在可以在Altera低成本Cyclone系列FPGA中实现。 设计人员利用工业以太网IP内核可以在一块电路板上实现任何标准,这不但减小了外形尺寸,而且节省了时间。系统OEM能够以高性价比方式在其自动化产品中增加工业标准联网功能,同时
[新品]
WCDMA系统基带处理的DSP FPGA实现方案
引言 随着Internet的迅猛发展和各种无线业务需求的增加,目前以承载单一话音业务为主的无线通信网已经越来越不适应人们的需要,所以,以大容量、高数据率和承载多媒体业务为目的的第三代移动通信系统(IMT-2000)成为无线通信的发展方向。码分多址(CDMA)技术凭借其良好的抗噪性、保密性和低功率等优点成为第三代移动通信中最主要的多址接入技术。 和传统的CDMA系统相比,第三代移动通信的最大特点在于能支持多种速率的业务,从话音到分组数据到多媒体业务,并能根据具体的业务需要,提供必要的带宽。3GPP协议规定WCDMA系统支持的业务类型包括:5.15Kbps~12.2Kbps话音数据、 64Kbps电路数据、144Kbps分组数据和38
[嵌入式]
WCDMA系统基带处理的DSP <font color='red'>FPGA</font>实现方案
一种基于FPGA的多时钟片上网络研究与设计
  在FPGA 上设计一个高性能、灵活的、面积小的通信体系结构是一项巨大的挑战。大多数基于FPGA 的片上网络都是运行在一个单一时钟下。随着FPGA 技术的发展,Xilinx 公司推出了Virtex-4 平台。该平台支持同一时间内32 个时钟运行,也就是说每个片上网络的内核可以在一个独立的时钟下运行, 从而使每个路由器和IP 核都运行在最佳频率上。因此适用于设计多时钟片上网络,实现高性能分组交换片上网络。    1 多时钟片上网络架构的分析   片上网络结构包含了拓扑结构、流量控制、路由、缓冲以及仲裁。选择合适网络架构方面的元素,将对片上网络的性能产生重大影响。   (1)网络拓扑:在设计中,选择Mesh 拓扑结构。Mesh
[嵌入式]
一种基于<font color='red'>FPGA</font>的多时钟片上网络研究与设计
基于FPGA的RFID板级标签设计与实现
引 言   射频识别(Radio Frequency Identification,RFID)技术是一种新兴的非接触式自动识别技术,在工业自动化、商业自动化、交通运输控制管理、防伪及军事等众多领域都有广泛的应用前景。它利用无线射频方式进行非接触双向数据通信,以达到目标识别并交换数据的目的,可用来跟踪并管理几乎所有的物理对象。RFID电子标签已经成为21世纪全球自动识别技术发展的主要方向。目前,RFID已经得到了广泛应用,且有国际标准ISO10536,ISO14443,ISO15693,ISO18000,EPC Global等几种。其中,ISO18000-6C属于超高频射频识别技术标准,它融合了EPC C1G2标准。该标准的特点是
[安防电子]
基于<font color='red'>FPGA</font>的RFID板级标签设计与实现
如何利用可编程器件设计车用显示系统
  电子设备正在迅速发展,尤其是 车用显示系统 ,视频和视频处理正成为汽车应用中增长较快的技术。像车道保持、驾驶监控、夜视以及车载娱乐设备等都是典型的应用需求。   设计车用视频系统时,需要考虑系统结构的几个方面:首先是系统的功能,应确定这个系统是针对安全系统处理视频信息、还是车载娱乐设备处理流动的视频数据,或者是两者的结合而设计。其次是互联的类型和视频系统器件的速度。此外还应考虑其它因素包括有多少视频源、有多少显示输出、系统中不同的设备相隔多远、采用哪种布线方案,以及整个系统的成本。由于可编程器件具有很高集成度和灵活性,以及低功耗和宽的工作温度范围,且价格不断下降,因此该类器件对于从事汽车电子设计的工程师来说越来越具有吸
[嵌入式]
基于FPGA的三相PWM发生器
    摘要: 介绍了基于FPGA设计+的三相PWM发生器。该发生器具有灵活和可编程等优点,可应用于交流电机驱动用的三相电压源逆变器。实验结果验证了本设计的有效性。     关键词: 脉宽调制  现场可编程门阵列 随着现代工业的要求和微电子技术的进步,交流传动已经迅速地从模拟控制转向数据控制,其中PWM技术与方法是其核心内容。但数字化PWM电路一直是设计中的难点,除了集成三相PWM发生器的80C196MC、TMS320F240等微处理器外,均采用中小规格集成电路设计感想 PWM,这是非常复杂的,往往使电路复杂、可靠性差。本文介绍了一种用单片大规模FPGA实现的三相PWM发生器,它具有三相脉冲中心对称、P
[半导体设计/制造]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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