FIR数字滤波器的FPGA实现

合集下载

FIR数字高通滤波器的FPGA实现

FIR数字高通滤波器的FPGA实现

摘要对于现代社会领域,数字信号处理(digital signal processing ,DSP)技术正在以很迅速的步伐往前发展,大家知道,数字信号处理中灵活性和实时性是最基本的要求,但在以往的模拟滤波器技术中,总是有着各种问题,让滤波效果达不到较为理想的要求。

而数字滤波器随着数字信号解决水平的发展而渐渐的被进步采用,并且因为它在设计上的灵活性等优势在滤波上被许多地方当做首选方式,已经渐渐地替代了以往的过滤器。

其中,有限长单位冲击响应(Finite Impulse Response,FIR)滤波器,因为它进行设计幅频时,具有良好的线性相位,以及稳定的系统等特性在数字信处理的项目里扮演了举足轻重角色。

这次使用现场可编程门阵列(Field-Programmable Gate Array,FPGA)和Matlab/DSP Builder来来设计一个FIR数字高通滤波器,使用窗函数法以及等波纹最佳优化法两种途径来对我们需要的滤波器进行设计。

首先确定好滤波器的相关参数和制作方案,利用DSP Builder制作工具设计一个取样频率48KHZ,截止频率10.8KHZ,输入输出数据宽度都是8位的17阶有限长单位冲击响应滤波器。

在MATLAB/Simulink中建立模型文件,调用工具库中的滤波器模块,连接成设计原理框图,设置好各参数并输入到对应的设计图位置后在Simulink中进行仿真,然后将模型文件通过Signal Compiler转化为VHDL语言和其他文件,在Quartus II中进行编译,引脚锁定下载到FPGA中,利用嵌入式逻辑分析仪SignalTap II对结果波形进行验证。

关键词:数字信号处理;现场可编程门阵列;有限长单位冲击响应;DSP BuilderAbstractIn the technical field of modern society, the digital signal processing technology has been developed rapidly. As we all know, the basic requirements of the digital signal processing are flexibility and topicality . However, the former filter technology always had many problems which made the filtering effect hard to achieve the ideal aims. With the development of digital signal processing technology, the digital filter has made great progress and been utilized. What’s more, it, as the preferred way has been used in many places because of its flexibility .So it has gradually displaced the previous filter. Among them, FIR digital filter plays a vital role because of it’s well linear phrase、stable systems and many other advantages in designing the frequency amplitudes.In this paper, I have designed a FIR digital high- pass filter by using FPGA and MATLAB/DSP Builder. With the window function method and equality ripple approach method, I first have analyzed and determined the relative parameters of the filter and design proposals. Then I made the 17-order FIR digital high-pass filter’s sampling frequency in 48KHZ、cutoff frequency in 10.8KHZ and data width in 8-bit by using DSP Bulider. By establishing model files in Matlab/Simulink, I used the filter module in the library tool and linked them into the principle chart .Later I set up and input those parameters into site to analogue simulation. I translated the Signal Compiler into the VHDL and other files and compiled in Quartus II and downloaded to FPGA. At last, I used the Signal Tap II to validate the result.KEY WORD: DSP; FPGA;FIR; DSP Builder第一章引言 (1)1.1背景意义 (1)1.2主要工作和组织结构 (3)第二章FIR数字滤波器 (4)2.1FIR数字滤波器的概念 (4)2.1.1FIR数字滤波器的结构 (5)2.1.2线性相位FIR数字滤波器的结构 (6)2.1.3FIR滤波器的特点 (7)2.2 FIR数字高通滤波器的设计方法 (9)2.2.1 窗函数法 (10)2.2.2等波纹最佳逼近法 (11)第三章FIR高通滤波器的FPGA实现 (13)3.1设计目标 (13)3.2 DSP Builder的设计流程 (13)3.3窗函数法 (15)3.4 FIR滤波器模型的建立 (17)3.4.1FIR高通滤波器原理图 (17)3.4.2 验证和测试方案 (19)3.5等波纹最佳逼近法 (20)3.6两种方法比较 (24)结束语 (25)参考文献 (26)第一章引言1.1背景意义对于当今信息领域,数字信号处理技术(Digital signal processing technology)已经变的相当迅速与成熟。

