毕业设计 基于FPGA的FIR数字滤波器设计

毕业设计 基于FPGA的FIR数字滤波器设计
毕业设计 基于FPGA的FIR数字滤波器设计

学士论文

基于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 Filters

Major:Electronic And Information Engineering Department(Information Engineering)

Abstract

As 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 each part 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 。In the simulation process,contrast our filter technology index whether you have all the standards,and filtering whether the result is ideal.

Keywords: digital filter,Matlab,programmable logic devices,Modular Algorithm

目录

1绪论 (1)

1.1本课题研究意义 (1)

1.2国内外研究现状分析 (1)

1.3研究思路 (1)

1.4相关概念说明 (1)

2 FIR数字滤波器的设计方法 (3)

2.1理论部分 (3)

2.1.1引言 (3)

2.1.2 FIR数字滤波器的基础 (3)

2.1.3数字滤波器的设计原理 (5)

2.1.4 FIR数字滤波器的理论计算方式与参数转换思想: (6)

2.1.5 Matlab直接FDAtool设计方式解析 (11)

2.1.6 FDAtool设计模板及设计结果图 (14)

2.2程序分析部分 (15)

2.2.1 FPGA 可编程逻辑元件介绍 (15)

2.2.2 QuartusⅡ及Verilog HDL介绍 (16)

2.2.3实际滤波器程序设计(11阶FIR数字滤波器) (17)

2.2.4.VerilogHDL的实现 (18)

3滤波器仿真滤波 (26)

3.1设置混合信号 (26)

3.2设置仿真参数 (29)

3.3 仿真总结 (31)

4 总结与展望 (31)

4.1 设计成果总结 (31)

4.2 设计心得 (32)

参考文献 (32)

致谢 (33)

1绪论

1.1本课题研究意义

在现代通信信号处理领域中,随着各种精密计算和快速计算的发展对信号处理的实时性、快速性的要求越来越高。以往的模拟滤波器无法克服电压漂移、温度漂移和噪声等问题,从而带来了许多误差和不稳定因素。而数字滤波器具有稳定性高、精度高、设计灵活、实现方便等突出优点。

FPGA元器件在高速并行处理和数据传输中有独特优势,FPGA正在前端信号处理中越来越多地代替ASIC和DSP。我们需要的就是这种设计周期短,功能密度高,重组时间短的元器件。

本文在FPGA元器件的基础上,实现现代FIR数字滤波器功能。并且研究多种快速的FIR数字滤波器的理论设计思想和程序设计方法。

1.2国内外研究现状分析

1985年XilinX公司生产出了第一块FPGA元器件,由于它有着集成度高、方便易用、开发和上市周期短的绝对优势,使得FPGA器件在数字设计和电子生产中得到迅速普及和应用,发展潜力十分巨大。现在FPGA已经发展到可以利用硬件乘加器、片内储存器、逻辑单元、流水处理技术等特有的硬件结构,高速完成FFT 、FIR 、复数乘加、卷积、三角函数以及矩阵运算等数字信号处理。这样可以完成信号处理的主要技术,如中频采样、参数估计、自适应滤波、脉冲压缩、自适应波束形成和旁瓣对消等。

1.3研究思路

通过对目前数字滤波器的几种实现方法的简单分析,本文认为基于FPGA的数字滤波器具有许多优点,本文考虑到信息技术的发展对于数字滤波器的要求越来越高,而目前FIR数字滤波器的性能还不完善,于是选择了基于FPGA的数字滤波器作为主要研究内容,通常滤波器在进行数据处理时用到了卷积运算,在设计中的解决这些乘法运算的思路是将它们转换成加减法,这是目前解决乘法运算的主流思想。设计初期在Matlab下对滤波器原理进行证明包括(零极点图、时域和频域分析图等),分析FIR数字滤波器的多种理论设计思想和窗函数选择方法,在设计后期对FIR数字滤波器的小数乘法问题进行单独论证。然后对分析出来的问题进行论证和解决,最后在QUARTUSⅡ中进行仿真验证。

1.4相关概念说明

数字滤波器(Digital filter)是由数字乘法器、加法器和延时单元组成的一种装置。其功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。可认为是一个离散时间系统按预定的算法,将输入离散时间信号转换为所要求的输出离散时间信号的特定功能装置FIR(Finite Impulse Response )由线性系统理论可知,在某种适度条件下,输入到线性系统的一个冲击完全可以表征系统。当我们处理有限的离散数据时,线形系统的响应(包括对冲击的响应)也是有限的。若线性系统仅是一个空间滤波器,则通过简单地观察它对冲击的响应,我们就可以完全确定该滤波器。通过这种方式确定的滤波器称为有限冲击响应(FIR)滤波器。

设计定位

理论部分程序分析部分

选题资料准备

滤波器基础研究滤波器设计方法研

软硬件介绍分析

程序设计

明确目标奠基

指导指导

基础

选择

规划

仿真

错误修正及优化总

设计成功

图1-1总体设计流程图

2 FIR数字滤波器的设计方法

2.1理论部分

2.1.1引言

数字滤波器的功能一般是用来变换时域或者频域中某些要求信号的属性,滤除信号中某一部分频率分量。经过数字滤波器的信号是让其频谱与数字滤波器的频率响应相乘从而得出新的结果。经过一个线性卷积过程,从时域上输入信号与滤波器的单位冲击响应作一个卷积和。下面是卷积定义式:

∑∑-

=

-

=

*

=

k k

k f k

n

x

k

n

f

n

x

n

f

n

x

n

y]

[

]

[

]

[

]

[

]

[

]

[

]

[(1)

LTI数字滤波器在一般情况下分为有限脉冲响应(Finite impulse response)和无限脉冲响应(Infinite impulse response),FIR数字滤波器的设计方法和IIR滤波器的设计方法有很大的差别。因为其设计方向是选择有限长度的h(n),使频率响应函数H(eωj)满足指标。数字滤波器正在用直接的电子计算机规范和算法进行分析的方式来逐渐代替传统的模拟滤波器的RLC元器件和放大电路。

2.1.2 FIR数字滤波器的基础

首先介绍FIR数字滤波器基本原理,在如下表格中对FIR和IIR数字滤波器进行了全面的比较:

表2-1两种滤波器特点比较分析

FIR数字滤波器IIR数字滤波器

设计方法在一般的情况下,FIR数字滤

波器没有设计公式。它的设计

需要借助计算机程序完成

可以利用AF的设计成果,可简

单、有效地完成设计

阶数高低

稳定性在稳定性方面(稳定),极点

全部在原点存在一定的稳定性问题,需要注

结构非递归系统递归系统

运算误差一般情况下不存在反馈,运算

的误差比较小存在反馈,由于运算中的特殊运算方法会产生极限环

通常情况下一般数字滤波器的N阶FIR数字滤波器基于输入信号x(n)的表达式为:

∑= =-

=

1

) (

)(

)

