实验六 FIR滤波器结构的实现
fir滤波器设计实验报告

fir滤波器设计实验报告fir滤波器设计实验报告引言:滤波器是数字信号处理中常用的工具,它能够对信号进行去噪、频率分析和频率选择等处理。
其中,FIR(Finite Impulse Response)滤波器是一种常见的数字滤波器,具有线性相位和稳定性等优点。
本实验旨在设计一个FIR滤波器,并通过实际测试验证其性能。
一、实验目的本实验的目的是通过设计一个FIR滤波器,掌握FIR滤波器的设计方法和性能评估。
具体包括以下几个方面:1. 了解FIR滤波器的基本原理和特点;2. 学习FIR滤波器的设计方法,如窗函数法、最小二乘法等;3. 掌握MATLAB等工具的使用,实现FIR滤波器的设计和性能评估;4. 通过实际测试,验证所设计FIR滤波器的性能。
二、实验原理FIR滤波器是一种非递归滤波器,其输出仅依赖于当前和过去的输入样本。
其基本原理是将输入信号与一组滤波器系数进行卷积运算,得到输出信号。
FIR滤波器的频率响应由滤波器系数决定,通过调整滤波器系数的值,可以实现不同的滤波效果。
在本实验中,我们采用窗函数法设计FIR滤波器。
窗函数法是一种常见的FIR滤波器设计方法,其基本思想是通过对滤波器的频率响应进行窗函数加权,从而实现对信号频率的选择。
常用的窗函数有矩形窗、汉宁窗、布莱克曼窗等。
三、实验过程1. 确定滤波器的要求:根据实际需求,确定滤波器的截止频率、通带衰减和阻带衰减等参数。
2. 选择窗函数:根据滤波器的要求,选择合适的窗函数。
常用的窗函数有矩形窗、汉宁窗、布莱克曼窗等,不同窗函数有不同的性能特点。
3. 计算滤波器系数:根据所选窗函数的特性,计算滤波器的系数。
这一步可以使用MATLAB等工具进行计算,也可以手动计算。
4. 实现滤波器:使用MATLAB等工具,将计算得到的滤波器系数应用于滤波器的实现。
可以使用差分方程、卷积等方法实现滤波器。
5. 评估滤波器性能:通过输入不同的信号,观察滤波器的输出,并评估其性能。
6 FIR 数字滤波器的设计方法(29页)

在=0到2之间等间隔采样N点
H k Hd ( e j )|
2 k N
, 0,1,..., N 1 k
DFT反变换
1 h( n ) N
N 1 k 0
H k e
j
2 kn N
, 0,1,..., N 1 n
H(k)指定的原则: (1)指定的H(k)应保证求得的h(n)是实数; (2)h(n)满足对称条件。
2 WR c N
H
max
9
1 H 2
H W d
d R
Hd
2 c N
2 WR c N
H
min
10
1 H 2
H W d
14
3. 窗函数的选择原则
具有较低的旁瓣幅度,尤其是第一旁瓣幅度。 旁瓣幅度下降速率要快,以增加阻带衰减。
主瓣的宽度要
较低的旁瓣幅度:平坦匀滑的幅频特性
过渡带宽增加
主瓣的宽度窄:比较窄的过渡带宽 Trade-off
通带和阻带波动明显增加
15
常用窗函数 幅频特性
e ja , | | c H d ( e j ) 0, c | |
hd ( n)
sin( c ( n a )) (n a )
a ( N 1) / 2
20
(2)根据过渡带及阻带衰减要求,确定窗函数及其长度 设过渡带宽为:,其值近似于窗函数主瓣宽度。 与窗口长度N成反比:NA/ ,A窗口形式;
如:矩形窗:A=4;海明窗: A=8;
窗函数 矩形窗
实验六—设计FIR滤波器