基于FPGA的FIR滤波器设计与实现

基于FPGA的FIR滤波器设计与实现

目录引言................................... 错误!未定义书签。

第一章 FPGA的设计流程 ................... 错误!未定义书签。

1.1 FPGA概述 ................................... 错误!未定义书签。

1.2 FPGA设计流程................................. 错误!未定义书签。

1.3硬件描述语言HDL(Hardware Description Language) 错误!未定义书签。

1.4 FPGA开发工具Quartus Ⅱ软件设计流程 ......... 错误!未定义书签。

第二章有限冲激响应(FIR)滤波器的原理及设计.... 错误!未定义书签。

2.1数字信号处理基础原理.......................... 错误!未定义书签。

2.2 FIR滤波器背影知识........................... 错误!未定义书签。

2.3 FIR数字滤波器原理............................ 错误!未定义书签。

2.4 利用窗函数法设计FIR滤波器................... 错误!未定义书签。

第三章 FIR 数字滤波器的FPGA实现........... 错误!未定义书签。

3.1串行FIR滤波器原理............................ 错误!未定义书签。

3.2分布式算法基础................................ 错误!未定义书签。

3.3直接型FIR滤波器的原理结构图.................. 错误!未定义书签。

3.4具有转置结构的FIR滤波器...................... 错误!未定义书签。

第四章结论与总结......................... 错误!未定义书签。

FIR数字滤波器分布式算法的原理及FPGA实现

FIR数字滤波器分布式算法的原理及FPGA实现

FIR数字滤波器分布式算法的原理及FPGA实现摘要:在利用FPGA实现数字信号处理方面,分布式算法发挥着关键作用,与传统的乘积-积结构相比,具有并行处理的高效性特点。

详细研究了基于FPGA、采用分布式算法实现FIR数字滤波器的原理和方法,并通过Xilinx ISE在Modelsim下进行了仿真。

关键词:分布式算法 DALUT FPGA FIR数字滤波器正在迅速地代替传统的由R、L、C元件和运算放大器组成的模块滤波器并且日益成为DSP的一种主要处理环节。

FPGA 也在逐渐取代ASIC和PDSP,用作前端数字信号处理的运算(如:FIR滤波、CORDIC算法或FFT)。

乘累加运算是实现大多数DSP 算法的重要途径,而分布式算法则能够大大提高乘累加运算的效能。

1 传统的乘累加结构FIR数字滤波器基本理论FIR滤波器被称为有限长脉冲响应滤波器,与IIR数字滤波器相对应,它的单位脉冲响应h(n)只有有限个数据点。

输入信号经过线性时不变系系统输出的过程是一个输入信号与单位脉冲响应进行线性卷积的过程,即:式中,x(n)是输入信号,y(n)是卷积输出,h(n)是系统的单位脉冲响应。

可以看出,每次采样y(n)需要进行L次乘法和L-1次加法操作实现乘累加之和,其中L是滤波器单位脉冲响应h(n)的长度。

可以发现,当L很大时,每计算一个点,则需要很长的延迟时间。

2 乘累加运算的位宽分配DSP算法最主要的就是进行乘累加运算。

假设采样信号的位宽用N来表示,则N位与N位的乘累结果需要2N位的寄存器来保存;如果两个操作数都是有符号数,则乘积只有2N-1个有效位,因为产生了两个符号位。

