f.i.r.滤波器设计报告

合集下载

FIR滤波器设计实验报告

FIR滤波器设计实验报告

FIR滤波器设计实验报告实验报告:FIR滤波器设计一、实验目的:本实验旨在通过设计FIR滤波器,加深对数字信号处理中滤波器原理的理解,掌握FIR滤波器的设计方法和调试技巧。

二、实验原理:在窗函数法中,常用的窗函数有矩形窗、三角窗、汉明窗和黑曼窗等。

根据实际需求选择适当的窗口函数,并通过将窗口函数应用到理想低通滤波器的冲激响应中,得到FIR滤波器的冲激响应。

三、实验步骤:1.确定滤波器的阶数和截止频率。

2.选择适当的窗口函数,如汉明窗。

3.计算出理想低通滤波器的冲激响应。

4.将选定的窗口函数应用到理想低通滤波器的冲激响应中。

5.得到FIR滤波器的冲激响应。

四、实验结果:假设要设计一个阶数为10的FIR滤波器,截止频率为800Hz,采样频率为1600Hz。

1.选择汉明窗作为窗口函数。

2.根据采样频率和截止频率计算出理想低通滤波器的冲激响应。

假设截止频率为f_c,则理想低通滤波器的冲激响应为:h(n) = 2f_c * sinc(2f_c * (n - (N-1)/2))其中,sinc(x)为正弦函数sin(x)/x。

3.将汉明窗应用到理想低通滤波器的冲激响应中,得到FIR滤波器的冲激响应。

具体计算过程如下:h(n) = w(n) * h_ideal(n)其中,w(n)为汉明窗:w(n) = 0.54 - 0.46 * cos(2πn/(N-1))h_ideal(n)为理想低通滤波器的冲激响应。

4.计算得到FIR滤波器的冲激响应序列。

五、实验总结:本次实验通过设计FIR滤波器,加深了对数字信号处理中滤波器原理的理解。

掌握了FIR滤波器的设计方法和调试技巧。

通过设计阶数为10的FIR滤波器,截止频率为800Hz,采样频率为1600Hz的实例,了解了窗函数法设计FIR滤波器的具体步骤,并得到了滤波器的冲激响应。

【备注】以上内容仅为参考,具体实验报告内容可能根据实际情况有所调整。

FIR高通滤波器设计报告

FIR高通滤波器设计报告

新疆大学科学与技术学院MATLAB课程设计报告题目:FIR高通滤波器专业班级通信08-1学生姓名学生学号提交日期 2011年12月 30日目录一、设计目的(FIR高通滤波器设计) (1)二、设计要求 (1)三、设计内容 (1)3.1 FIR 滤波器设计原理 (1)3.1.1数字滤波器的设计原理 (1)3.1.2 FIR滤波器的基本结构 (1)3.1.3 FIR滤波器的主要特点 (2)3.1.4 FIR滤波器设计方法及MATLAB实现 (2)3.1.5窗函数选择与高通滤波器指标转换 (2)3.1.6滤波器的MATLAB实现 (3)3.2 程序代码 (3)3.3仿真结果与分析 (4)四、本设计改进与建议 (5)五、总结 (5)六、主要参考文献 (5)一、设计目的(FIR 高通滤波器设计) 二、设计要求在MATLAB 课程中,熟悉软件的使用以及FIR 滤波器的设计原理,锻炼程序的设计能力和整体思想三、设计内容1)产生一个多频信号,设计FIR 高通滤波器消除其中一些成分。

2)设计FIR 滤波器:阻带边缘频率10KHz,通带边缘频率22KHz ,阻带衰减75dB ,采样频率50KHz 。

3.1 FIR 滤波器设计原理FIR 高通滤波器设计3.1.1数字滤波器的设计原理数字滤波器的设计问题就是寻找一组系数ai 和bi ,使得其性能在某种意义上逼近所要求的特性。

如果在s 平面上去逼近,就得到模拟滤波器,如果在z 平面上去逼近,就得到数字滤波器。

数字滤波器是将输入的信号序列,按规定的算法进行处理从而得到所期望的输出序列。

一个线性位移不变系统的输出序列y(n)和输入序列x(n)之间的关系,应该满足常系数线性差分方程x (n )为输入序列,y (n )为输出序列,ai 、bi 为滤波器系数,N 为滤波器的阶数。

3.1.2 FIR 滤波器的基本结构设h(n)(n =0,1,2⋯一1)为滤波器的冲激响应,输入信号为x(n),则FIR 滤波器就是要实现下列差分方程:对式(2.2.1)进行z 变换,可得FIR 滤波器的传递函数:FIR 滤波器的单位冲击响应h(n)是一个有限长序列。

实验7 窗函数法设计FIR数字滤波器

实验7 窗函数法设计FIR数字滤波器

实验7窗函数法设计FIR数字滤波器一、实验目的掌握窗函数法设计F1R数字滤波器的原理和具体方法二、实验设备与环境计算机、Mat1ab软件环境三、实验基础理论1>基本原理窗函数设计法的基本思想为,首先选择一个适当的理想的滤波器Hd(,3),然后用窗函数截取它的单位脉冲响应%(九),得到线性相位和因果的FIR滤波器,这种方法的重点是选择一个合适的窗函数和理想滤波器,使设计的滤波器的单位脉冲响应逼近理想滤波器的单位脉冲响应。