思考题
(1)在实验中窗长和形状对滤波器性能有何影
答:窗口法设计FIR滤波器时,窗口的长度对滤波器的过渡带宽产生影响:窗口的长度越长,滤波器的过渡带越窄、越陡。
(2)利用窗函数法设计一个线性相位FIR低通滤波器,性能指标为:通带截止频率为0.2pi,带阻截止频率为0.3pi,阻带衰减不小于40dB,通带衰减不大于3dB。
编写程序实现,并绘制图形。
程序
wp=0.2*pi;ws=0.3*pi;
wdelta=ws-wp;
N=ceil(8*pi/wdelta)
Nw=N;
wc=(ws+wp)/2;
win=hanning(Nw);
b=fir1(N-1,wc/pi,win) ;
freqz(b,1,512);
(3)设计一个带阻滤波器,带阻为0.4到0.65 ,阶数为34,并且使用一个切比雪夫窗,
并与默认的窗函数进行比较。
程序
w1=0.4;
w2=0.65;
alpha=40;
N=34;
win=chebwin(N+1,alpha);
b=fir1(N,[w1,w2],'stop',win); freqz(b,1,512)。
FIR滤波器的原理及设计

选题2 实验讲义实验名称:基于分布式算法的FIR 滤波器设计1.数字滤波器基础知识数字滤波是信号与信号处理领域的一个重要分支,在语音图像处理、模式识别、谱分析、无线通信等领域都有着非常广泛的应用。
通过滤波运算,将一组输入数据序列转变为另一组输出数据序列,从而达到修正时域或频域中信号属性的目的。
数字滤波器就是用于完成这种信号滤波功能,用有限精度算法来实现的一种离散时间线性时不变(LTI )系统。
相比于模拟滤波器,数字滤波器具有以下优点:(1)数字滤波器的频域特性容易控制,性能指标优良;(2)数字滤波器可以工作在极低的频率,可以方便地实现模拟滤波器难以实现的线性相位系统;(3)数字滤波器工作稳定,一般不会受到外部环境的影响;(4)数字滤波器的灵活性和可重用性高,只需要简单编程就可以修改滤波器的特性,设计周期短。
数字滤波器的实现可以采用专用DSP 芯片,通过编写程序,利用软、硬件结合完成滤波器设计,也可以采用市面上通用的数字滤波器集成电路来实现,但这两种方法无法适应高速应用场合。
随着集成电路技术的高速发展,FPGA 应用越来越普及,FPGA 器件具有芯片密度大、执行效率高,速度快,集成度高等优点,用FPGA 芯片作为滤波器的设计载体,可以实现高速信号滤波功能。
1.1 FIR 数字滤波器特点数字滤波器通常分为IIR (无限冲激响应)和FIR(有限冲激响应)两种。
FIR 滤波器具有以下特点:(1)可以做成严格的线性相位,同时又可以具有任意的幅度特性(2)单位冲激响应是有限长的,所以一定是稳定的,因此在实际中得到广泛的应用。
1.2 FIR 滤波器结构设FIR 滤波器的单位冲激响应为)(n h ,10-≤≤N n ,系统函数 ∑-=-=1)()(N n nzn h Z H差分方程形式为:∑-=-=1)()()(N k k n x k h n y (1)基本结构(直接型):图(1)FIR 滤波器的基本结构1.3 结构简化当FIR 滤波器具有严格线性相位时,)(n h 满足)1()(n N h n h --=或)1()(n N h n h ---=设N 为偶数,令 )]1([)()0(--±=N n x n x s )]2([)1()1(--±-=N n x n x s)2()]12([)12(N n x N n x N s -±--=- 则(1)式可以简化为:∑-=-=120)()()(Nk k n s k h n y (2)与(1)相比,所需乘法器数量降为原来的一半。
FIR滤波器的设计与实现

index=128+j; % y(i)=b0*x_temp(index); %for 循环,按直接法公式计算输出值 for k=1:jieshu %每次都是直接从 x_temp 当前的值开始算, 不再依次对 x_temp 进行移位处理 if(index -k<=0) %发现标称<0 后,需要给调头跑到缓存区的最后。 y(i)=y(i)+b(k)*x_temp(index -k+jieshu); else y(i)=y(i)+b(k)*x_temp(index -k); end end end end end end (2)主函数中,通过 my_filter.m 的调用,实现了按帧(每帧长度 128 点)处理,模拟实 际情况对对信号 x 进行滤波。代码如下: %========================================================= %编写 my_fir_filter.m 文件模拟实际处理过程,按帧对 x 进行低通滤波处理,每帧 128 点 %========================================================= t=(0:length(x)-1)/fs; figure(4); %绘制经 my_filter.m,低通滤波器处理后的信号图像 subplot(2,2,1); plot(t,x); title('原信号'); subplot(2,2,3) plot(t,y_low); xf=fft(x);%FFT 得到的是一个 X(k),k 表示频率,abs(X(k))表示增益 % plot(ab%s(xf));%直接绘制,是一个关于 Fs/2 对称 title('低通滤波信号'); fm=5000*length(xf)/fs;%为了对比度更强 取前 5000 个点 f=(0:fm)*fs/length(xf); subplot(2,2,2); plot(f,abs(xf(1:length(f)))); y_lowf=fft(y_low); title('原信号频谱'); subplot(2,2,4); plot(f,abs(y_lowf(1:length(f)))); title('低通滤波信号频谱');
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滤波器的设计和应用,提高信号处理的精度和效率。
实验6FIR滤波器设计
实验6FIR滤波器设计FIR (Finite Impulse Response)滤波器是一种数字滤波器,其输出信号仅取决于振荡器的输入以前的有限个值。
FIR滤波器设计的目的是通过调整滤波器的系数以实现所需的频率响应。
在FIR滤波器设计中,首先确定滤波器的类型和频率响应的规格。
常见的滤波器类型有低通滤波器、高通滤波器、带通滤波器和带阻滤波器。
频率响应的规格由滤波器的截止频率、通带增益和阻带衰减等参数决定。
FIR滤波器的设计步骤如下:1.确定滤波器的类型和频率响应规格。
根据应用的需求,选择适当的滤波器类型和定义频率响应的参数。
2.确定滤波器的阶数。
阶数决定了滤波器的复杂度和性能。
一般而言,阶数越高,滤波器的性能越好,但计算复杂度也越高。
3.根据频率响应规格和系统设计的约束,选择一种滤波器设计方法。
常见的设计方法有窗函数法、频率采样法、最小均方误差法等。
4.设计滤波器的理想频率响应。
根据所选的设计方法,确定滤波器的理想频率响应。
这通常是一个分段线性函数,其中包括通带增益和阻带衰减。
5.将理想频率响应转换为时域的冲激响应。
这可以通过将理想频率响应进行反傅里叶变换来实现。
6.通过选择合适的窗函数,对冲激响应进行窗函数变换。
窗函数的选择是设计滤波器性能的重要因素。
7.通过窗函数变换得到滤波器的系数。
通过将窗函数变换应用于冲激响应,可以得到设计滤波器的系数。
这些系数确定了滤波器的时间响应和频率响应。
8.可选地,通过优化算法对滤波器的系数进行优化。
优化算法可以用来进一步改善滤波器的性能。
常用的优化算法包括加权最小二乘方法、梯度下降法等。
9.实现滤波器。
将设计好的滤波器系数应用于输入信号,得到滤波器输出。
可以使用编程语言或滤波器设计工具来实现滤波器。
10.验证滤波器的性能。
通过将滤波器应用于不同的输入信号,检验滤波器输出是否符合设计要求。
可以使用频谱分析工具和滤波器性能评估指标来评估滤波器的性能。
FIR滤波器设计是数字信号处理中重要的课题之一、设计一个性能良好的FIR滤波器需要对滤波器原理和设计方法有深入的了解,以及熟练的使用滤波器设计工具和编程工具。
实验6FIR滤波器设计
实验6FIR滤波器设计FIR(Finite Impulse Response)滤波器是一种数字滤波器,它的输出只取决于输入序列和固定的系数,没有反馈回路。
FIR滤波器在很多领域中都有广泛的应用,比如音频信号处理、图像处理等。
本实验中我们将设计一个FIR滤波器,主要包括滤波器的设计、滤波器的实现以及滤波器的性能评估。
首先,我们需要选择一个滤波器的类型和规格。
常用的滤波器类型包括低通滤波器、高通滤波器、带通滤波器和带阻滤波器等。
在本实验中,我们选择设计一个低通FIR滤波器。
接下来,我们需要确定滤波器的规格,包括截止频率、滤波器阶数和滤波器的类型等。
根据实际需求,我们选择截止频率为2kHz、滤波器阶数为64阶,滤波器类型为汉宁窗设计。
然后,我们需要确定滤波器的系数。
在本实验中,我们使用频率采样法设计滤波器。
首先,确定归一化截止频率:将实际截止频率除以采样频率,即2kHz/1MHz=0.002、然后,根据阶数和归一化截止频率计算出滤波器的系数。
在设计完成后,我们需要将滤波器转化为差分方程。
差分方程的形式为:y[n]=b0*x[n]+b1*x[n-1]+b2*x[n-2]+...+bN*x[n-N]其中y[n]是输出序列,x[n]是输入序列,b0,b1,b2,...,bN是滤波器的系数。
接下来,我们需要实现设计好的滤波器。
可以使用现有的FIR滤波器实现库,比如MATLAB中的“fir1”函数。
将输入序列输入滤波器,即可得到滤波后的输出序列。
最后,我们需要评估滤波器的性能。
常用的评估指标有幅频响应、相频响应和滤波器的群延迟等。
可以利用这些指标来评估滤波器的性能是否达到设计要求。
比如,可以绘制滤波器的幅频响应曲线来观察滤波器在不同频率下的增益情况。
综上所述,本实验主要介绍了FIR滤波器的设计、实现以及性能评估。
通过掌握FIR滤波器的设计方法和实现步骤,可以更好地应用FIR滤波器进行信号处理和滤波。
FIR滤波器设计与实现
FIR 滤波器设计与实现一、实验目的(1)通过实验巩固FIR 滤波器的认识和理解。
(2)熟练掌握FIR 低通滤波器的窗函数设计方法。
(3)理解FIR 的具体应用。
二、实验内容在通信、信息处理以及信号检测等应用领域广泛使用滤波器进行去噪和信号的增强。
FIR 滤波器由于可实现线性相位特性以及固有的稳定特征而等到广泛应用,其典型的设计方法是窗函数设计法。
设计流程如下: (1)设定指标:截止频率c f ,过渡带宽度△f ,阻带衰减A 。
(2)求理想低通滤波器(LPF )的时域响应)(n h d 。
(3)选择窗函数()n w ,确定窗长N 。
(4)将)(n h d 右移(N-1)/ 2点并加窗获取线性相位FIR 滤波器的单位脉冲响应()n h 。
(5)求FIR 的频域响应H (e jw),分析是否满足指标。
如不满足,转(3)重新选择,否则继续。
(6)求FIR 的系统函数H (z )。
(7)依据差分方程由软件实现FIR 滤波器或依据系统函数由硬件实现。
实验要求采用哈明(Hamming)窗设计一个FIR 低通滤波器并由软件实现。
哈明窗函数如下:()⎪⎭⎫⎝⎛--=12cos 46.054.0N n n w π,10-≤≤N n ;设采样频率为kHz f s 10=。
实验中,窗长度N 和截止频率c f 应该都能调节。
具体实验内容如下:(1)设计FIR 低通滤波器(FIR_LPF )(书面进行)。
(2)依据差分方程编程实现FIR 低通滤波器。
(3)输入信号()()()n n n x ππ8.0cos 16.0sin 0.3+=到Hz f c 2000=,N=65的FIR_LPF ,求输出信号()n y ,理论计算并画出s f f ≤≤0范围输入信号()n x 和输出信号()n y 的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。
(4)输入信号()()())9.0sin(2.14.0cos 2.0sin 5.1n n n n x πππ+-=到Hz f c 1100=,N=65的FIR_LPF ,求输出信号()n y ,理论计算并画出s f f ≤≤0范围输入信号()n x 和输出信号()n y 的幅度谱,标出峰值频率,观察滤波器的实际输出结果,分析其正确性。
FIR实验报告范文
FIR实验报告范文实验报告:FIR滤波器设计与实现一、实验目的1.了解和掌握FIR滤波器的基本概念和设计原理;2. 学会使用Matlab软件设计和实现FIR滤波器;3.分析和评价不同阶数(N)和窗函数类型对FIR滤波器性能的影响。
二、实验设备和原材料1.计算机;2. Matlab 2024a 软件;3.信号发生器。
三、实验原理1.FIR滤波器概念:FIR(Finite Impulse Response)即有限脉冲响应滤波器,是一种非递归滤波器。
其输出是当前输入和过去若干个输入的加权和。
2.FIR滤波器设计原理:FIR滤波器的设计一般通过确定滤波器系数实现。
常用的设计方法有直接设计法、频率采样法、窗函数法等。
其中,窗函数法是最常用的设计方法之一窗函数法步骤:a.选择适当的滤波器阶数N;b.选择合适的窗函数;c.根据滤波器的频率响应要求,计算出窗函数长度L;d.确定滤波器的理想频率响应;e.执行窗函数和理想频率响应的点乘运算得到滤波器的系数。
四、实验步骤step1. 设计滤波器频率响应:a. 确定采样频率fs和截止频率fc;b. 根据fs和fc确定滤波器通带、阻带宽度;c.设计理想频率响应,生成指定的通带增益和阻带衰减。
step2. 确定滤波器阶数和窗函数类型:a.根据滤波器的过渡带宽度、通带纹波和阻带衰减要求,选择适当的滤波器阶数N;b. 对于给定的滤波器长度L和滤波器阶数N,结合通带和阻带宽度,借助Matlab软件选择合适的窗函数类型。
step3. 确定窗函数长度L:根据滤波器的过渡带宽度,计算滤波器的窗函数长度L。
一般,L=N+1step4. 生成滤波器系数:通过窗函数与理想频率响应的点乘运算,生成滤波器的系数。
step5. 滤波器模拟与实现:a. 在Matlab软件中,使用fir1函数生成滤波器系数h;b. 使用filter函数实现滤波器的模拟和实现。
五、实验结果与分析本实验选择了截止频率fc = 1000Hz,采样频率fs = 8000Hz。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验六 FIR滤波器结构的实现
实验目的:
1、 熟悉FIR滤波器结构横截形、级联型以及线性相位型结构的数学表达形式及结构流
图;
2、 熟悉FIR滤波器结构横截形、级联型以及线性相位型结构的基本特点,并能根据给
定的传输函数选择合适的结构;
3、 掌握根据FIR滤波器系统传输函数求FIR滤波器三种结构的方法。
实验结果:
M1文件:
a=[1];
b=[1,0,0,0,16.0625,0,0,0,1];
[sos,G]=tf2sos(b,a);
>> sos
sos =1.0000 -2.8284 4.0000 1.0000 0 0
1.0000 2.8284 4.0000 1.0000 0 0
1.0000 -0.7071 0.2500 1.0000 0 0
1.0000 0.7071 0.2500 1.0000 0 0
>> G
G = 1
直接形式结构:
Y(n)X(n)
Z4Z
4
16.0625
线性相位形式结构:
Z
4
Z
4
Z
4
X(n)
Y(n)
16.0625
级联形式结构:
Z
2
Z1Z2Z1Z2Z1Z2Z
1
X(n)Y(n)
-2.82844.0000-0.70710.25002.8284
0.7071
4.00000.2500
M文件:
a=[1 0 0 0 0 0 0 0 0 ];
b=[1 0 0 0 16.0625 0 0 0 1];
w=[0:1:500]*pi/500;
x1=1+16.0625*exp(-4*j*w)+exp(-8*j*w);
x2=1;
x=x1./x2;
magx=abs(x);
angx=angle(x).*180/pi;
subplot(2,2,1);
impz(b,a,15);
title('冲击响应');
subplot(2,2,3);
zplane(b,a);
title('零极点图');
subplot(2,2,2);
plot(w/pi,magx);
title('幅度部分');
ylabel('振幅');
subplot(2,2,4);
plot(w/pi,angx);
title('相位部分');
xlabel('以pi为单位的频率');
ylabel('相位');
>> sy6_1
051005101520n (samples) Amplitude冲击响应-2-1012-1018Real PartImaginary Part零极点图00.51
14
16
18
20
幅度部分
振
幅
00.51
-200
-100
0
100
200
相位部分
以pi为单位的频率
相
位
M文件:
a=[1];
b=[1,0,0,0,16.0625,0,0,0,1];
freqz(b,a,51,'whole')
>> sy6_2
思考回答:
答:FIR滤波器的结构有:直接型(横截型、卷积型)结构,级联型结构,频率抽样型
结构,快速卷积结构,线性相位形式结构。