为了使累加器的结果不产生溢出,需要对累加器进行冗余设计,也就是说要在累加器2N的位宽上多设计出K位,累加器的长度M 计算方式如下(L为滤波器的长度):对于无符号数:M=2N+K=2N+log2 L对于有符号数:M=2N=K=2N+log2 L-13 乘累加运算的分布式算法原理分析得益于Xilinx FPGA查找表结构的潜能,分布式算法在滤波器设计方面显示出了很高的效率,自20世纪90年代初以来越来越受到人们的重要。

毕业设计(论文)fir数字滤波器的fpga实现

毕业设计(论文)fir数字滤波器的fpga实现

毕业设计(论文)题目: FIR滤波器的FPGA实现专业:班级:姓名:学号:指导教师:日期: 2011-5-28目录第1章绪论 (1)1.1背景和选题依据 (1)1.2国内外研究现状和发展动态 (2)1.3论文研究的目的和主要内容 (2)第2章 FIR的原理及技术 (3)2.1FIR滤波器的特点 (3)2.2FIR滤波器的基础 (3)滤波器的基本结构 4滤波器的设计 5第3章EDA技术和可编程逻辑器件 (6)3.1电子设计自动化EDA技术 (6)编程逻辑器件简介 (8)进行开发的优点 (8)设计的开发流程93.3硬件描述语言VHDL及数字系统设计方法 (10)语言VHDL简介 (10)语言VHDL设计数字系统 (10)第4章基于FPGA的FIR滤波器硬件实现 (11)4.1器件介绍和系统开发环境 (11)Ⅱ系列结构和特点 (11)开发工具简介 (14)4.2并行FIR数字滤波器简介 (15)并行结构的改进 (15)块的划分 (16)4.3串行FIR数字滤波器的硬件实现 (17)设计思想与实现 (17)块具体功能的设计实现 (17)滤波器串行方式实现的系统分析 (23)滤波器的扩展应用 (24)结 (24)第5章总结与展望 (24)参考文献 (25)英文翻译 (26)FIR数字滤波器的FPGA实现【摘要】:随着科技的发展,电子电路的设计正逐渐摆脱传统的设计模式,而采用FPGA来设计电子电路正成为设计的趋势。

这是因为采用FPGA设计电子电路不仅开发时间短,资金投入相对少,且可将电路板级产品集成为芯片级产品。

纵观可编程逻辑器件的发展史,FPGA在结构原理、集成规模、下载方式、逻辑设计手段等方面的每一次进步都为现代电子设计技术的革命与发展提供了不可或缺的强大动力。

在数字处理中,滤波占有重要的地位。

数字滤波在语音和图像处理、HDTV、模式识别、谱分析等应用中经常用到。

有一限长冲激响应(FIR)滤波器,由于FIR系统只有一零点、系统稳定,便于实现FFT算法、运算速度快、线性相位的特性和设计更为灵活等突出优点而在工程实际中获得广泛应用。

FIR带通滤波器的FPGA实现

FIR带通滤波器的FPGA实现
29
图4 ModelSim 仿真图 ( 模拟显示格式)
嵌入式技术
石兴华等 : FIR 带通滤波器的 FP GA 实现 验证了该滤波器达到预期设计要求 。
6 结 语
图 4 定性表述了 6 个信号波形 。clock 为时钟周 期 ,第二个信号是全局复位 。重点观察第三 、 六个信号 , 分别是输入信号 ( 加了数/ 模转换的) 的模拟显示和经滤 波后输出信号的模拟显示 。这和 Simulink 中仿真结果 是一致的 。第四个信号是滤波后 ( 加数/ 模转换 ) 的信 号 ,第五个是最后一个 4 阶滤波子系统的输出 。同样可 设置 Model Sim 对应的数字显示 ,每个时钟周期对应的 数值即为每个时钟周期对正弦信号的一个采样点计算 一次的值 。
h ( 15) 由滤波器设计工具 FDA Tool s 生成 ,系数与滤波
需要对生成的 V HDL 代码进行功能仿真即 R TL 级仿 真 。如图 4 的波形 。
器关联 ,建立出完整的滤波系统模型 [ 2 ] 。
2 Simul ink 的模型仿真
在 Simulink 环境下设计仿真时间等参数 , 运行仿 真得到滤波输出的幅频相应图和时域图如图 2 , 图 3 所示 。 图 2 中纵横坐标分别代表了幅值和频率值显示 ,
FIR 数字滤波器的设计方法主要有窗函数法和等波纹
图2 滤波器的幅频曲线图
一致逼近法等 ,比较最佳效果选定 Equiripple 等波纹法 实验 。输 入 信 号 采 用 DSPBuilder 库 中 的 增 加/ 减 少 ( Increment Decrement ) 模块和 L U T 模块 , 分别构成 一个线性递增的地址发生器和正弦查找表模块 。这样 组建 一 组 正 弦 信 号 , 考 虑 组 建 通 带 内 频 率 f 1 =