2、设计步骤(1)给定理想滤波器的频率响应Hd("3),在通带上具有单位增益和线性相位,在阻带上具有零响应。

一个带宽为g(3c<Tr)的低通滤波器由下式给定h(e j^=(eW∣ω∣≤ωc虱)一1Oωc<∣ω∣<π其中α为采样延迟,其作用是为了得到因果的系统。

(2)确定这个滤波器的单位脉冲响应为了得到一个h(n)长度为N的因果的线性相位FIR滤波器,我们令N-Ia=-2-(3)用窗函数截取hd(τι)得到所设计FIR数字滤波器h(n)h(n)=h d(n)w(n)3、窗函数的选择常用的窗函数有矩形窗、汉宁窗、海明窗、布莱克曼窗、凯瑟窗等。

Mat1ab提供了一些函数用于产生窗函数,如下表所示:在设计过程中我们需要根据给定的滤波器技术指标,选择滤波器长度N 和窗函数3(n)°表7.2列出了常用的窗函数的一些特性,可供设计时参考。

其中幻是修正的零阶贝塞尔函数,参数B 控制最小阻带衰减,这种窗函数对于相同的N 可以提供不同的过渡带宽。

由于贝塞尔函数比较更杂,这种窗函数的设计方程很难推导,然而幸运的是,有一些经验设计方程可以直接使用。

已知给定的指标叫Msc,Rp 和4,滤波器长度N 和凯瑟窗参数B 可以按如下凯瑟窗设计方程给出过渡带宽:∆ω=ωst -ωp入一7.95 2.285∆ω_(0.1102(4-8.7) ,P=iθ.5842(4-21)04+0.07886(4-21), 四、实验内容1、设计一个数字低通FIR 滤波器,其技术指标如下ωp =0.2τr,RP=0.25dBωst =0.3τr,A s =50dB分别采用矩形窗、汉宁窗、海明窗、布莱克曼窗、凯瑟窗设计该滤波器。

FIR滤波器设计报告

FIR滤波器设计报告

摘要本文介绍了数字滤波器的设计基础及用窗函数法设计FIR 滤波器的方法,运用MATLAB 语言实现了低通滤波器的设计以及用CCS软件进行滤波效果的观察。

读取语音文件,并加入一定的随机噪声,最后使用窗函数滤波法进行语音滤波,将加噪后的语音文件转换为.dat文件使其能和ccs软件链接,输出个阶段的时域和频域波形。

关键词:FIR滤波、Matlab、窗函数法、CCS目录1.引言 (2)2.FIR滤波器的窗函数法的设计 (2)2.1 fir1函数 (2)3.FIR滤波器的设计(Matlab) (4)4.滤波器的DSP实现(CCS) (7)4.1 编写源程序 (7)5.本课程的心得体会和对本课程的建议 (11)6.结束语 (12)参考文献 (13)1.引言根据数字滤波器冲激响应函数的时域特性。

可将数字滤波器分为两种,即无限长冲激响应( IIR) 滤波器和有限长冲激响应(FIR) 滤波器。

IIR 滤波器的特征是具有无限持续时间的冲激响应;FIR 滤波器冲激响应只能延续一定时间。

其中FIR 滤波器很容易实现严格的线性相位,使信号经过处理后不产生相位失真,舍入误差小,稳定等优点。

能够设计具有优良特性的多带通滤波器、微分器和希尔伯特变换器,所以在数字系统、多媒体系统中获得极其广泛的应用。

FIR数字滤波器的设计方法有多种,如窗函数设计法、最优化设计和频率取样法等等。

而随着MATLAB软件尤其是MATLAB 的信号处理工具箱和Simulink 仿真工具的不断完善,不仅数字滤波器的计算机辅助设计有了可能而且还可以使设计达到最优化。

2.FIR滤波器的窗函数法的设计2.1 fir1函数用来设计标准频率响应的基于窗函数的FIR滤波器,可实现加窗线性相位FIR数字滤波器的设计。

语法:b=fir1(n,Wn);b=fir1(n,Wn,’ftype’);b=fir1(n,Wn,Window);b=fir1(n,Wn,’ftype’,Window);其中,n为滤波器的阶数;Wn为滤波器的截止频率;ftype参数用来决定滤波器的类型,当ftype=high时,可设计高通滤波器;当ftype=stop时,可设计带阻滤波器。

FIR数字滤波器的设计实验报告

FIR数字滤波器的设计实验报告

数字信号处理实验报告姓名:寇新颖 学号:026 专业:电子信息科学与技术实验五 FIR 数字滤波器的设计一、实验目的1.熟悉FIR 滤波器的设计基本方法2.掌握用窗函数设计FIR 数字滤波器的原理与方法,熟悉相应的计算机高级语言编程。

3.熟悉线性相位FIR 滤波器的幅频特性和相位特性。

4.了解各种不同窗函数对滤波器性能的影响。

二、实验原理与方法FIR 滤波器的设计问题在于寻求一系统函数)(z H ,使其频率响应)(ωj e H 逼近滤波器要求的理想频率响应)(ωj d eH ,其对应的单位脉冲响应)(n h d 。

1.用窗函数设计FIR 滤波器的基本方法设计思想:从时域从发,设计)(n h 逼近理想)(n h d 。

设理想滤波器)(ωj d e H 的单位脉冲响应为)(n h d 。

以低通线性相位FIR 数字滤波器为例。

⎰∑--∞-∞===ππωωωωωπd e e Hn h e n he H jn j dd jn n dj d )(21)()()()(n h d 一般是无限长的,且是非因果的,不能直接作为FIR 滤波器的单位脉冲响应。

要想得到一个因果的有限长的滤波器h(n),最直接的方法是截断)()()(n w n h n h d =,即截取为有限长因果序列,并用合适的窗函数进行加权作为FIR 滤波器的单位脉冲响应。

按照线性相位滤波器的要求,h(n)必须是偶对称的。

对称中心必须等于滤波器的延时常数,即⎩⎨⎧-==2/)1()()()(N a n w n h n h d 用矩形窗设计的FIR 低通滤波器,所设计滤波器的幅度函数在通带和阻带都呈现出振荡现象,且最大波纹大约为幅度的9%,这个现象称为吉布斯(Gibbs )效应。

为了消除吉布斯效应,一般采用其他类型的窗函数。

2.典型的窗函数(1)矩形窗(Rectangle Window))()(n R n w N =其频率响应和幅度响应分别为:21)2/sin()2/sin()(--=N j j eN e W ωωωω,)2/sin()2/sin()(ωωωN W R =(2)三角形窗(Bartlett Window)⎪⎩⎪⎨⎧-≤<----≤≤-=121,122210,12)(N n N N n N n N n n w其频率响应为:212])2/sin()4/sin([2)(--=N j j e N N e W ωωωω(3)汉宁(Hanning)窗,又称升余弦窗)()]12cos(1[21)(n R N n n w N --=π其频率响应和幅度响应分别为:)]12()12([25.0)(5.0)()()]}12()12([25.0)(5.0{)()21(-++--+==-++--+=---N W N W W W e W eN W N W W e W R R R aj N j R R R j πωπωωωωπωπωωωωω(4)汉明(Hamming)窗,又称改进的升余弦窗)()]12cos(46.054.0[)(n R N n n w N --=π其幅度响应为:)]12()12([23.0)(54.0)(-++--+=N W N W W W R R R πωπωωω (5)布莱克曼(Blankman)窗,又称二阶升余弦窗)()]14cos(08.0)12cos(5.042.0[)(n R N n N n n w N -+--=ππ 其幅度响应为:)]14()14([04.0)]12()12([25.0)(42.0)(-++--+-++--+=N W N W N W N W W W R R R R R πωπωπωπωωω(6)凯泽(Kaiser)窗10,)())]1/(21[1()(020-≤≤---=N n I N n I n w ββ其中:β是一个可选参数,用来选择主瓣宽度和旁瓣衰减之间的交换关系,一般说来,β越大,过渡带越宽,阻带越小衰减也越大。

fir滤波器设计实验报告

fir滤波器设计实验报告

fir滤波器设计实验报告一、实验目的本次实验的目的是设计FIR滤波器,从而实现信号的滤波处理。

二、实验原理FIR滤波器是一种数字滤波器,它采用有限长的冲激响应滤波器来实现频率选择性的滤波处理。

在FIR滤波器中,系统的输出只与输入和滤波器的系数有关,不存在反馈环路,因此具有稳定性和线性相位的特性。

FIR滤波器的设计最常采用Window法和最小二乘法。

Window法是指先对理想滤波器的频率特性进行窗函数的处理,再通过离散傅里叶变换来得到滤波器的时域响应。

最小二乘法则是指采用最小二乘法来拟合理想滤波器的频率特性。

本次实验采用的是Window法。

三、实验步骤1.设计滤波器的频率响应特性:根据实际需要设计出需要的滤波器的频率响应特性,通常采用理想滤波器的底通、高通、带通、带阻等特性。

2.选择窗函数:根据设计的滤波器的频率响应特性选择相应的窗函数,常用的窗函数有矩形窗、汉宁窗、汉明窗等。

3.计算滤波器的时域响应:采用离散傅里叶变换将设计的滤波器的频率响应特性转化为时域响应,得到滤波器的冲激响应h(n)。

4.归一化:将得到的滤波器的冲激响应h(n)进行归一化处理,得到单位加权的滤波器系数h(n)。

5.实现滤波器的应用:将得到的滤波器系数h(n)应用于需要滤波的信号中,通过卷积的方式得到滤波后的信号。

四、实验结果以矩形窗为例,设计一阶低通滤波器,截止频率为300Hz,采样频率为8000Hz,得到的滤波器系数为:h(0)=0.0025h(1)=0.0025滤波效果良好,经过滤波后的信号频率响应相对于滤波前有较明显的截止效应。

五、实验总结通过本次实验,我们掌握了FIR滤波器的设计方法,窗函数的选择和离散傅里叶变换的应用,使我们能够更好地处理信号,实现更有效的信号滤波。

在日常工作和学习中,能够更好地应用到FIR滤波器的设计和应用,提高信号处理的精度和效率。

FIR滤波器设计实验报告

FIR滤波器设计实验报告

实验报告课程名称:数字信号处理实验项目: FIR滤波器设计专业班级:姓名:学号:实验室号:实验组号:实验时间:批阅时间:指导教师:成绩:实验报告专业班级: 学号: 姓名:一、实验目的:1、熟悉线性相位FIR 数字低通滤波器特性。

2、熟悉用窗函数法设计FIR 数字低通滤波器的原理和方法。

3、了解各种窗函数对滤波特性的影响。

要求认真复习FIR 数字滤波器有关内容实验内容。

二、实验原理如果所希望的滤波器理想频率响应函数为)(e H j ωd ,则其对应的单位样值响应为ωπ=ωππ-⎰d e j ωnj dd e )(H 21(n)h 窗函数法设计法的基本原理是用有限长单位样值响应h(n)逼近(n)h d 。

由于(n)h d 往往是无限长序列,且是非因果的,所以用窗函数(n)w 将(n)h d 截断,并进行加权处理,得到:(n)(n)h h(n)d w ⋅=。

h(n)就作为实际设计的FIR 滤波器单位样值响应序列,其频率函数)H(ej ω为∑-=ω=1n n j -j ωh(n)e )H(e N 。

式中N 为所选窗函数(n)w 的长度。

用窗函数法设计的FIR 滤波器性能取决于窗函数类型及窗口长度N 的取值。

设计过程中要根据阻带衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度N 。

各类窗函数所能达到的阻带最小衰减和过渡带宽度见P342表7-3。

选定窗函数类型和长度N 以后,求出单位样值响应(n)(n)h h(n)d w ⋅=。

验算)()()]([)(ωϕωω==j g j e H n h DTFT e H 是否满足要求,如不满足要求,则重新选定窗函数类型和长度N ,直至满足要求。

如要求线性相位特性,h(n)还必须满足n)-1-h(N h(n)±=。

根据上式中的正、负号和长度N 的奇偶性又将线性相位FIR 滤波器分成4类(见P330表7-1及下表),根据要设计的滤波器特性正确选择其中一类。

例如要设计低通特性,可选择情况1、2,不能选择情况3、4。

用窗函数设计FIR滤波器实验报告

用窗函数设计FIR滤波器实验报告

实验 用窗函数设计FIR 滤波器一、实验目的1、熟悉FIR 滤波器设计的基本方法。

2、熟悉线性相位FIR 滤波器的幅频特性和相位特性。

3、掌握用窗函数设计FIR 数字滤波器的原理及方法,了解各种不同窗函数对滤波器性能的影响。

二、实验原理1、FIR 滤波器的设计 在前面的实验中,我们介绍了IIR 滤波器的设计方法并实践了其中的双线性变换法,IIR 具有许多诱人的特性;但与此同时,也具有一些缺点。

例如:若想利用快速傅立叶变换技术进行快速卷积实现滤波器,则要求单位脉冲响应是有限长的。

此外,IIR 滤波器的优异幅度响应,一般是以相位的非线性为代价的,非线性相位会引起频率色散。

FIR 滤波器具有严格的相位特性,这对于许多信号的处理和数据传输是很重要的。

目前FIR 滤波器的设计方法主要有三种:窗函数法、频率采样法和切比雪夫等波纹逼近的最优化设计方法。

窗函数法比较简单,可应用现成的窗函数公式,在技术指标要求不高的时候是比较灵活方便的。

它是从时域出发,用一个窗函数截取理想的[]d h n 得到[]h n ,以有限长序列[]h n 近似理想的[]d h n ;如果从频域出发,用理想的[]j d h e ω在单位圆上等角度取样得到[]H k ,根据[]H k 得到[]H z 将逼近理想的[]d h z ,这就是频率采样法。

2 、窗函数设计法同其他的数字滤波器的设计方法一样,用窗函数设计滤波器也是首先要对滤波器提出性能指标。

一般是给定一个理想的频率响应[]j d H e ω,使所设计的FIR 滤波器的频率响应[]j H e ω去逼近所要求的理性的滤波器的响应[]j d H e ω。

窗函数法设计的任务在于寻找一个可实现(有限长单位脉冲响应)的传递函数1()[]N j j nn H e h n e ωω--==∑ (4.1)去逼近[]j d H e ω。

我们知道,一个理想的频率响应[]j d H e ω的傅立叶反变换201[]()2j j n d d h n H e e d πωωωπ=⎰(4.2)所得到的理想单位脉冲响应[]d h n 往往是一个无限长序列。

实验四 FIR数字滤波器的设计(实验报告)

实验四  FIR数字滤波器的设计(实验报告)

实验四 FIR数字滤波器的设计(实验报告)《数字信号处理》实验报告学院专业电子信息工程班级姓名学号时间实验四FIR数字滤波器的设计一、实验目的1、掌握用窗函数法、频率采样法及优化算法设计FIR 滤波器的原理及步骤,学会相应的MATLAB编程。

2、熟悉具有线性相位的FIR滤波器的幅频特性和相频特性。

3、了解各种不同窗函数对滤波器性能的影响。

二、实验内容1、用窗函数法设计一个FIR数字低通滤波器LPDF,验证设计结果的幅频特性和相频特性。

要求:通带截止频率ωp=π,通带波纹Rp=,阻带截止频率ωs=π,阻带衰减As=50dB。

50Magnitude (dB) Frequency ( rad/sample) (degrees)- Frequency ( rad/sample)图1-1 低通滤波器LPDF的频率响应图1-2 低通滤波器LPDF的零极点图单位脉冲响应h(n)的数据长度= 45 对称性为:偶对称得到的滤波器通带边界点( 326 )和阻带边界点参数2、用窗函数法设计一个FIR数字高通滤波器HPDF,验证设计结果的幅频特性和相频特性。

要求:通带截止频率ωp=π,通带波纹Rp=,阻带截止频率ωs=π,阻带衰减As=50dB。

Real Part50Magnitude (dB) Frequency ( rad/sample) (degrees) Frequency ( rad/sample)图2-1 高通滤波器HPDF的频率响应图2-2 高通滤波器HPDF的零极点图-滤波器H(z)零点个数= h(n)对称性为:偶对称得到的滤波器通带边界点( 426 )和阻带边界点参数3、用窗函数法设计一个FIR数字带通滤波器BPDF,验证设计结果的幅频特性和相频特性。

要求:阻带截止频率ωs1=π,衰减65dB,通带截止频率ωp1=π→ωp2=π范围内衰减,高端阻带截止频率ωs2=π,阻带衰减As=65dB。

501Magnitude (dB)0-50-100Imaginary Frequency ( rad/sample) Frequency ( rad/sample) (degrees)0-20XX-4000-6000图3-1 带通滤波器BPDF的频率响应图3-2 带通滤波器BPDF的零极点图 FIR滤波器的阶次= 111 h(n)对称性为:偶对称得到的滤波器通带边界点( 298、704 )和阻带边界点参数中心频率:通带带宽:4、用窗函数法设计一个FIR数字带阻滤波器BSDF,验证设计结果的幅频特性和相频特性。

fir数字滤波器设计实验报告

fir数字滤波器设计实验报告

fir数字滤波器设计实验报告FIR数字滤波器设计实验报告概述数字滤波器是数字信号处理中的重要组成部分,广泛应用于音频、图像、视频等领域。

其中,FIR数字滤波器是一种常见的数字滤波器,具有线性相位、稳定性好、易于实现等优点。

本实验旨在设计一种基于FIR数字滤波器的信号处理系统,实现对信号的滤波和降噪。

实验步骤1. 信号采集需要采集待处理的信号。

本实验采用的是模拟信号,通过采集卡将其转换为数字信号,存储在计算机中。

2. 滤波器设计接下来,需要设计FIR数字滤波器。

为了实现对信号的降噪,我们选择了低通滤波器。

在设计滤波器时,需要确定滤波器的阶数、截止频率等参数。

本实验中,我们选择了8阶低通滤波器,截止频率为500Hz。

3. 滤波器实现设计好滤波器后,需要将其实现。

在本实验中,我们采用MATLAB 软件实现FIR数字滤波器。

具体实现过程如下:定义滤波器的系数。

根据滤波器设计的公式,计算出系数值。

利用MATLAB中的filter函数对信号进行滤波。

将采集到的信号作为输入,滤波器系数作为参数,调用filter函数进行滤波处理。

处理后的信号即为滤波后的信号。

4. 结果分析需要对处理后的信号进行分析。

我们可以通过MATLAB绘制出处理前后的信号波形图、频谱图,比较它们的差异,以评估滤波器的效果。

结果显示,经过FIR数字滤波器处理后,信号的噪声得到了有效的降低,滤波效果较好。

同时,频谱图也显示出了滤波器的低通特性,截止频率处信号衰减明显。

结论本实验成功设计并实现了基于FIR数字滤波器的信号处理系统。

通过采集、滤波、分析等步骤,我们实现了对模拟信号的降噪处理。

同时,本实验还验证了FIR数字滤波器的优点,包括线性相位、稳定性好等特点。

在实际应用中,FIR数字滤波器具有广泛的应用前景。

iir和fir滤波器的设计实验总结

iir和fir滤波器的设计实验总结

IIR和FIR滤波器是数字信号处理中常用的滤波器类型,它们可以用于滤除信号中的噪音、衰减特定频率成分等。

在本次实验中,我们对IIR 和FIR滤波器的设计进行了实验,并进行了总结。

以下是我们对实验内容的总结:一、实验背景1.1 IIR和FIR滤波器的概念IIR滤波器又称为“递归滤波器”,其特点是反馈自身的输出值作为输入。

FIR滤波器又称为“非递归滤波器”,其特点是只利用当前和过去的输入值。

两者在设计和性能上有所不同。

1.2 实验目的本次实验旨在通过设计IIR和FIR滤波器,加深对数字信号处理中滤波器性能和设计原理的理解,以及掌握滤波器在实际应用中的参数选择和性能评估方法。

二、实验过程2.1 IIR滤波器设计我们首先进行了IIR滤波器的设计实验。

通过选择滤波器类型、截止频率、阶数等参数,利用巴特沃斯、切比雪夫等滤波器设计方法,得到了IIR滤波器的传递函数和零极点分布。

接着进行了IIR滤波器的数字仿真,对滤波器的频率响应、裙延迟等性能进行了评估。

2.2 FIR滤波器设计接下来我们进行了FIR滤波器的设计实验。

通过选择滤波器类型、截止频率、滤波器长度等参数,利用窗函数、最小均方等设计方法,得到了FIR滤波器的传递函数和频响曲线。

然后进行了FIR滤波器的数字仿真,对滤波器的幅频响应、相频响应等进行了分析。

2.3 总结我们总结了IIR和FIR滤波器的设计过程和步骤,对设计参数的选择和调整进行了讨论,同时对两种滤波器的性能进行了比较和评价。

三、实验结果分析3.1 IIR滤波器性能分析通过实验,我们得到了IIR滤波器的频率响应曲线、裙延迟等性能指标。

我们分析了滤波器的截止频率对性能的影响,以及阶数、滤波器类型对性能的影响,并进行了参数优化和调整。

3.2 FIR滤波器性能分析同样地,我们得到了FIR滤波器的幅频响应曲线、相频响应等性能指标。

我们分析了滤波器长度、截止频率对性能的影响,以及窗函数、设计方法对性能的影响,并进行了参数优化和调整。

完整的IIR、FIR数字滤波器设计报告

完整的IIR、FIR数字滤波器设计报告

一、课程设计的内容录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;给定滤波器的性能指标,采用窗函数法和双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;最后,设计一个信号处理系统界面。

二、课程设计的要求与数据1、学生能够根据设计内容积极主动查找相关资料;2、滤波器的性能指标可以根据实际情况作调整;3、对设计结果进行独立思考和分析;4、设计完成后,要提交相关的文档;1)课程设计报告书(纸质和电子版各一份,具体格式参照学校课程设计管理规定),报告内容要涵盖设计过程、频谱图的分析.2)可运行的源程序代码(电子版)5、在基本要求的基础上,学生可以根据个人对该课程设计的理解,添加一些新的内容;6、详细设计要求参照<<数字信号处理>>课程设计指导手册.三、课程设计应完成的工作1、语音信号的采集;2、语音信号的频谱分析;3、数字滤波器的设计;4、对语音信号进行滤波处理;5、对滤波前后的语音信号频谱进行对比分析;四、课程设计进程安排序号设计各阶段内容地点起止日期1 熟悉Matlab程序设计方法,了解数字信号处理工具箱使用工学一号楼404 十七周周一2 分析题目,设计程序框图,编写程序代码工学一号楼404十七周周二、三3 上机调试程序,修改并完善设计,并完成设计报告工学一号楼404十七周周四、五五、应收集的资料及主要参考文献1,数字滤波器设计方法;2,《数字信号处理及MATLAB实现》余成波杨如民等编著清华大学出版社出版3,《数字信号处理教程》程佩青清华大学出版社出版发出任务书日期: 2008 年 12 月 22 日指导教师签名:计划完成日期: 2008 年 12 月 26 日基层教学单位责任人签章:主管院长签章:一、设计题目应用Matlab对语音信号进行频谱分析及滤波二、设计目的为了巩固所学的数字信号处理理论知识,使学生对信号的采集、处理、传输、显示和存储等有一个系统的掌握和理解,安排了以下的课程设计的内容:三、设计内容录制一段个人自己的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图;给定滤波器的性能指标,采用窗函数法和双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;最后,设计一个信号处理系统界面。

FIR滤波器设计与实现实验报告

FIR滤波器设计与实现实验报告

FIR滤波器设计与实现实验报告实验报告:FIR滤波器设计与实现一、实验目的本实验旨在通过设计和实现FIR滤波器来理解数字滤波器的原理和设计过程,并且掌握FIR滤波器的设计方法和实现技巧。

二、实验原理1.选择滤波器的类型和阶数根据滤波器的类型和阶数的不同,可以实现不同的滤波效果。

常见的滤波器类型有低通滤波器、高通滤波器、带通滤波器和带阻滤波器。

选择适当的滤波器类型和阶数可以实现对不同频率分量的滤波。

2.确定滤波器的系数在设计FIR滤波器时,系数的选择对滤波器的性能有重要影响。

通常可以使用窗函数法、最小二乘法、频率采样法等方法来确定系数的值。

常见的窗函数有矩形窗、汉明窗和布莱克曼窗等。

三、实验步骤1.确定滤波器的类型和阶数根据实际需求和信号特点,选择合适的滤波器类型和阶数。

例如,如果需要设计一个低通滤波器,可以选择实验中使用的巴特沃斯低通滤波器。

2.确定滤波器的频率响应根据滤波器的类型和阶数,确定滤波器的频率响应。

可以通过matlab等软件来计算和绘制滤波器的频率响应曲线。

3.确定滤波器的系数根据频率响应的要求,选择合适的窗函数和窗长度来确定滤波器的系数。

可以使用matlab等软件来计算和绘制窗函数的形状和频率响应曲线。

4.实现滤波器的功能将滤波器的系数应用于输入信号,通过加权求和得到输出信号的采样点。

可以使用matlab等软件来模拟和验证滤波器的功能。

四、实验结果在实际实验中,我们选择了一个4阶低通滤波器进行设计和实现。

通过计算和绘制滤波器的频率响应曲线,确定了窗函数的形状和窗长度。

在实际实验中,我们通过实现一个滤波器功能的matlab程序来验证滤波器的性能。

通过输入不同频率和幅度的信号,观察滤波器对信号的影响,验证了设计的滤波器的功能有效性。

五、实验总结通过本实验,我们深入了解了FIR滤波器的设计原理和实现方法。

通过设计和实现一个具体的滤波器,我们掌握了滤波器类型和阶数的选择方法,以及系数的确定方法。

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

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

FIR数字滤波器课程设计报告数字滤波器是一种通过数字信号处理来实现滤波的设备,主要用于去除信号中的噪声或不需要的频率成分。

在本次课程设计中,我们将设计一个FIR(有限冲激响应)数字滤波器,用于对输入信号进行滤波处理。

一、设计目标设计一个离散时间FIR数字滤波器,具有以下特点:1.滤波器类型:低通滤波器2.滤波器阶数:10阶3.截止频率:2kHz4.采样频率:4kHz二、设计步骤1.确定滤波器系数:根据滤波器类型、阶数和截止频率,利用滤波器设计工具进行计算,得到滤波器的系数。

2.实现滤波器:将滤波器系数作为滤波器的输入,通过算法实现滤波器的功能。

3.验证滤波器性能:使用信号发生器生成一组测试信号,将其输入到滤波器中,并通过示波器观察滤波后的信号波形。

三、滤波器系数计算1.选择滤波器类型为低通滤波器,即希望通过滤波器的信号为低频信号,而将高频信号滤除。

2.选择滤波器阶数为10阶,即滤波器具有10个延迟单元。

3.选择截止频率为2kHz,即希望2kHz以下的信号通过滤波器,2kHz以上的信号被滤除。

四、滤波器实现采用直接型FIR滤波器结构来实现该低通滤波器。

具体算法如下:1.输入信号x(n)和滤波器系数h(n),其中n表示时刻。

2.延时单元:将输入信号每次延迟一个单位,即x(n)→x(n-1)。

3.权重系数:将延时后的信号与对应的滤波器系数相乘得到权重系数,即a(n)=x(n-1)×h(n)。

4.累加求和:将所有的权重系数相加求和得到输出信号,即y(n)=∑a(n)。

五、滤波器性能验证使用信号发生器产生频率为1kHz,幅度为1V的正弦波信号作为输入信号,将其输入到滤波器中,并通过示波器观察滤波后的信号波形。

同时,使用频谱分析仪观察滤波前后信号的频谱图,并比较滤波效果。

六、总结与改进通过本次课程设计,我们成功设计并实现了一个FIR数字滤波器。

滤波器具有低通特性,能够有效滤除高频信号,保留低频信号。

fir滤波器的设计实验报告

fir滤波器的设计实验报告

fir滤波器的设计实验报告fir滤波器的设计实验报告引言:滤波器是信号处理中常用的工具,它可以对信号进行去噪、降噪、频率调整等操作。

在本次实验中,我们将设计一种fir滤波器,通过对信号进行滤波处理,实现对特定频率成分的增强或抑制。

本报告将详细介绍fir滤波器的设计原理、实验步骤和结果分析。

一、设计原理:fir滤波器是一种无限冲激响应滤波器,其特点是具有线性相位和稳定性。

其基本原理是通过对输入信号和滤波器的冲激响应进行线性卷积运算,得到输出信号。

fir滤波器的冲激响应由一组有限长的系数决定,这些系数可以通过不同的设计方法得到,如窗函数法、最小二乘法等。

二、实验步骤:1. 确定滤波器的频率响应需求:根据实际应用需求,确定滤波器需要增强或抑制的频率范围。

2. 选择滤波器的设计方法:根据频率响应需求和系统要求,选择合适的fir滤波器设计方法。

3. 设计滤波器的冲激响应:根据所选设计方法,计算得到fir滤波器的冲激响应系数。

4. 实现滤波器的数字滤波器:将fir滤波器的冲激响应系数转换为差分方程,得到数字滤波器的差分方程表示。

5. 实现滤波器的数字滤波器:将fir滤波器的冲激响应系数转换为差分方程,得到数字滤波器的差分方程表示。

6. 通过编程实现滤波器:使用编程语言(如MATLAB)编写代码,实现fir滤波器的数字滤波器。

7. 信号滤波处理:将待滤波的信号输入到fir滤波器中,通过数字滤波器进行滤波处理,得到输出信号。

8. 结果分析:对滤波后的信号进行分析,评估滤波器的性能和效果。

三、实验结果分析:在本次实验中,我们设计了一个fir滤波器,并对一段音频信号进行滤波处理。

通过实验结果分析,我们发现滤波器能够有效地增强或抑制指定频率范围内的信号成分。

滤波后的音频信号听起来更加清晰,噪音得到了有效的抑制。

同时,我们还对滤波器的性能进行了评估。

通过计算滤波器的幅频响应曲线和相频响应曲线,我们发现滤波器在指定频率范围内的增益和相位变化符合预期。

FIR实验报告范文

FIR实验报告范文

FIR实验报告范文一、实验目的1.了解FIR滤波器的特点和性能2.掌握FIR设计方法3.分析FIR滤波器的频率响应和时域响应4.比较FIR滤波器和IIR滤波器的差异二、实验原理FIR滤波器是一种无反馈结构,其输出仅取决于输入信号和滤波器的系数。

基于离散时间线性时不变系统的基本原理,FIR滤波器可以用差分方程描述:y(n)=b0*x(n)+b1*x(n-1)+...+bM*x(n-M)其中,y(n)为滤波器的输出,x(n)为滤波器的输入,b0,b1,...,bM 为滤波器的系数。

三、实验步骤1.确定FIR滤波器的设计规格,包括采样频率、通带截止频率、阻带截止频率以及通带和阻带的幅频特性要求。

2.选择适当的FIR设计方法,例如窗函数法、最小二乘法或频率抽样法等。

3.根据设计方法,计算FIR滤波器的系数。

4.利用计算机软件,如MATLAB等,实现FIR滤波器的设计和仿真。

5.对FIR滤波器的频率响应和时域响应进行分析和评估。

6.可以与IIR滤波器进行对比,并讨论其区别和优缺点。

四、实验结果本次实验我们选择了窗函数法进行FIR滤波器设计,并用MATLAB进行仿真。

设定采样频率为8kHz,通带截止频率为1kHz,阻带截止频率为2kHz,通带和阻带的幅频特性要求为1dB的波纹和50dB的衰减。

根据窗函数法的设计步骤,我们选择了矩形窗函数进行滤波器设计。

经过计算得到FIR滤波器的系数为:h=[0.0156,-0.0234,-0.0156,0.1875,0.4844,0.4844,0.1875,-0.0156,-0.0234,0.0156]通过MATLAB的filter函数对输入信号进行滤波得到输出信号。

我们选择了一个1kHz的正弦信号作为输入信号。

经过滤波后,我们得到了去除了高频部分的信号。

通过对滤波器的频率响应进行分析,我们可以看到滤波器在通带内的频率响应基本符合要求,波纹较小。

在阻带内,滤波器的频率响应明显下降,达到了较高的衰减。

FIR低通滤波器设计报告

FIR低通滤波器设计报告

FIR 低通滤波器设计报告1.FIR 低通滤波器原理1.1 FIR 滤波器简介FIR (Finite Impulse Response)滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。

因此,FIR 滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。

IIR 数字滤波器方便简单,但它相位的非线性,要求采用全通网络进行相位校正,且稳定性难以保障。

FIR 滤波器具有很好的线性相位特性,使得它越来越受到广泛的重视。

1.2 FIR 滤波器特点有限长单位冲激响应(FIR )滤波器有以下特点:1 既具有严格的线性相位,又具有任意的幅度;2 FIR 滤波器的单位抽样响应是有限长的,因而滤波器性能稳定; 3只要经过一定的延时,任何非因果有限长序列都能变成因果的有限长序列,因而能用因果系统来实现;4 FIR 滤波器由于单位冲击响应是有限长的,因而可用快速傅里叶变换(FFT)算法来实现过滤信号,可大大提高运算效率。

5 FIR 也有利于对数字信号的处理,便于编程,用于计算的时延也小,这对实时的信号处理很重要。

6 FIR 滤波器比较大的缺点就是阶次相对于IIR 滤波器来说要大很多。

FIR 数字滤波器是一个线性时不变系统(LTI ),N 阶因果有限冲激响应滤波器可以用传输函数H (z )来描述,0()()Nkk H z h k z -==∑在时域中,上述有限冲激响应滤波器的输入输出关系如下:0[][][][][]Nk y n x n h n x k h n k ==*=-∑其中,x[n]和y[n]分别是输入和输出序列。

当冲击响应满足下列条件时, FIR 滤波器具有对称结构,为线性相位滤波器:这种对称性,可使得乘法器数量减半:对n 价滤波器,当n 为偶数时,乘法器的个数为n/2个;当n 为奇数时,乘法器的个数为(n+1)/2个。

FIR滤波器的设计报告

FIR滤波器的设计报告

- - -.《数字信号处理课程设计》课程设计报告专业:电子信息工程班级:xxxx学号:xxxxx姓名:xx指导教师:xxxxxxxx2011年 6 月28日目录1、课程设计目的22、课程设计题目描述和要求22.1题目描述22.2设计要求33、课程设计报告内容33.1总体设计33.1.1 采集声音信号33.1.2声音信号的时域与频谱分析33.1.3 对声音信号加噪53.1.4 滤波器设计53.1.5 加噪信号的滤波与回放63.2软件仿真调试结果分析73.2.1 原始信号的读取与分析73.2.2 加噪信号的时域与频域分析83.2.3 滤波器的设计及分析93.2.4 加噪信号的滤波与图形分析103.3 设计中出现的问题与解决方案124、设计总结12参考文献13附录:(源程序代码)131、课程设计目的通过对课程设计任务的完成,使学生进一步巩固数字信号处理的基本概念、理论、分析方法和实现方法;使学生掌握的基本理论和分析方法方面的知识得到进一步扩展;使学生能有效地将理论和实际紧密结合;增强学生软件编程实现能力和解决实际问题的能力。

要求学生能够熟练地用Matlab 语言编程实现IIR 数字滤波器和FIR 数字滤波器,进一步明确数字信号处理的工程应用。

2、课程设计题目描述和要求2.1题目描述FIR 数字滤波器:FIR 数字滤波器的冲激响应()h n 的Z 变换为:11(1)0()()(0)(1)(1)N n N n H z h n z h h z h N z -----===+++-∑…其中滤波器最重要的两个特性为线性相位特性和幅度特性。

本次课程设计要求录制一段自己的语音信号后,格式为WAV 。

在MATLAB 软件中采集语音信号、回放语音信号。

画出语音信号的时域波形和频谱图,对所采集的信号加入干扰噪声,对加入噪声进行播放,并进行时域和频谱分析;对比早前后的时域图和频谱图即对比加噪声音信号和通过低通滤波器处理的音频信号不同的时域和频域波形。

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

一、设计指标:● 设计一个16阶低通线性相位FIR 滤波器; ● 要求采样频率Fs 为80KHz ; ● 截止频率Fc 为10KHz ;● 采用函数窗法设计,且窗口类型为Kaiser ,Beta 为0.5; ● 输入序列位宽为10位的有符号数(最高位为符号位); ●输出序列位宽为10位的有符号数(最高位为符号位)。

二、线性相位fir 滤波器理论:有限长脉冲响应(FIR )滤波器的系统函数只有零点,除原点外,没有极点,因而FIR 滤波器总是稳定的。

如果他的单位脉冲响应是非因果的,总能够方便的通过适当的移位得到因果的单位脉冲响应,所以FIR 滤波器不存在稳定性和是否可实现的问题。

它的另一个突出的优点是在满足一定的对称条件时,可以实现严格的线性相位。

由于线性相位滤波器不会改变输入信号的形状,而只是在时域上使信号延时,因此线性相位特性在工程实际中具有非常重要的意义,如在数据通信、图像处理等应用领域,往往要求信号在传输和处理过程中不能有明显的相位失真,因而线性相位FIR 滤波器得到了广泛的应用。

长度为M 的因果有限冲激响应滤波器由传输函数H (z )描述:10()()M k k H z h k z --==∑ (1)它是次数为M-1的z -1的一个多项式。

在时域中,上述有限冲激响应滤波器的输入输出关系为:10()()()M k y n h k x n k -==-∑ (2)其中y (n )和x (n )分别是输出和输入序列。

有限冲激响应滤波器的一种直接型实现,可由式(2)生成,M=5的情况如图2-1(a )所示。

其转置,如图2-1(b )所示,是第二个直接型结构。

通常一个长度为M 的有限冲激响应滤波器由M 个系数描述,并且需要M 个乘法器和(M-1)个双输入加法器来实现。

南京理工大学EDA技术与应用课程实验报告- 1 - 共23页(a)(b)图2- 1 直接型有限冲激响应滤波器结构长度为M的线性相位有限冲激响应滤波器由对称的冲激响应h(n)=h(M-1-n)或反对称的冲激响应h(n)=-h(M-1-n)描述。

利用线性相位有限冲激响应滤波器的对称(或反对称)性质,可以将传输函数的直接型实现所需的乘法器总量减少一半。

例如,图2-2显示了一个具有对称冲击响应的、长度为7的有限冲激响应传输函数的实现。

图2- 2 线性相位有限冲激响应结构基于VHDL语言的线性相位FIR滤波器设计- 2 - 共23页三、设计思路:根据课程上老师所讲例题,首先使用matlab计算出符合设计要求的滤波器冲激响应系数。

后将整个电路规划为语言编辑和原理图编辑两个单元,其中语言编辑部分负责编辑整个滤波器电路中所需用的单元器件,包括寄存器、加法器、减法器以及乘法器几个单元器件;原理图编辑部分完成单元器件的电气连接工作。

整个电路的原理图设置方案如图3-1所示:图3- 1 滤波器整体设计思路南京理工大学EDA技术与应用课程实验报告- 3 - 共23页四、设计过程:(一)基于matlab工具的滤波器系数计算:在matlab命令编辑窗口输入Fdatool指令,敲击回车可以打开Filter Design & Analysis Tool窗口(如图4-1所示),在该工具的帮助下,我们可以完成f.i.r.滤波器系数的计算工作。

图4- 1 Filter Design & Analysis Tool窗口Fdatool界面总共分两大部分,一部分是design filter,在界面的下半部分,用来设置滤波器的设计参数,另一部分则是特性区,在界面的上半部分,用来显示滤波器的各种特性。

design filter部分主要分为:Response Type(响应类型)选项,包括Lowpass(低通)、Highpass(高通)、Bandpass(带通)、Bandstop(带阻)和特殊的滤波器。

根据本次作业要求,在该选项中选择Lowpass选项。

Design Method(设计方法)选项,包括IIR滤波器的Butterworth(巴特沃思)法、Chebyshev Type i(切比雪夫i型)法、Chebyshev Type ii(切比雪夫ii型)法、Elliptic(椭圆滤波器)法等和FIR滤波器的Equiripple法、Least-squares(最基于VHDL语言的线性相位FIR滤波器设计- 4 - 共23页小乘方)法、Window(窗函数)法等多种方法。

结合本次作业要求,选择FIR 滤波器的窗函数法进行设计。

选定窗函数法后,会在右侧出现Options区域,进行窗函数法相关参量的设置,根据作业要求选择Kaiser窗并设置Beta为:0.5。

Filter Order(滤波器阶数)选项,定义滤波器的阶数,包括Specify order(指定阶数)和Minimum order(最小阶数)。

在Specify order中填入所要设计的滤波器的阶数(n阶滤波器,specify order=n-1),如果选择Minimum order则matlab 根据所选择的滤波器类型自动使用最小阶数。

本次作业要求设计16阶滤波器,所以选定Specify order并填入15。

Frenquency Specifications选项,可以详细定义频带的各参数,包括采样频率Fs和频带的截止频率。

它的具体选项由Response Type选项和Design Metho选项决定。

我们要求的Lowpass(低通)滤波器只需要定义Fs、Fc。

采用窗函数设计滤波器时,由于过渡带是由窗函数的类型和阶数所决定的,所以只需要定义通带截止频率,而不必定义阻带参数。

Magnitude Specifications选项,可以定义幅值衰减的情况。

采用窗函数设计时,通带截止频率处的幅值衰减固定为6db,所以不必定义。

本次作业中的参数设定结果如图4-2所示。

图4- 2 滤波器参数设定结果参数设定完毕,单击工具窗口下方的Design Filter按钮,开始进行相关参数计算。

在计算结果中我们可以看到该滤波器的一些相关曲线,如幅频响应(如图4-3)、相频响应(如图4-4)、冲激响应(如图4-5)等以及具体的系数值(如图4-6)。

南京理工大学EDA技术与应用课程实验报告- 5 - 共23页图4- 3 幅频响应图4- 4 相频响应图4- 5 冲激响应基于VHDL语言的线性相位FIR滤波器设计- 6 - 共23页图4- 6 所设计滤波器冲激系数计算的结果可通过File下拉菜单中的Export命令取出,点击Export打开Export对话框(如图4-7),点击OK按钮可将滤波器系数数据存放到当前工作空间,并以Num命名。

图4- 7 冲激系数输出对话框保存并关闭滤波器设计分析工具回到matlab主窗口,在命令编辑区输入Num 可得到工具的计算结果(如图4-8)。

图4- 8 输出在matlab的冲激系数南京理工大学 EDA 技术与应用课程实验报告- 7 - 共23页对FIR 滤波器的系数进行调整,做整数化操作(如图4-9)。

可得到滤波器整数化的系数为[-31 -88 -106 -54 70 239 401 499 499 401 239 70 -54 -106 -88-31]图 4- 9 整数化后的冲激系数(二)单元器件的语言编辑:1、寄存器模块寄存器用于寄存一组二值代码,只要求它们具有置1、置0的功能即可。

在本设计中用D 触发器组成寄存器,实现寄存功能。

本设计中使用带异步复位rst 端的D 触发器,当rst=1时,输出信号q=0,当rst=0且上升沿脉冲到达时q=d 。

程序代码如下:--------------------------- LIBRARY ieee;USE ieee.std_logic_1164.all; --------------------------- ENTITY dff16 ISPORT (rst,clk: IN STD_LOGIC;d:IN STD_LOGIC_VECTOR (9 DOWNTO 0);q:OUT STD_LOGIC_VECTOR (9 DOWNTO 0)); END dff16;---------------------------ARCHITECTURE dff16 OF dff16 IS BEGINPROCESS (rst,clk) BEGINIF(rst='1')THEN q<=(OTHERS=>'0');ELSIF(clk'EVENT AND clk='1')THEN q<=d; END IF; END PROCESS; END dff16;---------------------------仿真结果如图4-10所示:图 4- 10 寄存器仿真结果基于VHDL语言的线性相位FIR滤波器设计8 共23页2、加法器模块实现两个有符号数的相加运算。

即将输入的两数,在时钟脉冲到来时相加运算,输出结果。

在本设计中共有8个两个10位有符号数相加产生一个11位有符号数的加法器、一个18位和19位有符号数相加产生20位有符号数的加法器、一个两个20位有符号数相加产生一个21位有符号数的加法器、一个两个19位有符号数相加产生一个20位有符号位数的加法器、一个20位和21位有符号数相加产生22位有符号数的加法器,以及一个20位和22位有符号数相加产生23位有符号数的加法器电路。

其中一个20位和22位有符号数相加产生23位有符号数的加法器电路为最后一级,所以在加法器电路中在引入低位舍去功能只保留最终10位输出,最终保留10位输出采用了直接取输出23位数的高十位的方法,因此在输出中近似等于除掉了2^13即8192以后的结果。

●10位有符号数相加产生一个11位有符号数的加法器设计:----------------------LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;----------------------ENTITY sum101011 ISPORT(a,b: IN SIGNED(9 DOWNTO 0);clk: IN STD_LOGIC;s:OUT SIGNED(10 DOWNTO 0)); END SUM101011;---------------------- ARCHITECTURE sum101011 OF sum101011 IS BEGINPROCESS(clk)BEGINIF(clk'EVENT AND clk='1')THENs<=(a(9)&a)+(b(9)&b);END IF;END PROCESS;END sum101011;----------------------仿真结果如图4-11所示:图4- 11 两10位相加产生11位加法器仿真结果●18位和19位有符号数相加产生20位有符号数的加法器设计:---------------------- LIBRARY ieee; USE ieee.std_logic_1164.all; USE ieee.std_logic_arith.all;南京理工大学EDA技术与应用课程实验报告9 共23页----------------------ENTITY sum7023918 ISPORT(a: IN SIGNED(17 DOWNTO 0);b: IN SIGNED(18 DOWNTO 0);clk: IN STD_LOGIC;s:OUT SIGNED(19 DOWNTO 0));END sum7023918;----------------------ARCHITECTURE sum7023918 OF sum7023918 IS BEGINPROCESS(clk)BEGINIF(clk'EVENT AND clk='1')THENs<=(a(17)&a(17)&a)+(b(18)&b);END IF;END PROCESS;END sum7023918;----------------------仿真结果如图4-12所示:图4- 12 18位19位相加产生20位数仿真结果●两个20位有符号数相加产生一个21位有符号数的加法器设计:----------------------LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;----------------------ENTITY sum40149919 ISPORT(a: IN SIGNED(19 DOWNTO 0);b: IN SIGNED(19 DOWNTO 0);clk: IN STD_LOGIC;s:OUT SIGNED(20 DOWNTO 0)); END sum40149919;---------------------- ARCHITECTURE sum40149919 OF sum40149919 ISBEGINPROCESS(clk)BEGINIF(clk'EVENT AND clk='1')THENs<=(a(19)&a)+(b(19)&b);END IF;END PROCESS;END sum40149919;----------------------仿真结果如图4-13所示:图4- 13 两20位相加产生21位数仿真结果●两个19位有符号数相加产生一个20位有符号位数的加法器设计:---------------------- LIBRARY ieee;USE ieee.std_logic_1164.all; USE ieee.std_logic_arith.all; ---------------------- ENTITY sum181819 IS基于VHDL语言的线性相位FIR滤波器设计10 共23页PORT(a: IN SIGNED(18 DOWNTO 0);b: IN SIGNED(18 DOWNTO 0);clk: IN STD_LOGIC;s:OUT SIGNED(19 DOWNTO 0)); END sum181819;----------------------ARCHITECTURE sum181819 OF sum181819 IS BEGINPROCESS(clk)BEGINIF(clk'EVENT AND clk='1')THENs<=(a(18)&a)+(b(18)&b);END IF;END PROCESS;END sum181819;----------------------仿真结果如图4-14所示:图4- 14 两19位相加产生20位数仿真结果●20位和21位有符号数相加产生22位有符号数的加法器:----------------------LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;----------------------ENTITY sum192021 ISPORT(a: IN SIGNED(19 DOWNTO 0);b: IN SIGNED(20 DOWNTO 0);clk: IN STD_LOGIC;s:OUT SIGNED(21 DOWNTO 0)); END sum192021; ----------------------ARCHITECTURE sum192021 OF sum192021 IS BEGINPROCESS(clk)BEGINIF(clk'EVENT AND clk='1')THENs<=(a(19)&a(19)&a)+(b(20)&b);END IF;END PROCESS;END sum192021;----------------------仿真结果如图4-15所示:图4- 15 20位和21相加产生22位数仿真结果●20位和22位有符号数相加产生23位有符号数的加法器电路设计(最后一级带舍位):---------------------- LIBRARY ieee;USE ieee.std_logic_1164.all; USE ieee.std_logic_arith.all; ----------------------ENTITY sum192110 ISPORT(a: IN SIGNED(19 DOWNTO 0);b: IN SIGNED(21 DOWNTO 0);南京理工大学EDA技术与应用课程实验报告11 共23页clk: IN STD_LOGIC;s:OUT SIGNED(9 DOWNTO 0));END sum192110;----------------------ARCHITECTURE sum192110 OF sum192110 IS BEGINPROCESS(clk)V ARIABLE c:SIGNED(22 DOWNTO 0);BEGINIF(clk'EVENT AND clk='1')THENc:=(a(19)&a(19)&a(19)&a)+(b(21)&b);END IF;s<=c(22 DOWNTO 13);END PROCESS;END sum192110;----------------------仿真结果如图4-16所示:图4- 16 20位22位相加产生被截短的10位数仿真结果3、减法器模块:实现零值减去两个有符号数的减法运算。

相关文档
最新文档