实验五 FIR数字滤波器的设计
- 格式:pdf
- 大小:208.83 KB
- 文档页数:7
实验5 FIR滤波器设计与实现以下为参考中文实验指导,原文请参见:\GuideSlide\DSP_Primer\chinese\print下:Xilinx_DSP_workbook_A4.pdf5.FIR滤波器在这一部分中,我们将利用多种不同方法实现FIR滤波器。
为了说明问题,首先来看一下如下图所示的简单的四抽头FIR滤波器:滤波器的系数按如下选择:w0= -10,w1= 20,w2= 50,w3= 80 [5.1] 这些系数并不是针对某个具体的频率响应而设计的,如此选择只是为了说明问题。
5.1.字长增长为了说明字长效应的影响,我们当然只能选择有限精度的信号。
在本例中,我们让输入信号为2位整数。
因此信号x[k]的范围在-2和1之间。
在下面各实验中,我们将考虑滤波器系数为8位的情况,即w的范围在-128和+127之间实验 5.1简单FIR滤波器打开以下系统:\filter\cut_set\FIR1\FIR1.mdl(a)在上图中画出关键路径,并回答在关键路径上共有多少乘法单元和加法单元。
答:(b)运行该系统并在示波器中观察其冲激响应。
(c) 观察加法链上的字长变化并验证字长由8位增长到10位。
(d) 使用System Generator 模块生成所需ISE 工程文件。
打开ISE 工程,对该设计经行时序模拟以及布局与布线(Place & Route ),然后完成下列表格。
(注意在本例中并没有使用到内嵌乘法器)实验 5.2 时序变更(Retiming)打开以下系统:\filter\cut_set\FIR2\FIR2.mdl对图中上面的系统应用cut sets 分割得到的割集进行适当变换便得到了下面的系统。
变换后的系统的关键路径长度被大大缩减。
但同时需要注意的是,系统的延迟增加了。
(a) 运行该系统并在示波器中观察其冲激响应。
可以看出该系统与之前的系统相比其关键路径大大缩短。
新系统的关键路径长度是多少? 答:(b) 使用System Generator 模块生成所需ISE 工程文件。
实验五FIR数字滤波器的设计FIR数字滤波器(Finite Impulse Response)是一种数字滤波器,它的输出仅由有限数量的输入样本决定。
设计FIR数字滤波器的步骤如下:1.确定滤波器的要求:首先需要明确滤波器的频率响应、截止频率、通带和阻带的幅频响应等要求。
2.选择滤波器类型:根据实际需求选择合适的滤波器类型,如低通滤波器、高通滤波器、带通滤波器或带阻滤波器等。
3.确定滤波器的阶数:根据滤波器类型和要求,确定滤波器的阶数。
通常情况下,滤波器的阶数越高,能够实现更陡峭的频率响应,但会引入更多的计算复杂度。
4.设计滤波器的理想频率响应:根据滤波器的要求和类型,设计滤波器的理想频率响应。
可以使用常用的频率响应设计方法,如窗函数法、最小最大法或线性相位法等。
这些方法可以实现平滑的频率响应或者良好的阻带衰减。
5.确定滤波器的系数:根据设计的理想频率响应,通过反变换或优化算法确定滤波器的系数。
常用的优化算法包括频域方法、时域方法、最小二乘法或最小相位法等。
6.实现滤波器:将所得的滤波器系数转化为滤波器的差分方程形式或直接计算滤波器的频域响应。
7.评估滤波器性能:使用合适的测试信号输入滤波器,并对滤波器的输出进行评估。
可以使用指标,如频率响应曲线、幅度响应误差、相位响应误差或阻带衰减等指标来评估滤波器性能。
8.优化滤波器性能:根据评估结果,进行必要的修改和优化设计,以满足滤波器的要求。
通过以上步骤,可以设计出满足需求的FIR数字滤波器。
需要注意的是,FIR数字滤波器设计的复杂度和性能需要权衡与平衡,以满足实际应用的要求。
FIR滤波器设计实验报告实验目的:学习和掌握有限脉冲响应(FIR)滤波器的设计方法,了解数字滤波器的原理和实现。
实验器材:计算机、Matlab软件、FIR滤波器设计工具。
实验原理:1.确定滤波器的规格:包括通带频率、阻带频率、通带纹波、阻带衰减等参数。
2. 根据滤波器规格选择合适的FIR滤波器设计方法:常见的设计方法有窗函数法、频域近似法、Remez算法等。
3.根据设计方法计算FIR滤波器的系数:根据设计方法的不同,计算滤波器的系数也有所区别。
4.对FIR滤波器进行验证和优化:可以通过频率响应、幅频特性等指标对滤波器进行调整,并进行验证。
实验步骤:1.确定滤波器规格:设置通带频率为3kHz,阻带频率为5kHz,通带纹波为0.01dB,阻带衰减为40dB。
2.选择窗函数法进行FIR滤波器设计。
3.根据滤波器规格计算滤波器的阶数。
4.根据阶数选择合适的窗函数。
5.计算FIR滤波器的系数。
6.通过绘制滤波器的频率响应曲线进行验证。
7.分析滤波器的性能,并对滤波器进行优化。
实验结果:根据以上步骤进行设计和计算,得到了FIR滤波器的系数,利用Matlab绘制了滤波器的频率响应曲线。
分析和讨论:根据频率响应曲线,可以看出滤波器在通带频率范围内有较好的衰减效果,滤波器的阻带频率范围内衰减也满足要求。
但是在通带和阻带之间存在一定的过渡带,可能会对信号造成一部分的失真。
因此,可以考虑进一步优化滤波器的设计,使其在通带和阻带之间的过渡带更加平滑,减小失真的影响。
结论:通过本次实验,我们学习并掌握了FIR滤波器的设计方法,了解了数字滤波器的原理和实现。
在实际应用中,可以根据需要选择合适的FIR滤波器设计方法,并根据滤波器的规格进行计算和调整。
通过不断优化和验证,可以得到满足要求的FIR滤波器,实现对数字信号的滤波处理。
fir滤波器实验报告fir滤波器实验报告引言:滤波器是信号处理中常用的工具,它可以对信号进行频率选择性处理。
在数字信号处理中,FIR(Finite Impulse Response)滤波器是一种常见的滤波器类型。
本实验旨在通过设计和实现FIR滤波器,探索其在信号处理中的应用。
一、实验目的本实验的主要目的有以下几点:1. 了解FIR滤波器的基本原理和特性;2. 掌握FIR滤波器的设计方法;3. 实现FIR滤波器并对信号进行处理,观察滤波效果。
二、实验原理1. FIR滤波器的原理FIR滤波器是一种非递归滤波器,其输出仅依赖于输入和滤波器的系数。
它的基本原理是将输入信号与滤波器的冲激响应进行卷积运算,得到输出信号。
FIR滤波器的冲激响应是有限长度的,因此称为有限脉冲响应滤波器。
2. FIR滤波器的设计方法FIR滤波器的设计方法有很多种,常用的包括窗函数法、频率采样法和最小二乘法。
在本实验中,我们将使用窗函数法进行FIR滤波器的设计。
具体步骤如下:(1)选择滤波器的阶数和截止频率;(2)选择适当的窗函数,如矩形窗、汉宁窗等;(3)根据选择的窗函数和截止频率,计算滤波器的系数;(4)利用计算得到的系数实现FIR滤波器。
三、实验步骤1. 确定滤波器的阶数和截止频率,以及采样频率;2. 选择合适的窗函数,并计算滤波器的系数;3. 利用计算得到的系数实现FIR滤波器;4. 准备待处理的信号,如音频信号或图像信号;5. 将待处理的信号输入FIR滤波器,观察滤波效果;6. 调整滤波器的参数,如阶数和截止频率,观察滤波效果的变化。
四、实验结果与分析在实验中,我们选择了一个音频信号作为待处理信号,设计了一个10阶的FIR滤波器,截止频率为1kHz,采样频率为8kHz,并使用汉宁窗进行滤波器系数的计算。
经过滤波处理后,观察到音频信号的高频部分被有效地滤除,保留了低频部分,使得音频信号听起来更加柔和。
通过调整滤波器的阶数和截止频率,我们可以进一步调节滤波效果,使得音频信号的音色发生变化。
实验五FIR数字滤波器的设计
FIR数字滤波器的设计可以分为以下几个步骤:
1.确定滤波器的类型和规格:根据实际需求确定滤波器的类型(如低通、高通、带通等)以及滤波器的截止频率、通带衰减以及阻带衰减等规格。
2.选择滤波器的窗函数:根据滤波器的规格,选择合适的窗函数(如矩形窗、汉宁窗、布莱克曼窗等)。
窗函数的选择会影响滤波器的频率响应以及滤波器的过渡带宽度等特性。
3.确定滤波器的阶数:根据滤波器的规格和窗函数的选择,确定滤波器的阶数。
通常来说,滤波器的阶数越高,滤波器的性能越好,但相应的计算和处理也会更加复杂。
4.设计滤波器的频率响应:通过在频率域中设计滤波器的频率响应来满足滤波器的规格要求。
可以使用频率采样法、窗函数法或优化算法等方法。
5. 将频率响应转换为差分方程:通过逆Fourier变换或其他变换方法,将频率响应转换为滤波器的差分方程表示。
6.量化滤波器的系数:将差分方程中的连续系数离散化为滤波器的实际系数。
7.实现滤波器:使用计算机编程、数字信号处理芯片或FPGA等方式实现滤波器的功能。
8.测试滤波器性能:通过输入一组测试信号并观察输出信号,来验证滤波器的性能是否符合设计要求。
需要注意的是,FIR数字滤波器的设计涉及到频率域和时域的转换,以及滤波器系数的选择和调整等过程,需要一定的信号处理和数学背景知识。
fir数字滤波器设计实验报告Title: FIR Digital Filter Design Experiment ReportAbstract:This experiment aims to design a Finite Impulse Response (FIR) digital filter using MATLAB software. The FIR filter is a type of digital filter that is widely used in signal processing applications. In this experiment, we will design a low-pass FIR filter with specified frequency response characteristics and then implement it using MATLAB.Introduction:Digital filters are essential components in signal processing systems. They are used to remove unwanted noise, extract specific frequency components, and improve the overall quality of signals. FIR filters are a popular choice due to their linear phase response and stability. In this experiment, we will focus on designing a low-pass FIR filter, which attenuates high-frequency components while passing low-frequency components.Methodology:1. Specification of filter characteristics: The first step is to specify the desired frequency response characteristics of the FIR filter, such as the cutoff frequency and the stopband attenuation.2. Design of filter coefficients: Using MATLAB, the filter coefficients are calculated using the specified filter characteristics. This involves determining the filter length and the coefficients that will achieve the desired frequency response.3. Implementation of the filter: The designed filter coefficients are then used to implement the FIR filter in MATLAB. The input signal is passed through the filter to observe the filtering effect.Results:The designed FIR filter successfully meets the specified frequency response characteristics. The filter effectively attenuates high-frequency components while passing low-frequency components, as intended. The implementation of the filter in MATLAB also demonstrates its practical application in signal processing.Conclusion:In conclusion, this experiment has provided hands-on experience in designing and implementing a low-pass FIR digital filter. The use of MATLAB software has facilitated the process and allowed for a deeper understanding of digital filter design. FIR filters are powerful tools in signal processing and their design and implementation are crucial skills for engineers and researchers in various fields. Overall, this experiment has provided valuable insights into the design and implementation of FIR digital filters, and has enhanced our understanding of their applications in signal processing.。
实验四、FIR数字滤波器的设计一、实验目的1. 掌握用窗函数法,频率采样法及优化设计法设计FIR滤波器的原理及方法,熟悉响应的计算机编程;2.熟悉线性相位FIR滤波器的幅频特性和相频特性;3. 了解各种不同窗函数对滤波器性能的影响。
二、实验原理与方法线性相位实系数FIR滤波器按其N值奇偶和h(n)的奇偶对称性分为四种:1. h(n)为偶对称,N为奇数H(e jω)的幅值关于ω=0,π,2π成偶对称。
2. h(n)为偶对称,N为偶数H(e jω)的幅值关于ω=π成奇对称,不适合作高通。
3. h(n)为奇对称,N为奇数H(e jω)的幅值关于ω=0,π,2π成奇对称,不适合作高通和低通。
4. h(n)为奇对称,N为偶数H(e jω)ω=0、2π=0,不适合作低通。
1. 窗口法窗函数法设计线性相位FIR滤波器步骤•确定数字滤波器的性能要求:临界频率{ωk},滤波器单位脉冲响应长度N;•根据性能要求,合理选择单位脉冲响应h(n)的奇偶对称性,从而确定理想频率响应H d(e jω)的幅频特性和相频特性;•求理想单位脉冲响应h d(n),在实际计算中,可对H d(e jω)按M(M远大于N)点等距离采样,并对其求IDFT得h M(n),用h M(n)代替h d(n);•选择适当的窗函数w(n),根据h(n)= h d(n)w(n)求所需设计的FIR滤波器单位脉冲响应;•求H(e jω),分析其幅频特性,若不满足要求,可适当改变窗函数形式或长度N,重复上述设计过程,以得到满意的结果。
窗函数的傅式变换W(e jω)的主瓣决定了H(e jω)过渡带宽。
W(e jω)的旁瓣大小和多少决定了H(e jω)在通带和阻带范围内波动幅度,常用的几种窗函数有:•矩形窗w(n)=R N(n);•Hanning窗;•Hamming窗;•Blackmen窗;•Kaiser窗。
式中I o(x)为零阶贝塞尔函数。
2. 频率采样法频率采样法是从频域出发,将给定的理想频率响应Hd(e jω)加以等间隔采样然后以此Hd(k)作为实际FIR数字滤波器的频率特性的采样值H(k),即令由H(k)通过IDFT可得有限长序列h(n)将上式代入到Z变换中去可得其中Φ(ω)是内插函数3. FIR滤波器的优化设计FIR滤波器的优化设计是按照最大误差最小化准则,使所设计的频响与理想频响之间的最大误差,在通带和阻带范围均为最小,而且是等波动逼近的。
FIR 数字滤波器的设计一、实验内容:设计一个FIR 滤波器。
其中窗函数选用凯赛窗,滤波器的长度可变(NF=2M )。
分别设计低通、高通、带通、带阻4种滤波器。
二、FIR 数字滤波器:1、FIR 数字滤波器的特点:是选择有限还是无限长的滤波器主要取决于每种类型滤波器的优点在设计问题中的重要性。
对于FIR 滤波器不存在完整的设计方程。
虽然可以直接用窗函数法,但是为了满足预定的技术指标有可能需要作一些迭代。
用完整的公式来设计IIR 滤波器只限于低通、高通、带通、带阻少数几种滤波器。
而且,这些逼近方法通常没有考虑滤波器的相位响应。
所以,虽然我们可以用相当简单的计算方法来得到幅度响应很好的椭圆低通滤波器,但是群延迟响应将会非常差,特别是在频带边缘处。
而FIR 滤波器可以有精确的线性位移。
而且,窗函数法和大多数算法设计法都有可能逼近比较任意的频率响应特性,但所遇到的困难要比在低通滤波器设计中遇到的稍大一些。
另外,FIR 滤波器的设计问题要比IIR 的有更多的可控之处。
2、窗函数的基本思想与特点:它是设计FIR 滤波器的最简单的方法、它的频率响应()[]j j nd dn H e h n eωω∞-=-∞=∑式中,[]d h n 是对应的冲激响应序列,它可以借助()j d H e ω表示为[]()12jj nd dh n H e e d πωωπωπ-=⎰。
这种系统具有非因果的和无限长的冲激响应。
得到这种系统的因果FIR 滤波器的最直接的方法是使用“窗口”截短该理想冲激响应。
通过在截短时保留冲激响应的中间部分,可以得到线性相位的FIR 滤波器。
3、凯赛窗简介: 它定义为其他,00,)(])]/)[(1([{][02/120Mn I n I n ≤≤--=βααβω 式中)(,∙=02/I M α表示第一类零阶修正贝赛尔函数。
凯赛窗有两个参数:β参数是0.40.1102(8.7),500.5842(21)0.07886(21),50210,21ααβαααα->⎧⎪=-+-≥≥⎨⎪<⎩其中,20log αδ=-是以分贝形式表示的阻带衰减。
dsp实验报告 fir实验报告DSP实验报告:FIR实验报告引言:数字信号处理(Digital Signal Processing,DSP)是一门研究如何对数字信号进行处理和处理的学科。
其中,滤波器是数字信号处理中最常用的技术之一。
本实验报告旨在介绍FIR(Finite Impulse Response)滤波器的原理、设计和实现过程,并通过实验验证其性能。
一、FIR滤波器的原理FIR滤波器是一种线性时不变系统,其输出信号仅由输入信号的有限个历史样本决定。
其基本原理是将输入信号与滤波器的冲激响应进行卷积运算,以实现对输入信号的滤波处理。
二、FIR滤波器的设计方法1. 理想低通滤波器设计方法理想低通滤波器的频率响应在截止频率之前为1,在截止频率之后为0。
通过对理想低通滤波器的频率响应进行采样和离散化,可以得到FIR滤波器的系数序列。
2. 窗函数法设计FIR滤波器窗函数法是一种常用的FIR滤波器设计方法。
其基本思想是将理想低通滤波器的频率响应与一个窗函数进行乘积,从而得到实际可实现的FIR滤波器的系数序列。
常用的窗函数有矩形窗、汉宁窗、汉明窗等。
三、FIR滤波器的实现FIR滤波器可以通过直接形式和间接形式两种方式实现。
直接形式是按照滤波器的差分方程进行计算,而间接形式则是利用FFT(Fast Fourier Transform)算法将滤波器的系数序列转换为频域进行计算。
四、FIR滤波器的性能评估1. 幅频响应幅频响应是评估FIR滤波器性能的重要指标之一。
通过绘制滤波器的幅频响应曲线,可以直观地观察滤波器在不同频率下的衰减情况。
2. 相频响应相频响应是评估FIR滤波器性能的另一个重要指标。
相频响应描述了滤波器对输入信号的相位延迟情况,对于某些应用场景,相频响应的稳定性和线性性非常重要。
3. 稳态误差稳态误差是指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。
实验五FIR数字滤波器的设计一.实验目的(1)掌握用窗函数法,频率采样法及优化设计法设计FIR滤波器的原理及方法。
(2)熟悉线性相位FIR滤波器的幅频特性和相频特性。
(3)了解各种不同窗函数对滤波器性能的影响。
二.实验内容(1)N=45,计算并画出矩形窗、汉明窗、布莱克曼窗的归一化的幅度谱,并比较各自的主要特点。
clear all;N=45;wn1=kaiser(N,0);wn2=hamming(N);wn3=blackman(N);[h1,w1]=freqz(wn1,N);[h2,w2]=freqz(wn2,N);[h3,w3]=freqz(wn3,N);plot(w1/pi,20*log10(abs(h1)),'-',w2/pi,20*log10(abs(h2)),'--',w3/pi,20*log10(abs(h3)),':');axis([0,1,-120,10]);grid;xlabel('归一化频率/\pi');ylabel('幅度/dB');title('三种窗口函数');legend('矩形窗','汉明窗','布莱克曼窗',3);分析:(2)N=15,带通滤波器的两个通带边界分别是ω1=0.3π,ω2=0.5π。
用汉宁窗设计此线性相位带通滤波器,观察它的实际3dB和20dB带宽。
N=45,重复这一设计,观察幅频和相位特性的变化,注意长度N变化的影响。
clear all;N=15;h=fir1(N-1,[0.30.5],'bandpass',hanning(N));figure(1)freqz(h,1)title('N=15,汉宁窗');N=45;h=fir1(N-1,[0.30.5],'bandpass',hanning(N));figure(2)freqz(h,1)title('N=45,汉宁窗');分析:(3)分别改用矩形窗和布莱克曼窗,设计(2)中的带通滤波器,观察并记录窗函数对滤波器幅频特性的影响,比较三种窗的特点。
clear all;%矩形窗N=15;h=fir1(N-1,[0.30.5],'bandpass',kaiser(N,0));[h1,w1]=freqz(h,1);subplot(2,1,1);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi');ylabel('幅度/dB');title('N=15,矩形窗');N=45;h=fir1(N-1,[0.30.5],'bandpass',kaiser(N,0));[h1,w1]=freqz(h,1);subplot(2,1,2);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi');ylabel('幅度/dB');title('N=45,矩形窗');clear all;%布莱克曼窗N=15;h=fir1(N-1,[0.30.5],'bandpass',blackman(N));[h1,w1]=freqz(h,1);subplot(2,1,1);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi');ylabel('幅度/dB');title('N=15,布莱克曼窗');N=45;h=fir1(N-1,[0.30.5],'bandpass',blackman(N));[h1,w1]=freqz(h,1);subplot(2,1,2);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi');ylabel('幅度/dB');title('N=45,布莱克曼窗');分析:(4)用Kaiser窗设计一专用线性相位滤波器,N=40,当β=4、6、10时,分别设计、比较它们的幅频和相频特性,注意β取不同值时的影响。
clear all;N=40;f=[00.20.20.40.40.60.60.80.81];a=[0011001100];beta=4;h=fir2(N-1,f,a,kaiser(N,beta));[h1,w1]=freqz(h,1);subplot(3,1,1);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi');ylabel('幅度/dB');title('beta=4时凯塞窗专用线性相位滤波器');beta=6;h=fir2(N-1,f,a,kaiser(N,beta));[h1,w1]=freqz(h,1);subplot(3,1,2);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi');ylabel('幅度/dB');title('beta=6时凯塞窗专用线性相位滤波器');beta=10;h=fir2(N-1,f,a,kaiser(N,beta));[h1,w1]=freqz(h,1);subplot(3,1,3);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;xlabel('归一化频率/\pi');ylabel('幅度/dB');title('beta=10时凯塞窗专用线性相位滤波器');分析:(5)用频率采样法设计(4)中的滤波器,过渡带分别设一个过渡点,令H(k)=0.5。
比较两种不同方法的结果。
clear all;N=40;Hk=[zeros(1,3)0.5ones(1,5)0.5zeros(1,1)0.5ones(1,5)0.5...zeros(1,5)-0.5-ones(1,5)-0.5zeros(1,1)-ones(1,5)-0.5zeros(1,3)];k=0:N-1;hn=real(ifft(Hk.*exp(-j*pi*(N-1)*k/N)));[H w]=freqz(hn,1);plot(w/pi,20*log10(abs(H)));axis([01-8010]);grid;xlabel('归一化频率/\pi')ylabel('幅度/dB')title('频率采样法设计专用线性相位滤波器');(5)的分析归入(6)中,将三种滤波器一起对比(6)用雷米兹(Remez)交替算法设计(4)中的滤波器,并比较(4)、(5)、(6)三种不同方法的结果。
clear all;N=40;f=[00.150.20.40.450.550.60.80.851];a=[0011001100];wt=[21212];b=remez(N-1,f,a,wt);[h,w]=freqz(b,1);plot(w/pi,20*log10(abs(h)));axis([01-7010]);grid;xlabel('归一化频率/\pi')ylabel('幅度/dB')title('雷米兹交替算法设计专用线性相位滤波器');分析:(7)利用雷米兹交替算法,设计一个线性相位高通FIR数字滤波器,其指标为:通带边界频率f c=800Hz,阻带边界频率f r=500Hz,通带波动δ=1dB,阻带最小衰减At=40dB,采样频率f s=5000Hz。
clear all;fedge=[500800];mval=[01];dev=[0.010.109];fs=5000;[N,fpts,mag,wt]=remezord(fedge,mval,dev,fs);b=remez(N,fpts,mag,wt);[h,w]=freqz(b,1);plot(w*2500/pi,20*log10(abs(h)));axis([02500-8010]);grid;xlabel('频率/Hz')ylabel('幅度/dB')title('雷米兹交替算法设计线性相位高通FIR数字滤波器');三.思考题(1)定性地说明用本实验程序设计的FIR滤波器的3dB截止频率在什么位置?它等于理想频率响应H d(e jω)的截止频率吗?(2)如果没有给定h(n)的长度N,而是给定了通带边缘截止频率ωc和阻带临界频率ωp,以及相应的衰减,能根据这些条件用窗函数法设计线性相位FIR低通滤波器吗?四.实验总结。