FIR滤波器的FPGA实现方法

FIR滤波器的FPGA实现方法

FIR滤波器的FPGA实现方法在数字信号处理系统中,有限脉冲响应(finite impulse response,FIR)数字滤波器是一个非常重要的基本单元。

近年来,由于FPGA 具有高速度、高集成度和高可靠性的特点而得到快速发展。

随着现代数字通信系统对于高精度、高处理速度的需求,越来越多的研究转向采用FPGA 来实现FIR 滤波器。

而对于FIR 滤波器要充分考虑其资源与运行速度的合理优化,各种不同的FIR 滤波结构各具优缺点,在了解各种结构优缺点后才能更好地选择合适结构来实现FIR滤波。

1 FIR 数字滤波器FIR 数字滤波器由有限个采样值组成,设计中在满足幅值特性时,还能保证精确、严格的相位特性,因此在信号处理等领域得到广泛的应用。

对于FIR 滤波器,其输出y(n)表示为如下形式:式中:N 为滤波器的阶数(或抽头数);x(i)表示第i 时刻的输入样本;h(i)为FIR 滤波器的第i级抽头系数。

由于FIR 滤波器的冲击响应为一个有限序列,其系统函数可表示为:FIR 滤波器的基本结构如图1 所示。

FIR 滤波器只在原点处存在极点,所以这使得FIR 滤波器具有全局稳定性。

同时FIR 滤波器满足线性相位条件,其冲击响应序列为实数且满足奇对称或偶对称条件,即:2 实现方法运用FPGA 来实现FIR 数字滤波器的结构多种多样,但是主要有以下几类:串行结构、并行结构、转置型结构、基于FFT 算法结构、分布式结构。

其他类型的FIR 滤波器结构都可以由以上几种结构衍生而来。

2.1 串行结构由表达式(1)可知,FIR 滤波器实质是做一个乘累加运算,其滤波器的阶数决定了一次乘累加的次数,其串行结构如图2 所示。

串行结构的FIR 滤波器结构简单,硬件资源占用少,只需要复用1 个乘法器和1 个加法器,所以成本较低。

但是,这种结构的FIR 滤波器要经过多个时。

FIR滤波器的FPGA设计与实现

FIR滤波器的FPGA设计与实现

FIR滤波器的FPGA设计与实现摘要滤波器,就是对电路网络中某一特定频率的频点或这个除了这个频点以外的频率进行有效滤除,从而得到一个特定频率的电信号,当然也可以用以消除某一个特定频率后的电信号的这样一种器件。

而所谓的FIR滤波器,其中FIR为Finite Impulse Response 的缩写,即指有限脉冲响应滤波器(以下简称为FIR滤波器)。

FIR滤波器由于本身可以设计成任意的幅频特性的滤波器,且同时能够保证精确、严格的相位线性,这就保证了它能够拥有一个稳定的系统。

因此,FIR滤波器已经成为数字系统与数字信号处理中,以及在通信系统等领域最重要的一种滤波器。

关键词:滤波器、有限脉冲响应、可编程门列阵。

