FIR带通滤波器的FPGA实现
- 格式:doc
- 大小:560.00 KB
- 文档页数:4
32阶FIR 滤波器的FPGA 实现范晓东1,蔡德林2,桂 岳1,梁本仁1(1.安徽大学电子科学与技术学院 安徽合肥 230039;2.中国电子科技集团公司第38研究所 安徽合肥 230031)摘 要:阐述了有限冲击响应(FIR )低通滤波器的窗函数设计方法,利用并行分布式算法在现场可编程门阵列上实现了32阶FIR 低通滤波器。
采用Altera 公司中Stratix 系列芯片内部的ROM 实现了一种基于查找表结构的FIR 数字滤波器,从而将卷积运算变换成一种查表后的加法运算,提高了运算速度,节省了逻辑单元。
仿真结果表面,基于并行分布式算法的FIR 滤波器最大处理速度可以达到200M Hz 。
关键词:FIR 滤波器;FP GA ;并行分布式算法;Matlab ;Quartus Ⅱ中图分类号:TN713 文献标识码:A 文章编号:10042373X (2009)212186203Implement of 32Orders FIR Filter on FPG AFAN Xiaodong 1,CAI Delin 2,GU I Yue 1,L IAN G Benren 1(1.Electronic Science and Technology Institute ,Anhui University ,Hefei ,230039,China ;2.No.38Institute ,China Electronics Technology Group Corporation ,Hefei ,230031,China )Abstract :Windows function design method of FIR digital filter is introduced ,and the parallel distributed arithmetic is used to implement a 32orders FIR digital ing the Altera ′s Stratix series FP GA to design a new structure of ing the ROM in FP GA ,this design can convert convolution to summation.Thus ,a high process speed is improved and the Logic Ele 2ments (L E )is saved.The result of simulation shows that the max speed of FIR filter can arrive at 200M Hz based on parallel distributed arithmetic.K eywords :FIR filter ;FP GA ;parallel distributed arithmetic ;Matlab ;Quartus Ⅱ收稿日期:2009204222 随着软件无线电的发展,对于滤波器的处理速度要求越来越高。
FIR数字滤波器的设计与实现介绍在数字信号处理中,滤波器是一种常用的工具,用于改变信号的频率响应。
FIR (Finite Impulse Response)数字滤波器是一种非递归的滤波器,具有线性相位响应和有限脉冲响应。
本文将探讨FIR数字滤波器的设计与实现,包括滤波器的原理、设计方法和实际应用。
原理FIR数字滤波器通过对输入信号的加权平均来实现滤波效果。
其原理可以简单描述为以下步骤: 1. 输入信号经过一个延迟线组成的信号延迟器。
2. 延迟后的信号与一组权重系数进行相乘。
3. 将相乘的结果进行加和得到输出信号。
FIR滤波器的特点是通过改变权重系数来改变滤波器的频率响应。
不同的权重系数可以实现低通滤波、高通滤波、带通滤波等不同的滤波效果。
设计方法FIR滤波器的设计主要有以下几种方法:窗函数法窗函数法是一种常用简单而直观的设计方法。
该方法通过选择一个窗函数,并将其与理想滤波器的频率响应进行卷积,得到FIR滤波器的频率响应。
常用的窗函数包括矩形窗、汉宁窗、哈密顿窗等。
不同的窗函数具有不同的特性,在设计滤波器时需要根据要求来选择合适的窗函数。
频率抽样法频率抽样法是一种基于频率抽样定理的设计方法。
该方法首先将所需的频率响应通过插值得到一个连续的函数,然后对该函数进行逆傅里叶变换,得到离散的权重系数。
频率抽样法的优点是可以设计出具有较小幅频纹波的滤波器,但需要进行频率上和频率下的补偿处理。
最优化方法最优化方法是一种基于优化理论的设计方法。
该方法通过优化某个性能指标来得到最优的滤波器权重系数。
常用的最优化方法包括Least Mean Square(LMS)法、Least Square(LS)法、Parks-McClellan法等。
这些方法可以根据设计要求,如通带波纹、阻带衰减等来得到最优的滤波器设计。
实现与应用FIR数字滤波器的实现可以通过硬件和软件两种方式。
硬件实现在硬件实现中,可以利用专门的FPGA(Field-Programmable Gate Array)等数字集成电路来实现FIR滤波器。
目录摘要 (2)英文摘要 (3)1 引言 (3)1.1国内外研究现状 (4)1.2本论文的研究内容及主要工作 (6)2 FIR数字滤波器设计 (6)2.1数字滤波器基础 (6)2.1.1 数字滤波器简介 (6)2.1.2 FIR数字滤波器的结构 (7)2.2 FIR数字滤波器设计方法 (8)2.2.1 窗函数法 (8)2.2.2 频率采样法 (9)2.2.3 等波纹最佳逼近法 (11)2.2.4 三种设计方法的比较......................... 错误!未定义书签。
3 FPGA 设计优点以及分布式算法 (12)3.1 使用FPGA器件进行开发的优点 (13)3.2分布式算法 (14)3.2.1 分布式算法基础 (14)3.2.2 有符号的DA系统 (15)4 基于FPGA的FIR滤波器设计 (15)4.1基于M ATLAB的FIR数字低通滤波器抽头系数的提取 (16)4.1.1 滤波器的设计指标 (16)4.1.2 滤波器的具体设计方法 (16)4.1.3 参数提取与量化 (17)4.2FIR滤波器的FPGA实现 (19)4.2.1 模块划分 (19)4.2.2 FIR滤波器各模块的实现 (20)4.2.3 FIR滤波器的顶层设计 (30)4.3FIR滤波器的系统仿真验证 (32)4.4系统硬件 (36)4.4.1 系统框图 (36)4.4.2 部分芯片简介 (36)4.4.3 AD、DA电路原理图 (39)4.5测试波形及现场照片 (39)4.6数据误差分析 (40)结论 (41)参考文献 (41)附件 (42)基于FPGA的FIR滤波器的设计摘要:本文设计了一个基于FPGA的16阶FIR低通滤波器,使用分布式算法作为滤波器的硬件实现算法,并对其进行了详细的讨论。
针对分布式算法中LUT规模过大的缺点,采用多块查找表的方式减小硬件规模。
在设计中采用了自顶向下的层次化、模块化的设计思想,将整个滤波器划分为多个模块,利用VHDL语言的描述方法进行了各个功能模块的设计,最终完成了FIR数字滤波器的系统设计。
基于FPGA的数字滤波器设计院系:信息科学与工程学院专业班:通信工程1102班姓名:李羚学号:20111181082指导教师:周忠强王军舰2015年5月基于FPGA的FIR数字滤波器设计摘要随着公元的第二十一个世纪的到来,今天我们进入了一个科技日新月异的时代。
在现代电子数字系统中,滤波器都以一个不可缺少的身份出现。
其中,FIR数字滤波器又以其良好的线性特性被广泛和有针对性的大量使用。
众所周知,灵活性和实时性是工程实践中对数字信号处理的基本要求。
在以往使用的各种滤波器技术中,不难发现有许许多多的问题。
但是,随着现代计算机技术在滤波问题上的飞跃,派生出一个全新的分支——数字滤波器。
利用可编程逻辑器件和EDA技术,使用FPGA来实现FIR 滤波器,可以同时兼顾实时性和灵活性。
基于FPGA的FIR数字滤波器的研究势在必行。
本论文讨论基于FPGA的FIR数字滤波器设计,针对该毕业设计要做的基本工作有如下几点:(一)掌握有限冲击响应FIR(Finite Impulse Response,FIR)的基本结构,研究现有的实现方法。
对各种方案和步骤进行比较和论证分析,然后针对目前FIR数字滤波器需要的特点,速度快和硬件规模小,作为指导思想进行设计计算。
(二)基于硬件FPGA的特点,利用Matlab软件以及窗函数法设计滤波器。
对整个FPGA 元件,计划采用模块化、层次化设计思想,从而对各个部分功能进行更为详细的理解和分工设计。
最终FIR数字滤波器的设计语言选择VHDL硬件编程语言。
(三)设计中的软件仿真使用Altera公司的综合性PLD开发软件Quartus II,并且利用Matlab工具进行对比仿真,在仿真的过程中,对比证明,本论文设计的滤波器的技术指标已经全部达标。
关键词:数字滤波器Matlab 可编程逻辑元件模块化算法Based On FPGA Design Of FIR Digital FiltersMajor:Electronic And Information Engineering Department(Information Engineering)Student: YangChengjie Supervisor:FengLiuAbstractAs we have entered the twenty first century,our technology is changing continuously with the times. In the modern electronic digital systems,filters are indispensable. Among them,the FIR digital filters are widely used with the excellent linear characteristic. As is well-known to us all,flexibility and real-time quality are the basic requirements in digital signal processing of engineering practice. Since we have used a variety of filter technology in the past,it is not difficult for us to find many problems in it. Moreover,with the development of modern computer technology in filter,a new branch - digital filter has derived. We make use of the programmable logic devices and EDA technology,together with the FPGA to design the FIR filter,which is real-time and flexible. In a nutshell,it is imperative to do the research in the FIR digital filters based on the technology of FPGA. This thesis is focused on the design of the FIR digital filters based on the technology of FPGA. Several points are worth mentioning here:(1)To understand and master the basic structure of the limited shock Response FIR (Finite Impulse Response,FIR),research existing realization method,to use various solutions to compare and analyze the steps and demonstrations; then,to do the self design and correction concerning the characteristics of the present FIR digital filters,that is,fast in speed and small scale in hardware.(2) To design FIR filter based on the characteristics of FPGA hardware. In the design process,ready to use of Matlab software and window function method design filter. As far as the whole FPGA components are concerned,we plan to carry on the modularized and hierarchic design,in order to have a more detailed understanding of the function of eachpart and make a division of design. Eventually,FIR digital filters will adopt the VHDL hardware programming language.(3) To adopt the comprehensive PLD development software Quartus II of the Altera company in the design of the software simulation. And we will use of the Matlab tools for the simulation 。
FIR带通滤波器的FPGA实现
时间:2009-11-11 09:14:40 来源:现代电子技术作者:石兴华,吴光敏引言
在FPGA应用中,比较广泛而基础的就是数字滤波器。
根据其单位冲激响应函数的时域特性可分为无限冲击响应(Infinite Impulse Response,IIR)滤波器和有限冲击响应(Finite Impulse Response,FIR)滤波器。
DSP Builder集成了Altera和Matlab/Simulink基于FPGA的信号处理的建模和设计。
该工具可以将数字信号处理算法(DSP)系统表示成为一个高度抽象的模块,在不降低硬件性能的前提下,自动将系统映射为一个基于FPGA的硬件设计方案。
即支持设计者在Matlab中完成算法设计,在Simulink软件中完成系统集成,然后通过SignalCompiler(模块名)生成在QuartusⅡ软件中可以使用的硬件描述语言,最终实现硬件系统的设计。
FIR滤波器是DSPBuilder应用中最为常用的模块之一,在此基于上述基础,设计实现了基于模块的FIR数字带通滤波器。
1 基于DSP Builder的滤波系统设计
1.1 FIR滤波器原理
有限冲激响应(Finite Impulse Response,FIR)滤波器是由有限个采样值组成,实现的方式是非递归、稳定的,在满足幅频响应要求的同时,可以获得严格的线性相位特性,因此在高保真的信号处理等领域得到广泛应用。
对于一个FIR滤波器系统,它的冲击相应总是有限长的,其系统函数可记为:
最基本的FIR滤波器可表示为:
式中:z(n)是输入采样序列;h(n)是滤波器系数;L是滤波器阶数;y(n)表示滤波器输出序列,为x(n)和h(n)的卷积。
FIR滤波器基本结构如图1所示。
对于一个4阶滤波器子系统其输出可表示为:
可见在这个子系统中共需要4个延时器,4个乘法单元和一个4输入的加法器,并可以根据实际需要选择调用子系统构成多阶滤波器。
1.2 滤波的总体要求及实现
1.2.1 设计要求和滤波参数选取
该带通滤波器的技术指标为16阶FIR数字带通滤波器,对模拟信号的采样频率fs为102.4 kHz,通带频率为24~44 kHz,上限截止频率24 kHz,下限截止频率44 kHz,输入/输出序列位宽分别是9位、19位。
滤波器系数由滤波器设计工具FDATools生成。
因FIR数字滤波器的设计方法主要有窗函数法和等波纹一致逼近法等,比较最佳效果选定Equiripple等波纹法实验。
输入信号采用DSPBuilder库中的增加/减少(Increment Decrement)模块和LUT模块,分别构成一个线性递增的地址发生器和正弦查找表模块。
这样组建一组正弦信号,考虑组建通带内频率f1=24.414 kHz与带外频率f2=48.828 kHz 叠加。
之所以选这两个频率主要根据LUT中的信号的步进制即在一个周期(0~2π)中对信号采样点来决定的。
1.2.2 带通滤波器的模型设计
根据FIR滤波器原理和4阶子系统的输出公式,在Matlab的Simulink环境下,调用Altera DSP Builder库中的4个Delay延迟模块、4个Product乘法模块、5个9位的Input输入端口、1个20位的Output输出端口和一个4输入的加法器,使9位的输入序列x(n)和FIR 滤波器的系数h(0),h(1),h(2),h(3)作为输入,完成4阶滤波器子系统。
调用4个这样的子系统级联起来构成16阶的滤波器。
其中,滤波器系数h(0),h(1),…,h(15)由滤波器设计工具FDATools生成,系数与滤波器关联,建立出完整的滤波系统模型。
2 Simulink的模型仿真
在Simulink环境下设计仿真时间等参数,运行仿真得到滤波输出的幅频相应图和时域图如图2,图3所示。
图2中纵横坐标分别代表了幅值和频率值显示,Magnitude,Frequency单位分别是dB(幅值单位也称衰减倍数)和MHz(横坐标每格单位相比kHz被放大104便于观察)。
纵横轴每格量为5 dB和50 MHz。
从该频谱图中可看出,滤波后通带内幅频曲线相对平缓,带外衰减较大,由滤波前的连续幅频变成了选择通过的单一幅频曲线,起到了过滤带外频谱的作用。
该图坐标轴的纵横轴分别代表了幅度值和时间轴。
单位分别为十进制数和s。
图3(a)是两正弦信号经平行加法器合成的波形图3(b)滤波后的波形。
可见高频信号衰减很大起到了过滤带外时间离散信号的作用。
综上该带通滤波器在频域和时域都实现了相应的滤波功能,至此完成了模型仿真。
3 在ModeISim中实现RTL级仿真
Simulink中仅实现了算法级的仿真,而ModelSim需要对生成的VHDL代码进行功能仿
真即RTL级仿真。
如图4的波形。
图4定性表述了6个信号波形。
clock为时钟周期,第二个信号是全局复位。
重点观察第三、六个信号,分别是输入信号(加了数/模转换的)的模拟显示和经滤波后输出信号的模拟显示。
这和Simulink中仿真结果是一致的。
第四个信号是滤波后(加数/模转换)的信号,第五个是最后一个4阶滤波子系统的输出。
同样可设置ModelSim对应的数字显示,每个时钟周期对应的数值即为每个时钟周期对正弦信号的一个采样点计算一次的值。
4 在QuartusⅡ中实现时序仿真
ModelSim中也仅实现RTL级仿真,并不能精确反应电路的全部硬件特性。
Altera提供自动和手动两种综合适配流程,在此选用自动流程在QuartusⅡ中进行硬件设计。
设定990 ns仿真结果如图5所示与图3ModelSim的数字显示对应信号和结果均是一致的,只是QuartusⅡ的时序仿真更为精确。
5 FPGA硬件实现
系统仿真通过后,需转到硬件上加以实现,这是整个DSP Builder设计中最为关键的一步。
QuartusⅡ仿真中生成了.sof编程文件,用于FPGA编程配置,完成了对开发板Stratix ⅡEP2S180特定芯片的编译和管脚的分配。
将.sof文件下载到开发板中,编程模式为USB Blaster相应模式为JTAG,用示波器检测D/A输出,可观察到实测的输入/输出波形与仿真结果均对应一致。
至此完成了该滤波器完整的FPGA开发设计,并验证了该滤波器达到预期设计要求。
6 结语
这里介绍在Altera DSPBuilder。
环境下基于模型化设计FIR数字带通滤波器的方法,通过模块化的方法实现了向VHDL硬件描述语言代码的自动转换、RTL级功能仿真、综合编译适配和布局布线、时序实时仿真直至对目标器件的编程配置和硬件实现。
验证了滤波器满足预期设计要求。
创新点在于便捷地设计模块或修改基本参数,完成其他DSP系统设计。
综上采用DSP Builder作FPGA设计,可以更快速、可靠、有效地实现系统功能。
体现了FPGA技术的便捷和发展。