(

n

i

i

n

x

i

h

n

y

(2)

这个公式给我们了一个非常明了的直接型网络结构,该结构表现出N个乘法器,每次采样y(n)

的内容是n 次乘法和n-1次加法,然后做乘累加之和。如图2-1所示:

图2-1 FIR 滤波器直接型网络结构

从DSP 的介绍中,第一类线性相位对h(n)的约束条件:

ωτωω

ωj g n j N n j e H e n h e H ---===∑)()()(1

(3)

)sin )(cos ()sin )(cos (1

ωτωτωωωj H

n j n n h N n g

-=-∑-= (4)

由公式(3),(4)我们可以推出:

∑∑-=-==10

1

cos sin )(sin cos )(N n N n n n h n n h ωτωωτω (5)

移相并利用三角公式化简得到:

∑-==-1

0)](sin[)(N n n n h τω (6)

从数字信号处理学科中知道函数)(sin )(τω-n n h 关于求和区间的中心(N-1)/2奇对称,于是我们要求τ和h(n)满足如下条件:

??

?--=-=)1()()(n N h n h ωτωθ 其中对应的有???

??

-≤≤-=1

021N n N τ (7)

图2-2 线性相位FIR 滤波器结构

若h (n )呈现对称特性,即此具有线性相位的滤波器是FIR 数字滤波器。滤波器的基础网络结构可以相互进行转换。

在前面本文已经讨论过, FPGA 的实现中将对各种方法进行比较,找出最优设计方式。

从而达

到减少资源占有和提高系统作业速度的目的,更好的体现实时性的数字滤波器优势。

2.1.3数字滤波器的设计原理

在数字信号处理技术的研究中,一般是使用的三种设计方法:窗函数法,FDATool直接设计法,程序编译法。本文首先使用窗函数和Matlab软件共同进行设计。

随着软件技术的不断发展,Matlab软件能给设计者带来的数字信号处理工作已经非常的完善和多样了,设计者可以利用Matlab软件进行数字滤波器的设计和仿真,而且还可以用这款软件进行设计的优化。数字滤波器的一般设计步骤如下:

1.指标的确定

做任何工程或者设计,设计者都必须要有一个期望的指标用来限制设计范围。在很多的实际应用中,设计者常常都是使用数字滤波器做选频的工作。因此,指标的形式一半在频域中给出相位响应和幅度。相位响应的指标形式,一半是指系统在通频带中药有线性相位。幅度指标:绝对指标,它给出对幅度响应函数的要求,一般用于FIR滤波器的设计。相对指标,以分贝值的形式给出具体限制。

2.逼近目标

设计者做高频的时候大概都有一个模式,就是首先得到技术指标,然后利用我们的技术和工具让我们的产品去逼近这个指标。同理我们首先建立以个目标的数字滤波器模型。一般情况下都是采用理想的数字滤波器模型,然后去逼近我们想要的目标数字滤波器参数。

3.计算机仿真和性能优化分析

在工作中我们发现通过(1)、(2)之后本文会得到以差分、系统函数或者冲击响应这三种方式描述的滤波器。这个时候设计者可以利用计算进行仿真,在系统中分析技术指标和滤波结果是否是希望得到的结果。

图2-3各种理想数字滤波器的幅度频率响应

2.1.4 FIR 数字滤波器的理论计算方式与参数转换思想

在理论上掌握了FIR 数字滤波器的基本原理之后,本文需要对设计思想进行一个多方位的论证和尝试。首先设计者设计滤波器要有一个硬性的指标,这个指标可以是直接给出最基本的数据,也有多重表现形式。于是我例举两种特殊的指标形式然后加以解决设计。然后我们分别用2种方式来设计不同指标的滤波器。接下来我首先用程序的方式来实现滤波器: 1.逼近法转换与思想

使用remez 函数设计FIR 低通滤波器 设计滤波器,使逼近低通滤波特性|)(e H j d ω

|。

|

)(e

H j d

ω

|=??

?0

1

????

?≤≤≤≤π

ωππω16/54

/0 要求通带波纹

dB p

3≤α,阻带衰减dB s 60≥α,并用最小阶数实现。

绘出设计的FIR 数字滤波幅频特性曲线,检验设计指标。 这个指标我们可以以如下计算方法来得出详细指标: 从给出的低通滤波特性|

)(e H j d ω

|。我们可以看出设计参数f=[

,5/16],m=[1,0];

dev 的计算根据公式:Rp=-20log 10

()δδ

21

1/1+->0

于是有Rp=20

)]1(1/)1(1[log

10

dev dev -+,))2(log(20dev A s -=

所以dev(1),dev(2)可以被表示出来。 2.逼近法程序描述与思想

有了这几个参数我们现在就可以根据已经设定好的格式来调用函数remezord 和remez 函数了,于是可得如下程序。 clear;close all

fc=1/4;fs=5/16; %输入给定指标 Rp=3;As=60;Fs=2;

f=[fc ,fs];m=[1,0]; %计算remezord 函数所需参数f ,m ,dev dev=[(10^(Rp/20)-1)/(10^(Rp/20)+1),10^(-As/20)];

[N ,fo ,mo ,W]=remezord(f ,m ,dev ,Fs); %确定remez 函数所需参数 hn=remez(N ,fo ,mo ,W); %调用remez 函数进行设计 hw=fft(hn ,512); %求设计出的滤波器频率特性 w=[0:511] *2/512;

plot(w,20*log10(abs(hw)));grid; %画对数幅频特性图

axis([0,max(w)/2,-90,5]);

xlabel('w/pi');ylabel('Magnitude(dB)')

line([0,0.4],[-3,-3]); %画线检验设计结果

line([1/4,1/4],[-90,5]);line([5/16,5/16],[-90,5]);

程序结束。

3.仿真图像与结果

用以上的程序我们可以得到在Matlab中的许多参数和图像,从而进一步分析我们的设计。首先引入程序输出的幅频特性图:(如图2-4)

图2-4在Matlab中的程序

图2-5程序输出的幅频特性

图2-6 Impulse Response

图2-7 Magnitude and Phase Responses

图2-8 Phase Delay

图2-9 Pole,Zero plot

结论:从上面程序运行情况分析,观察程序输出的幅频特性图中横线为-3dB,两条竖线分别位于频率π/4和5π/16。显然,通带指标有富裕,零极点图反应出大部分零极点在圆内,过渡带宽度和阻带最小衰减刚好满足指标要求。

4.窗函数选择法与规划思想

表2-2窗函数选择指标

名称近似过渡带宽最小阻带衰减精确过渡带宽

矩形4π/M21dB 1.8π/M

巴特利特8π/M25dB 6.1π/M

汉宁8π/M44dB 6.2π/M

哈明8π/M51dB 6.6π/M

布莱克曼12π/M74dB 11π/M

取Kaiser窗时用MATLAB中的kaiserord函数来得到长度M

在设计指标中没有直接给出窗函数的,可以利用下面这个表格进行筛选,具体方法如下:

这个表格给出了近似过渡带宽、精确过渡带宽和最小阻带衰减,我们可以根据自己滤波器的参数来选择我们的窗函数,因为选择不同的窗函数设计出来的滤波器生成的过渡带宽度和阻带最小衰减是不同的。在这里我以一个例子来说明函数的选择方式: 用窗函数法设计FIR 带通滤波器。指标如下: 高端通带截止频率

πω2.0=ls

高端阻带截止频率 πω35.0=lp 低端阻带截止频率 πω65.0=up 低端通带截止频率

πω8.0=us

通带最大衰减 Rp=1dB 阻带最小衰减 Rs=60dB

在这样一个例子中,可以看到它明确的给出了Rs=60dB 来设置窗函数类型和阶次。表格中给出的blackman 窗其滤波器阻带最小衰减是74dB ,再利用给出的其他参数计算滤波器阶数。表中显示窗口长度M 由过渡带宽度B=0.8π-0.65π=0.15π决定,而Blackman 窗设计的滤波器过渡带宽度为12π/M ,则M=12/0.15=80。又因M=N+1,所以滤波器阶数N=79。

在了解了怎么选择窗函数和计算滤波器阶数之后,本论文将针对实际FIR 数字滤波器进行研究。已经给出了设计参数,下面开始利用MATLAB 程序来设计这个滤波器。 5.窗函数法程序描述与思想

程序和对应的解释:

%用窗函数法设计FIR 带通滤波器 clear;close all;

wls=0.2*pi;wlp=0.35*pi;whp=0.65*pi;

B=wlp-wls; %这里是在计算过渡带宽 N=ceil(12/0.15); %计算窗口长度

wc=[wlp/pi-6/N ,whp/pi+6/N]; %设置理想带通截止频率 hn=fir1(N-1,wc ,Blackman(N)); %设计滤波器参数 6.理论计算方法总结

仿真完成之后,掌握如何去利用已有的指标去设计一个滤波器,总的来说就是四项: 通过傅里叶逆变换获得理想滤波器的单位脉冲响应hd(n)。 分析给定参数,计算出滤波器的阶数,频率等等相关指标。

把已经有的参数用程序函数表达出来,利用已经有的各种内置函数架设起滤波器。 参看Matlab 的输出图形和参数是否满足要求。 2.1.5 Matlab 直接FDAtool 设计方式解析

FDATool(Filter Design & Analysis Tool)是MATLAB 信号处理工具箱里专用的滤波器设计分析工具,MATLAB6.0以上的版本还专门增加了滤波器设计工具箱(Filter Design Toolbox)。FDATool 可以设计几乎所有的基本的常规滤波器,包括FIR 和IIR 的各种设计方法。它操作简单,方便灵活。

FDATool界面总共分两大部分,一部分是Design Filter,在界面的下半部,用来设置滤波器的设计参数,另一部分则是特性区,在界面的上半部分,用来显示滤波器的各种特性。Design Filter 部分主要分为:

Filter Type(滤波器类型)选项,包括Lowpass(低通)、Highpass(高通)、Bandpass(带通)、Bandstop(带阻)和特殊的FIR滤波器。

Design Method(设计方法)选项,包括IIR滤波器的Butterworth(巴特沃思)法、Chebyshev Type I(切比雪夫I型)法、Chebyshev Type II(切比雪夫II型) 法、Elliptic(椭圆滤波器)法和FIR滤波器的Equiripple法、Least-Squares(最小乘方)法、Window(窗函数)法。

Filter Order(滤波器阶数)选项,定义滤波器的阶数,包括Specify Order(指定阶数)和Minimum Order(最小阶数)。在Specify Order中填入所要设计的滤波器的阶数(N阶滤波器,Specify Order=

N-1),如果选择Minimum Order则MATLAB根据所选择的滤波器类型自动使用最小阶数。

Frenquency Specifications选项,可以详细定义频带的各参数,包括采样频率Fs和频带的截止频率。它的具体选项由Filter Type选项和Design Method选项决定,例如Bandpass(带通)滤波器需要定义Fstop1(下阻带截止频率)、Fpass1(通带下限截止频率)、Fpass2(通带上限截止频率)、Fstop2(上阻带截止频率),而Lowpass(低通)滤波器只需要定义Fstop1、Fpass1。采用窗函数设计滤波器时,由于过渡带是由窗函数的类型和阶数所决定的,所以只需要定义通带截止频率,而不必定义阻带参数。

Magnitude Specifications选项,可以定义幅值衰减的情况。例如设计带通滤波器时,可以定义Wstop1(频率Fstop1处的幅值衰减)、Wpass(通带范围内的幅值衰减)、Wstop2(频率Fstop2处的幅值衰减)。当采用窗函数设计时,通带截止频率处的幅值衰减固定为6db,所以不必定义。

参数要求:采样频率fs=100Hz,通带下限截止频率fc1=10 Hz,通带上限截止频率fc2=20 Hz,过渡带宽6 Hz,通阻带波动0.01,采用凯塞窗设计。

针对一个含有5Hz、15Hz和30Hz的混和正弦波信号已知滤波器的阶数n=38,beta=3.4。本例中,首先在Filter Type中选择Bandpass;在Design Method选项中选择FIR Window,接着在Window 选项中选取Kaiser,Beta值为3.4;指定Filter Order项中的Specify order为38;采样频率Fs=100Hz,截止频率Fc1=10Hz,Fc2=20Hz。设置完以后点击窗口下方的Design Filter,在窗口上方就会看到所设计滤波器的幅频响应,通过菜单选项Analysis还可以看到滤波器的相频响应、组延迟、脉冲响应、阶跃响应、零极点配置等。设计完成后将结果保存为kaiser15.fda文件。我们可以根据FDAtool 工具得到我们的滤波器相关增益。

系数转换成二进制码:

若采用乘法器,用1位整数位,1位符号位,共22位定点二进制数进行运算,负数用补码表示,由此将减法运算变成累加求和运算。各系数可用matlab编程转成二进制补码:

/*

* Filter Coefficients (C Source) generated by the Filter Design and Analysis Tool

*

* Generated by MATLAB(R) 7.0 and the

*

* Generated on: 22-Mar-2011 20:09:12

*

*/

/*

* Discrete-Time FIR Filter (real)

* -------------------------------

* Filter Structure : Direct-Form FIR

* Filter Order : 38

* Stable : Yes

* Linear Phase : Yes (Type 1)

*/

/* General type conversion for MATLAB generated C-code */

#include "tmwtypes.h"

/*

* Expected path to tmwtypes.h

* D:\MATLAB7\extern\include\tmwtypes.h

*/

const int BL = 39;

const real64_T B[39] = {

-0.0008969942906957,0.001248746631882,0.007070735236406,0.009180571739749,-8.354434235897e-018,-0.01457672567709,-0.01798701306701,-0.005189936475222,0.006300913248271,-5.136773213647e-018,-0.009200436084654,0.01113207796169,0.05739543087552,0.07065284310647,-2.116878167777e-017,-0.1149210109554,-0.1575671556317,-0.05691148173912,0.1151784185022,0.2,0.1151784185022,-0.05691148173912,-0.1575671556317,-0.1149210109554,-2.116878167777e-017,0.07065284310647,0.05739543087552,0.01113207796169,-0.009200436084654,-5.136773213647e-018,0.006300913248271,-0.005189936475222,-0.01798701306701,-0.01457672567709,-8.354434235897e-018,0.009180571739749,0.007070735236406,0.001248746631882,-0.0008969942906957

};

这是一个非常典型的例子,可以清晰的看到利用Matlab提供的FDAtool设计滤波器的方便与快捷。比较以上几种类型的滤波器参数,在给定的参数要求下,采用椭圆滤波器可以获得最佳的幅频响应特性,具有阶数低,过渡带窄等优点。虽然椭圆滤波器在通带也会产生波动,但考虑到波动处在可接受的范围内,仍然符合设计要求。

但由直接型传输函数表达式来实现并不实用。因此如前所说,将其分解为多个二阶传输函数的级联形式。借助Matlab 信号处理工具箱中函tf2sos(Transfer function to second- order- section)将传递函数转换为二阶级联形式。

对于是数字信号,需要对先前分析计算中分解获得的二阶子系统的滤波器系数进行量化,即用一个固定的字长加以表示。量化过程中由于存在不同程度的量化误差,由此会导致滤波器的频率响应出现偏差,严重时会使滤波器的极点移到单位圆之外,使系统不稳定。为了获得最优的滤波器系数,量化的精度也相当重要。

2.1.6 FDAtool设计模板及设计结果图

这里把上面的滤波器设计参数的总体图给出,如图2-10

图2-10 FIR带通滤波器总体设计参数

2.2程序分析部分

根据上述FIR低通数字滤波器的原理与滤波特性,我们在上面的软件实践中已经掌握了设计数字滤波器的方法并且成功的使用Matlab/Simulink进行了设计和仿真。通过以上的过程我们可以导出一定性能的FIR滤波器频率响应与抽头系数,然后用Verilog HDL语言设计和QUARTUSⅡ仿真FIR低通数字滤波器,实现用软件描述硬件的动作及功能,应用软件来实现数字滤波器的功能和时序仿真。

2.2.1FPGA 可编程逻辑元件介绍

EDA是Electronic Design Automation的缩写,意为电子设计自动化,即利用计算机自动完成电子系统的设计。EDA技术是以计算机和微电子技术为先导,汇集了计算机图形学、拓扑、逻辑学、微电子工艺与结构学和计算数学等多种计算机应用学科最新成果的先进技术。

它与电子技术、微电子技术的发展密切相关,吸收了计算机领域的大多数最新研究成果,以高性能的计算机作为工作工具,在EDA软件平台土,根据硬件描述语言HDL完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布线、仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。

可编程逻辑器PLD(Programmable Logic Devices)是ASIC(Application Specific Integrated Circuits 的一个重要分支。ASIC按制造方法又可分为全定制(Full Custom)产品、半定制(semi-custom)产品和可编程逻辑器件(PLD)。前两种ASIC的设计和制造都离不开器件生产厂家,用户主动性较差。随着微电子技术的发展,设计师们更愿意自己设计专用集成电路芯片,并尽可能缩短设计周期,最好是在实验室里就能设计出合适的ASIC芯片,并且立即投入实际应用之中,在使用中也能比较方便的对设计进行修改。可编程逻辑器件就是为满足用户的这一需求应运而生的。

使用FPGA器件设计数字电路,不仅可以简化设计过程,而且可以降低整个系统的体积和成本,增加系统的可靠性。它们无需花费传统意义下制造集成电路所需大量时间和精力,避免了投资风险,成为电子器件行业中发展最快的一族。使用FPGA器件设计数字系统电路的主要优点如下:

1.设计灵活

使用FPGA器件,可不受标准系列器件在逻辑功能上的限制。而且修改逻辑可在系统设计和使用过程的任一阶段中进行,并且只须通过对所用的FPGA器件进行重新编程即可完成,给系统设计提供了很大的灵活性。

2.增大功能密集度

功能密集度是指在给定的空间能集成的逻辑功能数量。可编程逻辑芯片内的组件门数高,一片FPGA可代替几片、几十片乃至几百片中小规模的数字集成电路芯片。用FPGA器件实现数字系统时用的芯片数量少,从而减少芯片的使用数目,减少印刷线路板面积和印刷线路板数目,最终导致系统规模的全面缩减。

3.提高可靠性

减少芯片和印刷板数目,不仅能缩小系统规模,而且它还极大的提高了系统的可靠性。具有较高集成度的系统比用许多低集成度的标准组件设计的相同系统具有高得多的可靠性。使用FPGA器件减少了实现系统所需要的芯片数目,在印刷线路板上的引线以及焊点数量也随之减少,所以系统的可靠性得以提高。

4.缩短设计周期

基于FPGA器件的可编程性和灵活性,用它来设计一个系统所需时间比传统方法大为缩短。FPGA器件集成度高,使用时印刷线路板电路布局布线简单。同时,在样机设计成功后,由于开发工具先进,自动化程度高,对其进行逻辑修改也十分简便迅速。因此,使用FPGA器件可大大缩短系统的设计周期,加快产品投放市场的速度,提高产品的竞争能力。

5.工作速度快

FPGA/CPLD器件的工作速度快,一般可以达到几百兆赫兹,远远大于DPS器件。同时,使用FPGA器件后实现系统所需要的电路级数又少,因而整个系统的工作速度会得到提高。

6.增加系统的保密性能

很多FPGA器件都具有加密功能,在系统中广泛的使用FPGA器件可以有效防止产品被他人非法仿制。

7.降低成本

使用FPGA器件实现数字系统设计时,如果仅从器件本身的价格考虑,有时还看不出来它的优势,但是影响系统成本的因素是多方面的,综合考虑,使用FPGA的成本优越性是很明显的。首先,使用FPGA器件修改设计方便,设计周期缩短,使系统的研制开发费用降低;其次,FPGA器件可使印刷线路板面积和需要的插件减少,从而使系统的制造费用降低;再次,使用FPGA器件能使系统的可靠性提高,维修工作量减少,进而使系统的维修服务费用降低。总之,使用FPGA器件进行系统设计能节约成本。

2.2.2 QuartusⅡ及Verilog HDL介绍

Quartus II 属于Altera公司的综合性PLD开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。

Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。

Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。

此外,Quartus II 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP 应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。

FIR数字滤波器设计函数

FIR 数字滤波器设计函数 1. fir1 功能:基于窗函数的FIR 数字滤波器设计——标准频率响应。 格式:b=fir1(n,Wn) b=fir1(n,Wn,'ftype') b=fir1(n,Wn,Window) b=fir1(n,Wn,'ftype',Window) 说明:fir1函数以经典方法实现加窗线性相位FIR 滤波器设计,它可设计出标准的低通、带通、高通和带阻滤波器。 b=fir1(n,Wn)可得到n 阶低通FIR 滤波器,滤波器系数包含在b 中,这可表示成: n z n b z b b z b --++???++=)1()2()1()(1 这是一个截止频率为Wn 的Hamming(汉明)加窗线性相位滤波器,0≤Wn ≤1,Wn=1相应于0.5fs 。 当Wn=[W1 W2]时,fir1函数可得到带通滤波器,其通带为W1<ω< W2。 b=fir1(n,Wn,'ftype')可设计高通和带阻滤波器,由ftype 决定: ·当ftype=high 时,设计高通FIR 滤波器; ·当ftype=stop 时,设计带阻FIR 滤波器。 在设计高通和带阻滤波器时,fir1函数总是使用阶为偶数的结构,因此当输入的阶次为奇数时,fir1函数会自动加1。这是因为对奇数阶的滤波器,其在Nyquist 频率处的频率响应为零,因此不适合于构成高通和带阻滤波器。 b=fir1(n,Wn,Window)则利用列矢量Window 中指定的窗函数进行滤波器设计,Window 长度为n+1。如果不指定Window 参数,则fir1函数采用Hamming 窗。 Blackman 布莱克曼窗 Boxcar 矩形窗 Hamming 海明窗 Hann 汉宁窗 Kaiser 凯瑟窗 Triang 三角窗 b=fir1(n,Wn,'ftype',Window)可利用ftype 和Window 参数,设计各种加窗的滤波器。 由fir1函数设计的FIR 滤波器的群延迟为n/2。 例如: n=32;wn=1/4;window=boxcar(n+1) b=fir1(n,wn,window)

FIR数字滤波器设计与使用

实验报告 课程名称:数字信号处理指导老师:刘英成绩:_________________实验名称: FIR数字滤波器设计与使用同组学生姓名:__________ 一、实验目的和要求 设计和应用FIR低通滤波器。掌握FIR数字滤波器的窗函数设计法,了解设计参数(窗型、窗长)的影响。 二、实验内容和步骤 编写MATLAB程序,完成以下工作。 2-1 设计两个FIR低通滤波器,截止频率 C =0.5。 (1)用矩形窗,窗长N=41。得出第一个滤波器的单位抽样响应序列h 1(n)。记下h 1 (n) 的各个抽样值,显示h 1 (n)的图形(用stem(.))。求出该滤波器的频率响应(的N 个抽样)H 1(k),显示|H 1 (k)|的图形(用plot(.))。 (2)用汉明窗,窗长N=41。得出第二个滤波器的单位抽样响应序列h 2(n)。记下h 2 (n) 的各个抽样值,显示h 2(n)的图形。求出滤波器的频率响应H 2 (k),显示|H 2 (k)|的 图形。 (3)由图形,比较h 1(n)与h 2 (n)的差异,|H 1 (k)|与|H 2 (k)|的差异。 2-2 产生长度为200点、均值为零的随机信号序列x(n)(用rand(1,200)0.5)。显示x(n)。 求出并显示其幅度谱|X(k)|,观察特征。 2-3 滤波 (1)将x(n)作为输入,经过第一个滤波器后的输出序列记为y 1(n),其幅度谱记为|Y 1 (k)|。 显示|X(k)|与|Y 1 (k)|,讨论滤波前后信号的频谱特征。 (2)将x(n)作为输入,经过第二个滤波器后的输出序列记为y 2(n),其幅度谱记为|Y 2 (k)|。 比较|Y 1(k)|与|Y 2 (k)|的图形,讨论不同的窗函数设计出的滤波器的滤波效果。 2-4 设计第三个FIR低通滤波器,截止频率 C =0.5。用矩形窗,窗长N=127。用它对x(n)进行滤波。显示输出信号y

FPGA实现FIR抽取滤波器的设计

FPGA实现FIR抽取滤波器的设计FIR(fini te impulse response)滤波器是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位冲激响应是有限的,没有输入到输出的反馈,系统稳定。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。在工程实践中,往往要求对信号处理要有实时性和灵活性,而已有的一些软件和硬件实现方式则难以同时达到这两方面的要求。随着可编程逻辑器件的发展,使用FPG A来实现FIR滤波器,既具有实时性,又兼顾了一定的灵活性,越来越多的电子工程师采用FPGA器件来实现FIR滤波器。 1 FIR滤波器工作原理 在进入FIR滤波器前,首先要将信号通过A/D器件进行模数转换,使之成为8bit的数字信号,一般可用速度较高的逐次逼进式A/D转换器,不论采用乘累加方法还是分布式算法设计FIR滤波器,滤波器输出的数据都是一串序列,要使它能直观地反应出来,还需经过数模转换,因此由FPGA构成的FIR滤波器的输出须外接D/A模块。FPGA有着规整的内部逻辑阵列和丰富的连线资源,特别适合于数字信号处理任务,相对于串行运算为主导的通用DSP芯片来说,其并行性和可扩展性更好,利用FPGA乘累加的快速算法,可以设计出高速的FIR数字滤波器。

2 16阶滤波器结构 在滤波过程中实现抽取,对于抽取率为N的抽取滤波器而言,当进来N个数据时滤波器完成1次滤波运算,输出1次滤波结果。抽取滤波器的结果和先滤波后抽取的结果是一致的,只是对于同样的数据,进行滤波运算的次数大大减少。在数字系统中采用拙取滤波器的最大优点是增加了每次滤波的可处理时间,从而达到实现高速输入数据的目的。采样数据与滤波器系数在控制电路的作用下,分别对应相乘并与前一个乘积累加,经过多次(有多少阶就要多少次)反复的乘累加最后输出滤波结果,将相同系数归类,16阶滤波器公式: 乘法器的数量减少一半,但加法器的数量增多了,但相对乘法运算来说,加法运算所占用的资源少的多,运算的速度也快得多。 3 滤波器系数的求取 使用Matlab集成的滤波器设计工具FDAtool,可以完成多种滤波器的数值设计、分析与评估,设计16阶低通滤波器参数如下:

FIR数字滤波器设计与软件实现(精)讲解学习

实验二:FIR 数字滤波器设计与软件实现 一、实验指导 1.实验目的 (1掌握用窗函数法设计 FIR 数字滤波器的原理和方法。 (2掌握用等波纹最佳逼近法设计 FIR 数字滤波器的原理和方法。 (3掌握 FIR 滤波器的快速卷积实现原理。 (4学会调用 MA TLAB 函数设计与实现 FIR 滤波器。 2. 实验内容及步骤 (1认真复习第七章中用窗函数法和等波纹最佳逼近法设计 FIR 数字滤波器的原理; (2调用信号产生函数 xtg 产生具有加性噪声的信号 xt ,并自动显示 xt 及其频谱,如图 1所示;

图 1 具有加性噪声的信号 x(t及其频谱如图 (3请设计低通滤波器,从高频噪声中提取 xt 中的单频调幅信号,要求信号幅频失真小于 0.1dB ,将噪声频谱衰减 60dB 。先观察 xt 的频谱,确定滤波器指标参数。 (4根据滤波器指标选择合适的窗函数,计算窗函数的长度 N ,调用 MATLAB 函数 fir1设计一个 FIR 低通滤波器。并编写程序,调用 MATLAB 快速卷积函数 fftfilt 实现对 xt 的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。 (5 重复 (3 , 滤波器指标不变, 但改用等波纹最佳逼近法, 调用MA TLAB 函数 remezord 和 remez 设计 FIR 数字滤波器。并比较两种设计方法设计的滤波器阶数。 提示:○ 1MA TLAB 函数 fir1的功能及其调用格式请查阅教材; ○ 2采样频率 Fs=1000Hz,采样周期 T=1/Fs;

○ 3根据图 1(b和实验要求,可选择滤波器指标参数:通带截止频率 fp=120Hz,阻带截 至频率 fs=150Hz, 换算成数字频率, 通带截止频率 p 20.24 p f ωπ =T=π, 通带最大衰为 0.1dB , 阻带截至频率 s 20.3 s f ωπ =T=π,阻带最小衰为 60dB 。 3、实验程序框图如图 2所示,供读者参考。 图 2 实验程序框图 4.信号产生函数 xtg 程序清单(见教材 二、滤波器参数及实验程序清单 1、滤波器参数选取 根据实验指导的提示③选择滤波器指标参数: 通带截止频率 fp=120Hz,阻带截至频率 fs=150Hz。代入采样频率 Fs=1000Hz,换算成 数字频率,通带截止频率 p 20.24 p f

FIR数字滤波器设计及MATLAB使用要点

数字信号处理课程设计 《数字信号处理》 课程设计报告 FIR数字滤波器设计及MATLAB实现 专业:通信工程 班级:通信1101班 组次:第9组 姓名及学号: 姓名及学号:

目录 一、设计目的 (3) 二、设计任务 (3) 三、设计原理 (3) 3.1窗函数法 (3) 3.2频率采样法 (4) 3.3最优化设计 (5) 3.3.1等波纹切比雪夫逼近准则 (5) 3.3.2仿真函数 (6) 四、设计过程 (7) 五、收获与体会 (13) 参考文献 (13)

FIR数字滤波器设计及MATLAB实现 一、设计目的 FIR滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基 本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性, 同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR 滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。滤波器设 计是根据给定滤波器的频率特性,求得满足该特性的传输函数。 二、设计任务 FIR滤波器设计的任务是选择有限长度的() H e满足一定 h n,使传输函数()jw 的幅度特性和线性相位要求。由于FIR滤波器很容易实现严格的线性相位,所以FIR 数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。 设计过程一般包括以下三个基本问题: (1)根据实际要求确定数字滤波器性能指标; (2)用一个因果稳定的系统函数去逼近这个理想性能指标; (3)用一个有限精度的运算去实现这个传输函数。 三、设计原理 FIR滤波器设计的任务是选择有限长度的() H e满足一定 h n,使传输函数()jw 的幅度特性和线性相位要求。由于FIR滤波器很容易实现严格的线性相位,所以FIR数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。 设计过程一般包括以下三个基本问题: (1)根据实际要求确定数字滤波器性能指标; (2)用一个因果稳定的系统函数去逼近这个理想性能指标; (3)用一个有限精度的运算去实现这个传输函数。 3.1窗函数法 设计FIR数字滤波器的最简单的方法是窗函数法,通常也称之为傅立叶级数法。FIR数字滤波器的设计首先给出要求的理想滤波器的频率响应()jw H e,设计 d

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

目录 引言 (4) 第一章FPGA的设计流程 (5) 1.1 FPGA概述 (5) 1.2 FPGA设计流程 (9) 1.3硬件描述语言HDL(Hardware Description Language) (10) 1.4 FPGA开发工具Quartus Ⅱ软件设计流程 (13) 第二章有限冲激响应(FIR)滤波器的原理及设计 (16) 2.1数字信号处理基础原理 (16) 2.2 FIR滤波器背影知识 (19) 2.3 FIR数字滤波器原理 (21) 2.4 利用窗函数法设计FIR滤波器 (26) 第三章FIR 数字滤波器的FPGA实现 (31) 3.1串行FIR滤波器原理 (31) 3.2分布式算法基础 (32) 3.3直接型FIR滤波器的原理结构图 (34) 3.4具有转置结构的FIR滤波器 (36) 第四章结论与总结 (40) 谢辞 (42) 参考文献 (43)

摘要:本论文课题是《基于FPGA的FIR滤波器设计与实现》。数字滤波器是语音与图象处理、模式识别、雷达信号处理、频谱分析等应用中的一种基本的处理部件,它能满足滤波器对幅度和线性相位的严格要求,避免模拟滤波器所无法克服的电压漂移、温度漂移和噪声等问题。有限冲激响应(FIR)滤波器能在设计任意幅频特性的同时保证严格的线性相位特性。因此在许多应用领域都显示了强大的生命力,具有重要应用意义。本文介绍了用VHDL实现线性相位FIR(有限长单位冲激响应)滤波器。提出了一种基于FPGA的FIR滤波器设计方案。介绍了基于FPGA的FIR滤波器的数字信号处理的算法设计,采用直接型和转置型的基本结构来设计,其运算效率明显提高,并结合先进的EDA软件进行高效的设计和实现,并给出了用Quartus Ⅱ运行的仿真结果。该设计对FPGA硬件资源的利用高效合理,用VHDL编程,在PFGA中实现了高采样率的FIR滤波器。关键字:FIR滤波器;FPGA;VHDL;MATLAB;Quartus Ⅱ

FIR数字滤波器设计与实现

FIR 数字滤波器设计与实现 一.摘要:数字滤波器是一种具有频率选择性的离散线性系统,在信号数字处理中有着广泛的应 用。其中FIR 滤波器是一种常用的滤波器,它在保证幅度特性满足技术要求的同时,很容易做到严格的线性相位特性,在语音分析、图像处理、雷达监测等对信号相位要求高的领域有着广泛的应用,能实现IIR 滤波器不能实现的许多功能。 二.关键词:FIR 窗函数系统函数MATLAB 三.内容提要: 数字滤波器的功能就是把输入序列通过一定的运算变换成输出序列,因此数字滤波器的结构系 统中就必须包括一定数量和性能的运算器件和运算单元,而运算器件和运算单元的配置必须由数字滤波器的结构特点和性能特点来决定,因此在进行FIR 数字滤波器的设计之前,有必要介绍和总结FIR 数字滤波器的基本结构和相关特性(包括频响曲线(幅度和相位),单位冲激响应等),在介绍完其基本结构和相关特性后,就进行FIR 数字滤波器的设计和实现。 (一)FIR 滤波器的基本结构 在讨论任何一种滤波器时,都要着重分析其系统函数,FIR 滤波器的系统函数为: n N n z n h z H ∑-==1 0)()(。从该系统函数可看出,FIR 滤波器有以下特点: 1)系统的单位冲激响应h(n)在有限个n 值处不为零; 2)系统函数H(z)在|z|>0处收敛,极点全部在z=0处(稳定系统); 3)结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包 含有反馈的递归部分。 1.FIR 滤波器实现的基本结构有: 1) 横截型(卷积型、直接型) a.一般FIR 滤波器的横截型(直接型、卷积型)结构: 若给定差分方程为: 。则可以直接由差分方程得出FIR 滤波器结构如 下图所示: 这就是FIR 滤波器的横截型结构,又称直接型或卷积型结构。 b .线性相位FIR 滤波器的横截型结构

FIR带通滤波器的FPGA实现

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 滤波的总体要求及实现

FIR数字滤波器设计与软件实现

实验二:FIR数字滤波器设计与软件实现 一、实验指导 1.实验目的 (1)掌握用窗函数法设计FIR数字滤波器的原理和方法。 (2)掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。(3)掌握FIR滤波器的快速卷积实现原理。 (4)学会调用MATLAB函数设计与实现FIR滤波器。 2.实验内容及步骤 (1)认真复习第七章中用窗函数法和等波纹最佳逼近法设计FIR数字滤波器的原理; (2)调用信号产生函数xtg产生具有加性噪声的信号xt,并自动显示xt及其频谱,如图1所示; 图1 具有加性噪声的信号x(t)及其频谱如图 (3)请设计低通滤波器,从高频噪声中提取xt中的单频调幅信号,要求信号幅频失真小于0.1dB,将噪声频谱衰减60dB。先观察xt的频谱,确定滤波器指标参数。

(4)根据滤波器指标选择合适的窗函数,计算窗函数的长度N,调用MATLAB函数fir1设计一个FIR低通滤波器。并编写程序,调用MATLAB快速卷积函数fftfilt实现对xt的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。(4)重复(3),滤波器指标不变,但改用等波纹最佳逼近法,调用MATLAB函数remezord和remez设计FIR数字滤波器。并比较两种设计方法设计的滤波器阶数。 提示:○1MATLAB函数fir1的功能及其调用格式请查阅教材; ○2采样频率Fs=1000Hz,采样周期T=1/Fs; ○3根据图1(b)和实验要求,可选择滤波器指标参数:通带截止频率fp=120Hz,阻带截至频率fs=150Hz,换算成数字频率,通带截止 频率 p 20.24 p f ωπ =T=π,通带最大衰为0.1dB,阻带截至频率 s 20.3 s f ωπ =T=π,阻带最小衰为60dB。 ○4实验程序框图如图2所示,供读者参考。

FIR数字滤波器课程设计报告

吉林建筑大学 电气与电子信息工程学院 数字信号处理课程设计报告 设计题目:FIR数字滤波器的设计 专业班级: 学生姓名: 学号: 指导教师: 设计时间:

目录 一、设计目的 (3) 二、设计内容 (3) 三、设计原理 (3) 3.1 数字低通滤波器的设计原理 (3) 3.1.1 数字滤波器的定义和分类 (3) 3.1.2 数字滤波器的优点 (3) 3.1.3 FIR滤波器基本原理 (4) 3.2变换方法的原理 (7) 四、设计步骤 (8) 五、数字低通滤波器MATLAB编程及幅频特性曲线 (9) 5.1 MATLAB语言编程 (9) 5.2 幅频特性曲线 (10) 六、总结 (11) 七、参考文献 (13)

一、设计目的 课程设计是理论学习的延伸,是掌握所学知识的一种重要手段,对于贯彻理论联系实际、提高学习质量、塑造自身能力等于有特殊作用。本次课程设计一方面通过MATLAB 仿真设计内容,使我们加深对理论知识的理解,同时增强其逻辑思维能力,另一方面对课堂所学理论知识作一个总结和补充 二、设计内容 (1)设计一线性相位FIR 数字低通滤波器,截止频率 ,过渡带宽度 , 阻带衰减dB A s 30>。 (2)设计一线性相位FIR 数字低通滤波器,截止频率 ,过渡带宽度 ,阻带衰减dB A s 50>。 三、设计原理 3.1数字低通滤波器的设计原理 3.1.1 数字滤波器的定义和分类 数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散时间线性非时变系统,其输入是一组数字量,其输出是经过变换的另一组数字量。因此,数字滤波器本身既可以是用数字硬件装配成的一台完成给定运算的专用的数字计算机,也可以将所需要的运算编成程序,让通用计算机来执行。 从数字滤波器的单位冲击响应来看,可以分为两大类:有限冲击响应(FIR)数字滤波器和无限冲击响应(IIR)数字滤波器。滤波器按功能上分可以分为低通滤波器(LPF)、高通滤波器(HPF)、带通滤波器(BPF)、带阻滤波器(BSF) [4]。 3.1.2 数字滤波器的优点 相对于模拟滤波器,数字滤波器没有漂移,能够处理低频信号,频率响应特性可做成非常接近于理想的特性,且精度可以达到很高,容易集成等,这些优势决定了数字滤波器的应用将会越来越广泛。同时DSP 处理器(Digital Signal Processor)的出现和FPGA(FieldProgrammable Gate Array)的迅速发展也促进了数字滤波器的发展,并为数字滤波器的硬件实现提供了更多的选择。 数字滤波器具有以下显著优点: 精度高:模拟电路中元件精度很难达到10-3,以上,而数字系统17位字长就可以达到10-5精度。因此在一些精度要求很高的滤波系统中,就必须采用数字滤0.2c ωπ=0.4ωπ?<0.2c ωπ=0.4ωπ?<

基于FPGA的FIR滤波器设计

长春理工大学毕业设计 摘要 在现代电子系统中,FIR数字滤波器以其良好的线性特性被广泛使用, 随着可编程逻辑器件和EDA技术的发展,使用FPGA来实现FIR滤波器,既具有实时性,又兼顾了一定的灵活性,越来越多的电子工程师采用FPGA器件来实现FIR 滤波器。 本论文对基于FPGA的FIR数字滤波器实现进行了研究,以FIR数字滤波器的基本理论为依据,并且采用查找表以及线性FIR波器的对称性特点使得硬件规模极大的减小。为了验证仿真结果的正确性,文中应用了MATLAB和VHDL联合仿真方法对设计的电路进行仿真测试,结果达到设计指标。并用MATLAB对仿真结果进行了分析,证明了所设计的FIR数字滤波器功能正确。 关键词: 有限脉冲响应现场可编程门阵列查找表窗函数仿真 ABSTRACT In the modern electrical system, the FIR digital filter is used for many practical applications for its good linear phase character, Along with the development of PLD device and EDA technology, more and more electrical engineers use FPGA to implement FlR filter, as it not only meet the real-time requirement, but also has some flexibility. In this paper, a method to implement the FIR filter using FPGA is proposed. According to the basic theory of FIR filters, the thesis reduces it with the use of multiple coefficient memory banks and the symmetry characteristic of linear FIR filter. In order to make the verification more available, the complex simulation with Matlab and VHDL is used to testify the design whether fulfills the requirement. And also the result of the simulation is analyzed with the use of MATLAB, and it proved that the function of the design is correct. KEYWORDS: FIR FPGA Windows Function Simulation

线性相位FIR数字滤波器设计

一、设计目的 1.掌握窗函数法设计FIR滤波器的原理和方法,观察用几种常用窗函数设计的 FIR数字滤波器技术指标; 2.掌握FIR滤波器的线性相位特性; 3.了解各种窗函数对滤波特性的影响。 二、设计原理 如果所希望的滤波器的理想频率响应函数为H d(e j J,则其对应的单位脉冲 1 响应为h d(n)=——f H (e恋)e j^dB,用窗函数W N(n)将h d(n)截断,并进行加权处 2兀7 理,得到实际滤波器的单位脉冲响应h(n)=h d(n)w N(n),其频率响应函数为 N _! H (e j ^ h(n)e」n。如果要求线性相位特性,贝U h(n)还必须满足 nM h(n)= h(N-1- n)。可根据具体情况选择h(n)的长度及对称性。 可以调用MATLAB工具箱函数firl实现本实验所要求的线性相位FIR-DF 的设计,调用一维快速傅立叶变换函数fft来计算滤波器的频率响应函数。 fir1是用窗函数法设计线性相位FIRDF hn=fir1(N, wc, ‘ ftype ' , window) fir1实现线性相位FIR滤波器的标准窗函数法设计。 hn=fir1(N,wc)可得到6 dB截止频率为wc的N阶(单位脉冲响应h(n)长度为 N+1)FIR低通滤波器,默认(缺省参数windows)选用hammiing窗。其单位脉冲响应 h(n)满足线性相位条件:h(n)=h(N-1-n) 其中wc为对n归一化的数字频率,OW wc< 1。 当wc= [wc1, wc2]时,得到的是带通滤波器。 hn=fir1(N,wc, ' ftype ') 当ftype=high时,设计高通FIR 当ftype=stop时,设计带阻FIR滤波器。 应当注意,在设计高通和带阻滤波器时,阶数N只能取偶数(h(n)长度N+1 为奇数)。不过,当用户将N设置为奇数时,fir1会自动对N加1。 hn=fir1(N,wc,window)可以指定窗函数向量window。如果缺省window参数,则 fir1默认为hamming窗。可用的其他窗函数有Boxcar, Hanning, Bartlett, Blackman, Kaiser和Chebwin 窗。例如:

基于matlab的FIR数字滤波器设计(带通,窗函数法)

数字信号处理 课程设计报告 设计名称:基于matlab的FIR数字滤波器设计 彪

一、课程设计的目的 1、通过课程设计把自己在大学中所学的知识应用到实践当中。 2、深入了解利用Matlab设计FIR数字滤波器的基本方法。 3、在课程设计的过程中掌握程序编译及软件设计的基本方法。 4、提高自己对于新知识的学习能力及进行实际操作的能力。 5、锻炼自己通过网络及各种资料解决实际问题的能力。 二、主要设计内容 利用窗函数法设计FIR滤波器,绘制出滤波器的特性图。利用所设计的滤波器对多个频带叠加的正弦信号进行处理,对比滤波前后的信号时域和频域图,验证滤波器的效果。 三、设计原理 FIR 滤波器具有严格的相位特性,对于信号处理和数据传输是很重要的。 目前 FIR滤波器的设计方法主要有三种:窗函数法、频率取样法和切比雪夫等波纹逼近的最优化设计方法。常用的是窗函数法和切比雪夫等波纹逼近的最优化设计方法。本实验中的窗函数法比较简单,可应用现成的窗函数公式,在技术指标要求高的时候是比较灵活方便的。 如果 FIR 滤波器的 h(n)为实数, 而且满足以下任意条件,滤波器就具有准确的线性相位: 第一种:偶对称,h(n)=h(N-1-n),φ (ω)=-(N-1)ω/2 第二种:奇对称,h(n)=-h(N-1-n), φ(ω)=-(N-1)ω/2+pi/2 对称中心在n=(N-1)/2处 四、设计步骤 1.设计滤波器 2.所设计的滤波器对多个频带叠加的正弦信号进行处理 3.比较滤波前后信号的波形及频谱 五、用窗函数设FIR 滤波器的基本方法 基本思路:从时域出发设计 h(n)逼近理想 hd(n)。设理想滤波器的单位响应在时域表达为hd(n),则Hd(n) 一般是无限长的,且是非因果的,不能

FIR数字滤波器设计的综述

FIR数字滤波器设计方法的综述 摘要:在数字信号处理中,数字滤波器是一种被广泛使用的信号处理部件,可改变信号中所含频率分量的相对比例或滤除某些频率分量,使其达到所需的效果,具有举足轻重的作用。在数字信号处理系统中,FIR(有限冲激响应)数字滤波器是一类结构简单的最基本的原件,具有严格的相频特性,能保证信号在传输过程中不会有明显的失真,是相当稳定的系统,其确保线性相位的功能进一步使它得到了广泛的应用。本综述分析了FIR数字滤波器的特征和设计的基本原理,得到了满足系统要求的数字滤波器的设计方法。 关键词:数字信号处理,FIR数字滤波器,设计方法

1引言 1.1背景 现在几乎在所有的工程技术领域中都会涉及到信号的处理问题,其信号表现形式有电、磁、机械以及热、光、声等。数字滤波技术可以在放大信号的同时去除噪声和干扰,而在模拟信号号和噪声同时被放大,数字信号还可以不带误差地被存储和恢复、发送和接收、处理和操纵。许多复杂的系统可以用高精度、大信噪比和可重构的数字技术来实现。目前,数字信号处理已经发展成为一项成熟的技术,并且在许多应用领域逐步代替了传统的模拟信号处理系统,如通讯、故障检测、语音、图像、自动化仪器、航空航天、生物医学工程、雷达等。 数字信号处理中一个非常重要且应用普遍的技术就是数字滤波。所谓数字滤波,是指其输入、输出均为数字信号,通过一定的运算关系改变输入信号所含的频率成分的相对比例或滤除某些频率成分,达到提取和加强信号中的有用成份,消弱干扰成份的目的。数字滤波作为数字信号处理的重要组成部分有着十分广泛的应用前景,可作为应用系统对信号的前置处

理。数字滤波器无论是在理论研究上还是在如通讯、雷达、图象处理、数字音频等实际应用上都有着很好的技术前景和巨大的实用价值。 1.2现状与前沿 在近代电信设备和各类控制系统中,滤波器应用极为广泛。在所有的电子部件中,使用最多,技术最为复杂的即为滤波器。滤波器的优劣直接决定产品的优劣,所以,对滤波器的研究和生产历来为各国所重视。 目前,国外有许多院校和科研机构在研究基于FPGA的DSP应用,比较突出的有Denmark 大学的研究小组正在从事FPGA实现数字滤波器的研究。而我国在DSP技术起步较早,产品的研究开发成绩斐然,基本上与国外同步发展。 随着电子工业的发展,对滤波器的性能要求越来越高。我国电子产品要想实现大规模集成,滤波器集成化仍然是个重要课题。总之,滤波器的发展始终是顺应电子系统的发展趋势的。如何进一步实现滤波器的小型化、集成化、高效化将是今后很长一段时间不变的研究和发展主题。 2 FIR数字滤波器的原理 2.1 FIR数字滤波器的结构特点 如果滤波器的输人和输出都是离散时间信号,则该滤波器的冲激响应也必然是离散的,这种滤波器称之为数字滤波器。该滤波器通过对时域中离散的采样数据作差分运算实现滤波。与IIR滤波器相比,FIR(有限长单位冲激响应)的实现是非递归的,总是稳定的。FIR数 字滤波器的特征是冲激响应只能延续一定时间并且很容易实现严格的线性相位,使信号经过处理后不产生相位失真、舍入误差小、稳定等优点,能够设计具有优良特性的多带通滤波器、微分器和希尔伯特变换器。FIR数字滤波器有以下几个特点: (1)系统的单位冲激响应h(n)在有限个值处不为零; (2)系统函数H(z)在处收敛,在处只有零点,有限z平面只有零点,而全部极点都在z=0处; (3)结构上主要是非递归结构。

FIR滤波器的FPGA实现方法

FIR滤波器的FPGA实现方法 关键字::FIR FFT FPGA 关键字 在数字信号处理系统中,有限脉冲响应(finite impulse response,FIR)数字滤波器是一个非常重要的基本单元。近年来,由于FPGA具有高速度、高集成度和高可靠性的特点而得到快速发展。随着现代数字通信系统对于高精度、高处理速度的需求,越来越多的研究转向采用FPGA来实现FIR滤波器。而对于FIR滤波器要充分考虑其资源与运行速度的合理优化,各种不同的FIR滤波结构各具优缺点,在了解各种结构优缺点后才能更好地选择合适结构来实现FIR滤波。 1FIR数字滤波器 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滤波器处理速度慢,只适用于滤波阶数较低且处理速度要求低的系统。 2.2并行结构 将串行结构的FIR滤波器展开就可以得到并行结构的FIR滤波器,并行FIR滤波器结构又称作直接型FIR滤波器结构,这种结构是直接根据图1的滤波器结构,用多个乘法器和加法器并行实现。通常考虑到其滤波器系数的对称性,先对输入值进行加法运算,再进行乘法运算,最后累加输出,以此来减少乘法器的个数,其结构如图3所示。 并行结构的FIR滤波器在1个周期内可以完成1次滤波,运行速度快,虽然利用滤波系数对称性,但仍要占用大量的乘法器和加法器,特别对于滤波阶数高的滤波器,其资源占用较多,如对于256阶的滤波器,其需要128个乘法器来实现。为提高滤波器速度,常引入流水线结构,即在每次加法或者乘法运算后加入1个寄存器存储数据,使得滤波器可以运行在更高的频率上。 2.3转置型结构 根据转置定理,如果将网络中所有的支路方向倒转,并将输入x(n)和输出y(n)相互交换,则其系统函数H(z)不变。通过转置定理,将并行结构的FIR滤波器变换就可以得到转置型FIR滤波器,其结构如图4所示。

FIR数字滤波器的设计与实现

FIR 滤波器的设计 一.摘 要:数字滤波器是一种具有频率选择性的离散线性系统,在信号数字处理中有 着广泛的应用。其中FIR 滤波器是一种常用的滤波器,它在保证幅度特性满足技术要求的同时,很容易做到严格的线性相位特性,在语音分析、图像处理、雷达监测等对信号相位要求高的领域有着广泛的应用,能实现IIR 滤波器不能实现的许多功能。 二.关键词:FIR 窗函数 系统函数 MATLAB 三.引言: 数字滤波器的功能就是把输入序列通过一定的运算变换成输出序列,因此数字滤波器的结构系统中就必须包括一定数量和性能的运算器件和运算单元,而运算器件和运算单元的配置必须由数字滤波器的结构特点和性能特点来决定,因此在进行FIR 数字滤波器的设计之前,有必要介绍和总结FIR 数字滤波器的基本结构和相关特性(包括频响曲线(幅度和相位),单位冲激响应等),在介绍完其基本结构和相关特性后,就进行FIR 数字滤波器的设计和实现。 (1).FIR 滤波器的基本结构 在讨论任何一种滤波器时,都要着重分析其系统函数,FIR 滤波器的系统函数为: n N n z n h z H ∑-== 1 )()( 。从该系统函数可看出,FIR 滤波器有以下特点: 1)系统的单位冲激响应h(n)在有限个n 值处不为零; 2)系统函数H(z)在|z|>0处收敛,极点全部在z=0处(稳定系统); 3)结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。 1.FIR 滤波器实现的基本结构有: 1) 横截型(卷积型、直接型) a.一般FIR 滤波器的横截型(直接型、卷积型)结构: 若给定差分方程为: 。 则可以直接由差分方程得出FIR 滤波器 结构如下图所示: 这就是FIR 滤波器的横截型结构,又称直接型或卷积型结构。 b .线性相位FIR 滤波器的横截型结构 若h(n)呈现对称特性,即此FIR 滤波器具有线性相位,则可以简化成横截型结构,下面分情况讨论: ①N 为奇数时线性相位FIR 滤波器实现结构如图所示:

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低通滤波器幅频特性图。 上述求得的系数是浮点型的,而在FPGA设计中使用的数据是定点型的,所以在设计滤波器之前要将系数转化为定点型,即系数的量化。在本文中采用数字信号处理(DSP)技术中的Q 值法对系数进行量化。为了兼顾精度和所占用的资源,本文的系数用12位二进制来量化,得到的整数系数结果如下: 2 并行分布式算法原理及FPGA设计 32阶FIR滤波器的差分方程表达式为: 式中:x(n)为输入;y(n)为输出;h(n)为滤波器系数。设x(n)用二进制可表示为: 其中,最高位为符号位。则式(7)可写为: 式(10)为并行分布式算法,由上可以看出并行分布式算法是将滤波器表达式重新排列,分别加权求和。与传统算法最大的不同之处是在FPGA设计过程中以查找表代替乘法器,即根据输入数据的不同,将对应的滤波器系数预先求和保存在ROM中,也就是将每一项的乘法求和通过并行结构查表寻值完成,提高运行速度。具体FPGA实现时,首先将12位的输人数据并行输入到12列32位移位寄存器分别寄存,然后以寄存器中的值为地址,对应于查找表的结果,按照式(10),每列进行相应二次幂加权,最后各列累加,在第32个数据完全输入之后得到正确的滤波器输出。由于输入数据的延迟,在此之前滤波器输出会延迟或者产生不正确的结果,可以在实现过程中加入控制信号进行输出控制。由于查找表的规模是随着地址的增加呈指数增加的,可以将32位的查找表划分为四个8位的查找表,从而降低对ROM的需求。在本设计中可采用多级流水线技术,也就是将在明显制约系统速度的长路径上插入几级寄存器,虽然流水线会影响器件资源的使用量,但它降低了寄存器间的传播时延,允许

实验4 基于MATLAB的FIR数字滤波器设计

实验4 基于MATLAB 的FIR 数字滤波器设计 实验目的:加深对数字滤波器的常用指标和设计过程的理解。 实验原理:低通滤波器的常用指标: P P P for H Ω≤Ω+≤Ω≤-,1)(1δδ πδ≤Ω≤Ω≤ΩS S for H ,)( 通带边缘频率P Ω,阻带边缘频率S Ω ,通带起伏 P δ, 通带峰值起伏] )[1(log 2010dB p p δα--=, 阻带起伏s δ,最小阻带衰减])[(log 2010dB s S δα-=。 数字滤波器有IIR 和FIR 两种类型,它们的特点和设计方法不同。 在MATLAB 中,可以用b=fir1(N,Wn,’ftype’,taper) 等函数辅助设计FIR 数字滤波器。N 代表滤波器阶数;Wn 代表滤波器的截止频率(归一化频率),当设计带通和带阻滤波器时,Wn 为双元素相量;ftype 代表滤波器类型,如’high ’高通,’stop ’带阻等;taper 为窗函数类型,默认为海明窗,窗系数需要实现用窗函数blackman, hamming,hanning chebwin, kaiser 产生。 S P P S Passband Stopband Transition band Fig 1 Typical magnitude specification for a digital LPF

例1 用凯塞窗设计一FIR低通滤波器,通带边界频率π3.0 ,阻带边界频 Ω = p ,阻带衰减不小于 率π5.0 Ω = s 50dB。

解首先由过渡带宽和阻带衰减来决定凯塞窗的N和 π2.0 = Ω - Ω = ?Ω p s , ,

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

目录 引言 (5) 第一章 FPGA的设计流程 (6) 1.1 FPGA概述 (6) 1.2 FPGA设计流程 (8) 1.3硬件描述语言HDL(Hardware Description Language) (10) 1.4 FPGA开发工具Quartus Ⅱ软件设计流程 (11) 第二章有限冲激响应(FIR)滤波器的原理及设计 (14) 2.1数字信号处理基础原理 (14) 2.2 FIR滤波器背影知识 (17) 2.3 FIR数字滤波器原理 (18) 2.4 利用窗函数法设计FIR滤波器 (22) 第三章 FIR 数字滤波器的FPGA实现 (27) 3.1串行FIR滤波器原理 (27) 3.2分布式算法基础 (27) 3.3直接型FIR滤波器的原理结构图 (30) 3.4具有转置结构的FIR滤波器 (31) 第四章结论与总结 (36) 辞 (37) 参考文献 (38)

摘要:本论文课题是《基于FPGA的FIR滤波器设计与实现》。数字滤波器是语音与图象处理、模式识别、雷达信号处理、频谱分析等应用中的一种基本的处理部件,它能满足滤波器对幅度和线性相位的严格要求,避免模拟滤波器所无法克服的电压漂移、温度漂移和噪声等问题。有限冲激响应(FIR)滤波器能在设计任意幅频特性的同时保证严格的线性相位特性。因此在许多应用领域都显示了强大的生命力,具有重要应用意义。本文介绍了用VHDL 实现线性相位FIR(有限长单位冲激响应)滤波器。提出了一种基于FPGA 的FIR滤波器设计方案。介绍了基于FPGA的FIR滤波器的数字信号处理的算法设计,采用直接型和转置型的基本结构来设计,其运算效率明显提高,并结合先进的EDA软件进行高效的设计和实现,并给出了用Quartus Ⅱ运行的仿真结果。该设计对FPGA硬件资源的利用高效合理,用VHDL编程,在PFGA中实现了高采样率的FIR滤波器。 关键字:FIR滤波器;FPGA;VHDL;MATLAB;Quartus Ⅱ

相关文档
最新文档