SummaryFilter, the frequency of the circuit is a network of a specific frequency or frequency other than the frequency effectively filtered out to obtain a specific frequency of the power signal or a power signal to eliminate the specific frequency after . The so-called FIR filter, wherein the FIR Finite Impulse Response Abbreviation - finite impulse response filter (hereinafter simply referred to as an FIR filter). FIR filter can be designed arbitrarily because of theiramplitude-frequency characteristics of the filter, and simultaneously to ensure accurate and strict linear phase, which ensures that it has a stable system. Therefore, FIR filter has become a digital system with digital signal processing, as well as in the field of communication systems, etc. The most important kind of filter.Key words:Filter, Finite Impulse Response,Field-Programmable Gate Array引言线性时不变系统(Linear Time-Invariant System, L.T.I)是信号与系统处理以及信号系统处理中中最常见的系统。

32阶FIR滤波器的FPGA实现

32阶FIR滤波器的FPGA实现

32阶FIR滤波器的FPGA实现随着软件无线电的发展。

对于滤波器的处理速度要求越来越高。

传统的FIR滤波器一般采用通用DSP处理器,但是DSP处理器采用的是串行运算,而FPGA是现场可编程阵列,可以实现专用集成电路,另外还可以采用纯并行结构及考虑流水线结构,因此在处理速度上可以明显高于DSP处理器。

本文采用并行分布式算法在FPGA上设计并实现了高速处理的32阶FIR低通滤波器,在此过程中利用Matlab的数值计算与分析功能来提高设计效率。

1 FlR低通滤波器的窗函数实现理想的滤波器频率响应中傅里叶反变换ha(n)一定是无限长的序列,而且是非因果的,而实际要设计的滤波器h(n)是有限长的,因此要用有限长来逼近无限长的,其方法就是用一个有限长度的窗口函数序列ω(n)来截取,即:常见的窗函数有矩形窗、巴特利特窗、汉宁窗、哈明窗、布莱克曼窗、凯泽窗。

其中,凯泽窗提供了可变的过渡带宽。

本文采用凯泽窗对FIR滤波器进行设计,其窗函数表达式为:I0[?]为第一类变形零阶贝赛尔函数,形状参数β为依赖于滤波器阶数M的参数,用来调整主瓣宽度与旁瓣衰减,选择M可产生各种过渡带宽和接近最优的阻带衰减。

给定通带截止频率ωp,阻带起始频率ωs,阻带衰减As,凯泽窗设计中有经典公式可供使用,如下:过渡带宽:滤波器阶数:假设低通数字滤波器设计指标如下:采用上面介绍的凯泽窗,利用Matlab编程计算得到32阶FIR低通滤波器参数如下:32阶FIR低通滤波器幅频特性图如图1所示。

上述求得的系数是浮点型的,而在FPGA设计中使用的数据是定点型的,所以在设计滤波器之前要将系数转化为定点型,即系数的量化。

在本文中采用数字信号处理(DSP)技术中的Q值法对系数进行量化。

为了兼顾精度和所占用的资源,本文的系数用12位二进制来量化,得到的整数系数结果如下:2 并行分布式算法原理及FPGA设计32阶FIR滤波器的差分方程表达式为:设x(n)用二进制可表示为:其中,最高位为符号位。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

a_temp5[1:0]=2′b00;
……
//定义所用的寄存器
a_temp6[8:1]=and81(a, b[1]);
陈晓勇, 等: FIR 数字滤波器的 FPGA 实现
·93·
a_temp6[0]=0; a_temp7=and81(a, b[0]); end endmodule
8 阶线性相位结构型 FIR 滤波器仿真波形
技大学出版社, 2002. [3] ( 美) Samir Palnitkar. Verilog HDL 数字设计与综合[M]. 夏
宇闻, 胡燕祥, 刁岚松, 译. 2 版.北京: 电子工业出版社, 2004. [4] 王 诚, 吴继华. Altera FPGA/CPLD 设计[M]. 北京: 人民 邮电出版社, 2005. [5] 王 旭 东 , 刘 渝 . FIR 的 FPGA 实 现 及 其 Quartus II 与 MATLAB 仿真[J]. 电子工程师, 2004, 30( 5) : 49- 51.
关键词: FIR 数字滤波器; FPGA; Quartus II; 线性相位
中图分类号: TN713+.7
文献标识码: A
Implementation of a FIR Filter with FPGA
CHEN Xiao- yong, CHEN Jian- ping, LU Dan- qian (School of Computer Science, Nantong University, Nantong 226019, China) Abstr act: This paper introduced how to design a FIR digital filter by using an add- tree function and the linear- phase architecture with FPGA. The implementation was simulated through the Verilog HDL in Quartus II. Compared with the traditional way of using shift- adder function and direct FIR model, this way is better. Especially when the orders of the filter increase, the advantage will be more obvious.
陈晓勇, 陈建平, 陆旦前
( 南通大学 计算机科学与技术学院, 江苏 南通 226019)
摘 要 : 介 绍 了 采 用 加 法 器 树 和 线 性 相 位 结 构 在 FPFA 上 实 现 FIR 数 字 滤 波 器 的 方 法 , 并 通 过 Verilog HDL 用 Quartus II 进行了仿真. 相对于采用传统的移位相加乘法器和直接型结构的 FIR 滤波器设计, 这种实现方式在性能 上有明显的优势, 使执行效率得到了较大提高. 尤其在滤波器的阶数较大的情况下, 优势会更明显.
assign out=c1+c2;
function[7:0] and81; //该函数实现 8x1 位乘法器
input[7:0] operand;
图 1 8 位移位相加乘法器仿真波形图
input sel; and81=(sel)?(operand):8′b00000000;
本 例 中 的 乘 法 器 件 使 用 了 加 法 器 树 乘 法 器 endfunction
数位数减 1, 加法器精度为 2 倍操作数位数, 需要
a_temp2[4:0]=5′b00000;
的与门数等于操作数的平方. 因此 8 位乘法器需要
a_temp3[11:4]=and81(a, b[4]);
7 个 16 位加法器和 64 个与门. 可以看出, 这种方法
a_temp3[3:0]=4′b0000;
所使用的器件数目较之前有所增加, 但非常适用于
a_temp4[10:3]=and81(a, b[3]);
对速度要求较高的场合.
a_temp4[2:0]=3′b000;
附加法器树乘法器模块实现 Verilog HDL 代码:
a_temp5[9:2]=and81(a, b[2]);
module add_tree(out, a, b, clk);
时, 乘积需延时 160 ns 才能输出 , 速 度 比 较 慢. 因 assign out3=a_temp4+a_temp5;
此, 在高速应用系统中, 一般不采用该方法.
assign out4=a_temp6+a_temp7;
assign c1=out1+out2;
assign c2=out3+out4;
图 3 8 位加法器树乘法器仿真波形图
பைடு நூலகம்
图 3 给出了 8 位加法器树乘法器仿真波形. 可
8 阶直接型 FIR 滤波器波形
以看到, 同样的 8 位乘法, 使用加法器树乘法器, 1 图 4 8 阶直接型与线性相位结构型 FIR 滤波器仿真波形比较
个 8 位乘法在一个时钟周期就可完成运算, 因此延
在 8 阶下两种结构滤波器的差距还不是很明
器和有限冲激响应( FIR) 滤波器两种. 硬件实现 FIR 直 接 实 现 将 占 用 大 量 的 逻 辑 单 元 , 这 种 直 接 实 现
滤 波 器 , 对 于 处 理 速 度 有 很 高 的 要 求 . 本 文 基 于 FIR 滤波器的方法在速度和节省资源上都不是最有
FPGA 实现 FIR 滤 波 器 , 通 过 对 算 法 及 滤 波 器 结 构 效的[1].
时比一般的移位相加乘法器要小得多.
显, 修改程序实现一个 20 阶的滤波器, 再次比较这
2.2 采用线性相位结构
两种不同结构的滤波器的仿真结果( 见图 5) .
线性相位特性也是 FIR 滤波器的突出优点. 常
表 1 8 阶直接型与线性相位结构型 FIR 滤波器资源使用比较
用的线性相位 FIR 滤波器, 其单位冲激响应均为实
a_temp[6:0]=7′b0000000;
器实现, 这样在一个时钟周期内就可以完成之前需
a_temp1[13:6]=and81(a, b[6]);
要 8 个时钟周期才完成的移位并相加的操作, 延时
a_temp1[5:0]=6′b000000;
大大缩短了. 加法器树使用的加法器数目等于操作
a_temp2[12:5]=and81(a, b[5]);
( add_tree) , 在图 2 中左侧为 8 个 8 位×1 位乘法器, always @(posedge clk)
每个乘法器可以用 8 个与门实现, 共需要 8×8 个与
begin
门. 这样可以保证在一个时钟周期内完成所有的移
a_temp[14:7]=and81(a, b[7]);
位运算. 最终的移位后的相加通过一个并行的加法
第6卷 第2期 2007 年 6 月
南通大学学报( 自然科学版) Journal of Nantong University ( Natural Science)
文章编号: 1673- 2340( 2007) 02- 0091- 04
Vol.6 No.2 Jun. 2007
FIR 数字滤波器的 FPGA 实现
2007 年
实现硬件乘法运算的最基本的方式是移位相加 乘法器[3]. 其乘法原理是: 乘法 通 过 逐 项 移 位 相 加 原 理来实现, 从被乘数的最低位开始, 若为 1, 则乘数 左移后与上一次的和相加; 若为 0, 左移后以全零相 加, 直至被乘数的最高位[4].
移位相加通过将卷积运算转换为加减法运算, 例如 y(n)=x(1)h(1)+……+x(n)h(n), 将 x(n)由低位起逐 位与 h(n)相乘, 结果则移位相加[5], 其特点是硬件资 源耗用较少, 8 位的乘法器只需要一个 16 位移位寄 存器和一个 16 位加法器即可实现. 但在每个时钟周 期内只能完成一次移位并相加的操作, 也就是说一 个 8 位乘法器需要 8 个时钟周期才能完成.
采 用 4 bit 输 入 , 11 bit 输 出 , 乘 法 器 采 用 加 法 器
树方 式实 现. 利 用 Quartus II 进 行 仿 真 , 可 以 看 到
对称型和直接型两种实现方式的结果是一致的 ( 见图 4) .
将设计项目 综合 到 Stratix 系列 的 EP1S10F484C5 中, 对比两种方式的器件资源使用情况. 由表 1 可 以看出, 对称结构的资源使用相对较少, 这正是由 于线性相位滤波器减少了乘法器数目的结果. 同时 进行时序分析可看出对称结构的时钟频率可达到 165.81 MHz, 而普通直接型结构则只有 145.07 MHz.
a×128 b7
a×64 b6
a×32 b5
a×16 b4
a×8 b3
a×4 b2
a×2 b1
a b0
y=a×b
图 2 加法器树乘法器示意图
图 1 给出了 8 位移 位 相 加 乘 法 器 Quartus II 的 assign out1=a_temp+a_temp1;
仿真波形, 由仿真结果可以看到, 时钟周期为 20 ns assign out2=a_temp2+a_temp3;
进行优化, 使执行效率得到了较大提高.
2 改进方法
1 基本的 FIR 滤波器的实现算法
2.1 优化乘法器结构
FIR 滤波器( 有限冲激响应滤波器) 的直接型输
乘法器的速度影响着整个系统的速度, 如果可
N- 1
! 出 y( n) 为: y( n) = h( i) x( n- i) . i=0
以实现快速乘法器的设计, 则可以大大提高整个系 统的速度[2].
相关文档
最新文档