第5章有限长单位脉冲响应(FIR)滤波器的实现介绍

合集下载

有限长单位脉冲响应(FIR)滤波器的设计方法-第一节

有限长单位脉冲响应(FIR)滤波器的设计方法-第一节

在通信系统中的应用
信号调制与解调
频分复用
FIR滤波器在通信系统的信号调制与解 调过程中起到关键作用,能够实现信 号的频谱搬移。
FIR滤波器可以实现频分复用,将多个 信号调制到不同的频段上,实现多路 信号同时传输。
信道均衡
在通信过程中,信号经过信道时会受 到各种干扰和失真,FIR滤波器可以用 于信道均衡,减小信号失真。
特点
稳定性好、易于实现、无递归结 构、相位线性等。
FIR滤波器的应用领域
01
02
03
信号处理
FIR滤波器广泛应用于信 号去噪、滤波、增强等处 理。
图像处理
在图像处理中,FIR滤波 器用于图像平滑、锐化等 操作。
通信系统
FIR滤波器用于通信系统 的调制、解调、信道均衡 等。
FIR滤波器与IIR滤波器的比较
群时延
群时延
群时延是描述滤波器对信号延迟影响 的参数。在通信和音频处理中,群时 延的稳定性非常重要,在设计FIR 滤波器时考虑使用特定的窗函数或优 化算法,以减小信号通过滤波器时的 延迟。
幅度响应
幅度响应
幅度响应描述了滤波器对不同频率信号的衰减程度。理想的幅度响应应该是对 所有频率成分具有相同的衰减,但在实际中很难实现。
VS
总结词:计算量较小,需要较高的存 储空间和通信开销,适用于大规模数 据和分布式系统。
05
FIR滤波器的应用实例
在音频处理中的应用
音频信号降噪
FIR滤波器能够有效地去除 音频信号中的噪声,提高 音频质量。
音频压缩
通过FIR滤波器对音频信号 进行压缩,可以减小音频 文件的大小,便于存储和 传输。
最优化方法
最优化方法是一种基于数学优化的FIR滤波器设计方法, 其基本思想是通过优化算法来求解FIR滤波器的系数,

有限长单位脉冲响应(FIR)滤波器的设计方法-第三节

有限长单位脉冲响应(FIR)滤波器的设计方法-第三节
有限长单位脉冲响应(FIR)滤波器 的设计方法-第三节
目录
• FIR滤波器的基本概念 • FIR滤波器的设计方法 • FIR滤波器的实现 • FIR滤波器的性能评估 • FIR滤波器的应用实例
01 FIR滤波器的基本概念
定义与特性
定义
FIR滤波器,即有限长单位脉冲响 应滤波器,是指系统在单位阶跃 信号作用下,输出为有限长脉冲 响应序列的数字滤波器。
群延迟
群延迟是滤波器对信号中 不同频率成分的延迟时间, 反映了滤波器对信号的时 延效应。
重要性
群延迟特性对于实时信号 处理和通信系统中的同步 非常重要。
设计准则
为了减小群延迟,FIR滤波 器应具有较小的阶数和较 宽的过渡带。
频率响应特性
频率响应
FIR滤波器的频率响应决定了其 对不同频率成分的增益和相位响
频率采样法
01
频率采样法是一种基于频率域的FIR滤波器设计方法,其基本思想是在频域内对 给定的理想滤波器的频率响应进行采样,然后通过逆变换得到滤波器的系数。
02
频率采样法的主要步骤包括确定采样点、计算滤波器系数和验证滤波器性能。
03
频率采样法的优点是能够准确地设计具有特定频率响应的滤波器,适用于高通 和带通滤波器的设计。
特性
其特点是系统函数在有限时间内 为零,即系统的阶跃响应不随时 间无限延续。
FIR滤波器的优势
01
02
03
稳定性
由于FIR滤波器的系统函 数在有限时间内为零,因 此其系统是稳定的。
无递归运算
FIR滤波器的计算只涉及 加法、乘法和延时运算, 不涉及递归运算,因此计 算相对简单。
线性相位
FIR滤波器具有严格的线 性相位特性,能够保证信 号在处理过程中不发生失 真或变形。

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

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

实验四FIR数字滤波器设计与软件实现
实验目的:
掌握FIR数字滤波器的设计与软件实现方法,了解滤波器的概念与基
本原理。

实验原理:
FIR数字滤波器全称为有限脉冲响应数字滤波器,其特点是具有有限
长度的脉冲响应。

滤波器通过一系列加权系数乘以输入信号的延迟值,并
将这些值相加得到输出信号。

FIR滤波器的频率响应由滤波器系数所决定。

实验步骤:
1.确定所需的滤波器的设计规格,包括截止频率、通带波纹、阻带衰
减等。

2.选择适当的滤波器设计方法,如窗函数、最佳近似法、最小二乘法等。

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

4.在MATLAB环境下,使用滤波器的系数实现滤波器。

5.输入所需滤波的信号,经过滤波器进行滤波处理。

6.分析输出的滤波信号,观察滤波效果是否符合设计要求。

实验要求:
1.完成FIR数字滤波器的设计和软件实现。

2.对比不同设计方法得到的滤波器性能差异。

3.分析滤波结果,判断滤波器是否满足设计要求。

实验器材与软件:
1.个人电脑;
2.MATLAB软件。

实验结果:
根据滤波器设计规格和所选的设计方法,得到一组滤波器系数。

通过
将滤波器系数应用于输入信号,得到输出滤波信号。

根据输出信号的频率
响应、通带波纹、阻带衰减等指标,评估滤波器的性能。

实验注意事项:
1.在选择设计方法时,需要根据滤波器要求和实际情况进行合理选择。

2.在滤波器实现过程中,需要注意滤波器系数的计算和应用。

3.在实验过程中,注意信号的选择和滤波结果的评估方法。

第5章 有限长单位脉冲响应(FIR)滤波器的实现

第5章  有限长单位脉冲响应(FIR)滤波器的实现

17
4.
h(n)奇对称,h(n)=-h(N-1-n),N为偶数
j N N 1 1 j 2 2 2
He
e
N 1 2hn sin n n 0 h(n) 2
3 0 1 2 4 5
h(n) 奇对称
图5.1.1 线性相位特性
8
5.1.2 线性相位FIR滤波器的幅度特性
对于线性相位FIR 滤波器h(n)有奇对 称和偶对称两种情 况,且每种情况包 含了N为奇数和偶 数,所以共分四种 情况:
h(n) h(n)
0
1
2
3 4
5
6ห้องสมุดไป่ตู้
n
0
1
2
3
4
5
n
(a) h(n) h(n)
(b)
4 1 2 3
16
N 1 2 H c(n) sin n n 1 所以 N 1 n c ( n) 2h 2
由于 对这些点也奇对称,有
点呈奇对称,所以 。
由于 时, 相当 于H(z)在 处有两个零点,不能用于 的滤波器设计,故不能用作低通、高通和带阻滤波器的设计。
( )
式中为常数,表示此时通过这一系统的各频率分量的时
延; 系统的群时延为:
d ( ) g d
5
线性相位FIR滤波器的DTFT为
H e j h n e jn H e j ( ) H e j
5
6
3
4
5
n
0
1
2
n
(c)
(d)
图5.1.2
线性相位FIR滤波器h(n)的四种对称形式

FIR数字滤波器的基本原理及设计方法

FIR数字滤波器的基本原理及设计方法

第一章 FIR 数字滤波器的基本原理及设计方法有限长单位脉冲响应数字滤波器(FIRDF ,Finite Impulse Response Digital Filter )的最大优点是可以实现线性相位滤波。

而IIRDF 主要对幅频特性进行逼近,相频特性会存在不同程度非线性。

我们知道,无失真传输与滤波处理的条件是,在信号的有效频谱范围内系统幅频响应为常数,相频响应具有线性相位。

在数字通信和图像处理与传输等应用场合都要求滤波器具有线性相位特性。

另外FIRDF 是全零点滤波器,硬件和软件实现结构简单,不用考虑稳定性问题。

所以,FIRDF 是一种很重要的滤波器,在数字信号处理领域得到广泛应用。

当幅频特性指标相同时,FIRDF 的阶数比IIRDF 高的多,但是同时考虑幅频特性指标和线性相位要求时,IIRDF 要附加复杂的相位校正网络,而且难以实现严格线性相位特性。

所以,在要求线性相位滤波的应用场合,一般都用FIRDF 。

FIRDF 的设计方法主要有两类:第一类是基于逼近理想滤波器特性的方法,包括窗函数法,频率采样法和等波纹最佳逼近法。

第二类是最优设计法,我们主要讨论第一类设计法,侧重与滤波器的设计方法和相应的MATLAB 工具箱函数的介绍。

FIR 数字滤波器的设计方法有窗函数法、频率采样法和基于firls 函数和remez 函数的最优化方法。

MATLAB 语言中的数字信号处理工具箱,提供了一些滤波器的函数,使FIR 滤波器的运算更加方便和快捷。

在MATLAB 中提供的滤波函数有fir1(),此函数以经典的方法实现加窗线性相位FIR 数字滤波器设计,可以设计出低通、高通、带通和带阻滤波器;fir2函数设计的FIR 滤波器,其滤波的频率特性由矢量f 和m 决定,f 和m 分别为滤波器的期望幅频响应的频率相量和幅值相量。

Firls()和remez()的基本格式用于设计I 型和II 型线性相位FIR 滤波器,I 型和II 型的区别是偶函数还是奇函数。

单片机 fir滤波器算法实现

单片机 fir滤波器算法实现

单片机 FIR 滤波器算法实现1. 引言FIR(Finite Impulse Response)滤波器是一种常见的数字滤波器,它在信号处理中起到了重要的作用。

本文将介绍单片机上如何实现 FIR 滤波器算法。

2. FIR 滤波器原理FIR 滤波器是一种线性时不变(LTI)系统,其输出信号是输入信号与滤波器的冲激响应进行卷积运算得到的。

FIR 滤波器的冲激响应是一个有限长度的序列,因此称之为有限脉冲响应滤波器。

FIR 滤波器的输入输出关系可以表示为以下公式:y[n] = b[0]*x[n] + b[1]*x[n-1] + b[2]*x[n-2] + ... + b[N]*x[n-N]其中,y[n] 是输出信号,x[n] 是输入信号,b[0] 到 b[N] 是滤波器的系数。

3. 单片机上的 FIR 滤波器实现在单片机上实现 FIR 滤波器算法需要以下步骤:3.1. 定义滤波器的系数首先需要定义 FIR 滤波器的系数。

系数的选择决定了滤波器的特性,可以根据具体的需求进行设计。

常见的系数设计方法包括窗函数法、频率采样法等。

3.2. 定义输入输出缓冲区为了实现滤波器的运算,需要定义输入和输出的缓冲区。

输入缓冲区用于存储输入信号的历史数据,输出缓冲区用于存储滤波器的输出结果。

3.3. 实现滤波器算法根据 FIR 滤波器的原理,可以使用循环结构实现滤波器的算法。

具体的实现过程如下: 1. 读取输入信号 x[n]; 2. 将输入信号保存到输入缓冲区; 3. 使用滤波器的系数和输入缓冲区的数据进行卷积运算,得到输出信号 y[n]; 4. 将输出信号保存到输出缓冲区; 5. 更新输入缓冲区的数据,将最新的输入信号放到缓冲区的开头; 6. 重复步骤 1 到步骤 5,直到处理完所有的输入信号。

3.4. 实现滤波器的输入输出接口为了方便使用滤波器,可以实现输入输出接口,使得用户能够方便地输入输出信号。

输入接口可以从传感器、外部设备等获取输入信号,输出接口可以将输出信号发送到显示器、存储设备等。

fir 滤波器的原理

fir 滤波器的原理FIR滤波器的原理引言:数字信号处理中,滤波器是一种常用的信号处理技术,用于去除或改变信号中的某些频率成分。

其中,FIR滤波器(Finite Impulse Response Filter)是一种常见的数字滤波器,其原理基于有限脉冲响应的特性。

本文将详细介绍FIR滤波器的原理以及其在信号处理中的应用。

一、FIR滤波器的基本原理FIR滤波器是一种线性时不变系统,其基本原理是通过对输入信号与滤波器的冲激响应进行卷积运算,得到输出信号。

FIR滤波器的冲激响应是一组有限长度的数字序列,因此称之为有限脉冲响应滤波器。

FIR滤波器的冲激响应可以通过设计滤波器的参数来确定,其中最常用的方法是窗函数法和频率采样法。

窗函数法通过选择合适的窗函数以及截断长度来设计滤波器,而频率采样法则通过在频域上选择一组滤波器的频率响应点来设计滤波器。

二、FIR滤波器的特点1. 线性相位特性:FIR滤波器具有线性相位特性,即不同频率成分的相位延迟相同,不会引起信号畸变。

2. 稳定性:FIR滤波器是一种有限脉冲响应滤波器,因此其冲激响应是有限长度的,不会引起反馈问题,从而保证了系统的稳定性。

3. 可调性:FIR滤波器的频率响应可以通过调整滤波器的参数来实现,因此具有较高的灵活性。

4. 精确控制:由于FIR滤波器的冲激响应是有限长度的,因此可以精确控制滤波器的频率响应,满足不同应用的需求。

三、FIR滤波器的应用FIR滤波器在数字信号处理中有广泛的应用,以下列举几个常见的应用领域:1. 语音信号处理:FIR滤波器可以用于语音信号去噪、语音增强等应用,对语音信号的频率成分进行调整,提高语音信号的质量。

2. 图像处理:FIR滤波器可以用于图像去噪、图像锐化等应用,对图像信号的高频成分进行增强或衰减,提高图像的清晰度。

3. 通信系统:FIR滤波器可以用于调制解调、信号匹配等应用,对信号的频率响应进行调整,实现信号的传输和接收。

6有限长单位脉冲响应FIR数字滤波器的设计


N 1
n0 H ( z) z ( N 1)H ( z1) n0
z ( N 1) N 1
h(Hm)(zzm)
h(mn)0z(N m1)
Hzz((Nz()1N)N1)112Hh[(H(zm()1zz))m
z ( N 1)H
( z 1 )]
1 2
N 1 n0
h
H1()Hz1H()zH(1(z)z)])
a(n) cosn
n0
幅度函数特点:
(1) 式中 cos ω n 项对ω =0, , 皆为偶对称,则幅度特性对ω =0, , 是偶对称的。 (2) 可实现所有滤波特性(低通、高通、带通、带阻)。
2、h(n)=h(N-n-1),N=偶数
中没推有导单情独况项和,前相面等N的为项奇合数并相H成g似(N,/2) 项不Nn。同01 点h(是n)由co于s[(Nn为 偶N2数1,)H] g(ω)
22
2
0
2
( )
π
2
2
π( N - 1)
0
(N 3)
2
二、线性相位FIR滤波器幅度函数的特点
1、h(n)=h(N-n-1),N=奇数 由前面推导的幅度函数H (ω)为:
特点:
HHg(ω())
N 1 n0
h(n) cos[(n
N 1)]
2
h(n)对(N-1)/2偶对称,余弦项也对(N-1)/2偶对称;
N 1
N 1
N 1
N
H (z) h(Hn)(zz)n Nh1(N n H1)(zz)n h(mN)z1(N m1) z(N1)
n0
H (z)n0
h(m)z( N m1)
z( N 1)
m0

有限冲激响应滤波器(fir)算法

有限冲激响应滤波器(fir)算法下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。

文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!本店铺为大家提供各种类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you! In addition, this shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!引言有限冲激响应滤波器(fir)算法是数字信号处理中常用的一种滤波方法。

FIR(有限冲激响应)滤波器

FIR(有限冲激响应)滤波器仅供教学使用实验 3: 设计 FIR(有限冲激响应)滤波器针对 Spartan-3E 开发套件介绍在这个实验里, 将向你展示通过系统发生器的FIR 和 FDAT ool模块来指定、模拟和实现FIR滤波器的方法. FDATool 模块被用来定义滤波器的阶数和系数, FIR模块被用作 Simulink模拟以及在FPGA中用Xilinx ISE来实现设计.你也可以通过实际硬件来运行它以验证这个设计的功能.注意:在 c:\xup\dsp_flow\labs\labsolutions\lab3\ 目录下有完整的例子.目标在完成这个试验后, 你将能够:用FDAT ool 模块输入你的滤波器指数,在设计中使用产生的系统或把它储存在工作区使用具有 FDATool 模块产生的系数的FIR模块, 并在Simulink中运行 bit-true 仿真产生设计并用 Resource Estimator 模块和post-map 报告估计资源利用量设计描述你是Cyberdyne系统的一个dsp设计者. 你的公司正在调查用数字滤波器代替安防检测器中的模拟滤波器,以尝试提高性能和降低整个系统的成本. 这将使贵公司可以进一步渗入日益增长的安防市场. 一个单频取样滤波器设计如下:Sampling Frequency (Fs)(采样频率) = 1.5 MHzFstop 1 = 270 kHzFpass 1 = 300 kHzFpass 2 = 450 khzFstop 2 = 480 kHzAttenuation on both sides of the passband(双边通频带衰减)= 54 dBPass band ripple(通频带脉动) = 1因为灵活性和上市时间的原因,Cyberdyne已经选择FPGA来实现它. 你的HDL设计经验是有限的. 因为你对MathWorks的产品比较熟悉,所以System Generator for DSP会是一个在FPGA中实现滤波器的优秀解决方案.你的经理Miles Booth 已经要求你创建一个在即将完成的Spartan-3E? 原型板上实现的滤波器的原型. 这个原型必须尽可能快地完成,这是因为Aggressive Security会议即将来临, 这个会议是业界今年最大的会议,我们不能错过它.你的经理已经提供了具有输入源和输出接收端的最初模型. 你的设计必须用随机输入源和来自DSP Blockset的chirp信号来仿真. 为分析滤波器的输出, 输入和输出信号在频谱示波器中显示. 频谱示波器用来比较在FPGA中实现的定点 FIR 滤波器的录放频谱响应.两个不同的输入源用来仿真这个滤波器:chirp 信号模块, 其扫描频率为 6 KHz 到 10 KHz ,不管其瞬时输出频率随机信号源发生器, 它输出范围在-1.9到1.9的均匀分布的随机信号. 因为均匀信号是有界的,它是驱动定点滤波器的较好的选择.设计流程这个试验由六个主要步骤组成. 在步骤1,你将用系统发生器的FDAT ool模块来产生指定FIR滤波器的系数. 在步骤2, 你将把这个系数与 FIR filter 模块联系起来. 步骤3要求你用两个已提供的输入源仿真这个设计并分析系数和输入信号宽度变化的影响. 在步骤4, 你将要添加一个转换模块以调整输出宽度,添加一个延时模块以提高效率,添加一个资源估计模块以估计资源占用量,从而完成整个设计. 在下一步将实现这个设计. 在每一步总的指示下面, 你会发现手把手的说明和图表,指出了实现总的指示的更多细节. 如果你对个别指导有信心, 可以略过手把手的说明,跳到下一步的总指示.注意:如果你当时不能完成这个实验, 你可以从Xilinx大学计划网站/doc/20a485b069dc5022aaea005b.ht ml 下载实验文件产生FIR滤波器所需的系数步骤 1实验总流程:从Xilinx Blockset → DSP blockset中添加FDAT ool模块到包含一个 DA FIR 滤波器的设计中. 按照下列要求用FDAT ool模块产生FIR滤波器的系数Sampling Frequency (Fs)(采样频率) = 1.5 MHzFstop 1 = 270 KHzFpass 1 = 300 KHzFstop 2 = 480 KHzAttenuation on both sides of the passband(双边通频带衰减)= 54 dB ?Pass band ripple(通频带脉动) = 1步骤 2:把系数与滤波器相关联步骤 3:仿真滤波器步骤 4:完成整个设计Step 6:估计资源占用量Step 5:实现设计Step 7:执行 HW-in-the-Loop验证在 Matlab中, 改变目录为c:/xup/dsp_flow/labs/lab3/: 在命令行窗口键入cd c:/xup/dsp_flow/labs/lab3/ .从MATLAB控制台窗口打开bandpass_filter.mdl模块从Xilinx Blockset → DSP添加FDATool模块到这个设计在FDAT ool Design Filter窗口 (图 3-1)输入下列滤波器参数Response Type: BandpassUnits: KHzSampling Frequency (Fs) = 1.5 MHzFpass 1 = 300 KHzFpass 2 = 450 KhzFstop 2 = 480 KHzAttenuation on both sides of the passband = 54 dB (Astop1 and Astop2 parameters) ?Pass band ripple = 1 (Apass)图 3-1. 在 FDATool中设计一个滤波器.点击Design Filter按钮以确定滤波器指令频谱窗口将被更新并显示如图 3-2图 3-2. 所设计滤波器的幅频响应.1. 基于所定义的技术要求, 最小的滤波器阶数是多少?用File → Save Session 来储存fda 格式文件coefficients.fda 中的系数注意: 这是可选的步骤. 这些系数对这个设计仍然可以利用. 如果你把参数储存在 fda-file 中,你可以通过 FDATool 模块参数对话框来加载它们.用File → Export 导出工作区中的系数,其Numerator variable name 为Num (图3-3)注意: 这将在你的 MATLAB 工作区添加Num 变量. 对于一个 FIR 滤波器, Num代表用在滤波器中的系数. 因为通过FDATool 模块仍能利用这些系数,这也是一可选的步骤图 3-3. 在工作区中导出系数.在 MATLAB 控制台窗口键入Num 来查看系数列表在MATLAB 控制台窗口键入max(Num) 以确定指出系数宽度和二进制小数点的最大系数值2. 填入与系数相关的下列信息最大值: ____________________ 最小值:把系数与 FIR 滤波器相关联步骤 2实验总流程:Step 1: Generate Filter CoefficientsStep 3: Simulate theFilterStep 4: Complete the Design从Xilinx Blockset → DSP library添加FIR滤波器模块并与产生的系数关联?从Xilinx Blockset → DSP library 添加FIR (DA FIR v9_0)滤波器到设计中双击Xilinx FIR Filter模块并在模块参数窗口 (图 3-4)中输入以下参数Coefficients : xlfda_numerator(‘FDATool’)Coefficient Structure : Inferred from CoefficientsNumber of bits per Coefficients : 12Binary Point for Coefficients : 11Provide Valid Ports : unchecked图 3-4. FIR 滤波器模块参数.点击OK以接受设置如图 3-5所示连接设计的各个模块Step 6:EstimateResourcesStep 5:ImplementDesignStep 7:Perform HW-in-the-LoopVerification图 3-5. 设计用来仿真的FIR 滤波器模块.在Simulink中仿真 FIR 滤波器步骤 3实验总流程:设置样值输入为FIX_8_6 ,输入采样周期为1/1500000. 利用频谱示波器, 研究 chirp 和 noise 信号的输出.双击Gateway In模块并设置格式为FIX_8_6,采样周期为1/1500000选择Chirp信号为输入源并开始仿真如果你收到下列错误, 根据消息更新FIR的等待时间, 并再次仿真.Step 1:GenerateFilterCoefficientsStep 2:AssociateCoefficientsto FilterStep 4:Complete theDesignStep 6:EstimateResourcesStep 5:ImplementDesignStep 7:Perform HW-in-the-LoopVerification调出示波器并验证一直衰减的FIR滤波器的输出信号,这些信号应如图 3-7 和图 3-8所示.图 3-7. 无衰减通频带 (频谱示波器).图 3-8. 禁带衰减 (频谱示波器).停止仿真选择Random Source并运行仿真停止仿真完成 FIR 滤波器设计步骤 4实验总流程:加入 convert 模块以得到 FIX_8_6格式的输出,从而降低显示所需的动态量程. 加入 delay 部件以提高性能. 利用 Resource Estimator 估计设计所需的资源.从Xilinx Blockset → Basic Elements 库中添加一个Convert 模块到 FIR 滤波器的输出以使输出符合 FIX_8_6 格式并改变 quantization 为Truncate ,Overflow 为 Wrap从Xilinx Blockset → Basic Elements 库中添加一个延时部件到输出以实现流水线技术并提高性能,流水线技术会在输出衰减器中得到实现确信 FIR size 被设置为 FIX_12_11 , Gateway In size 被设置为FIX_8_6从Xilinx Blockset → Index 库中添加Resource Estimator 模块到设计中注意: 注意你的设计应如图 3-11所示.图 3-11. 完成的FIR 滤波器设计.实现 FIR 滤波器步骤 5Step 1: Generate Filter CoefficientsStep 2: Associate Coefficients to FilterStep 3: Simulate the FilterStep 6: Estimate ResourcesStep 5: Implement DesignStep 7: Perform HW-in-the-Loop Verification实验总流程:设置 FIR 硬件过采样率为 9, FIR 核等待时间为14, 然后运行仿真. 这将更新采样率为 7.407e-008. 按照以下技术要求用系统发生器产生代码. 在工程向导里打开bandpass_filter.ise工程, 综合并执行它.Input : Width = FIX_8_6, Quantization = Truncate, Overflow = Wrap ?Output Width: FIX_8_6FIR Core Latency: 14FIR Hardware Over-Sampling Rate: 9FIR Coefficients: FIX_12_12Compilation: HDL NetlistPart: Spartan3e xc3s500e-4fg320Synthesis Tool: XSTTarget Directory: c:/xup/dsp_flow/labs/lab3/iseCreate Testbench: UncheckedSimulink System Period (sec):7.407e-008FPGA System Clock Period (ns):20双击FIR 模块并设置Hardware Over-Sampling Rate为9,latency为143. Hardware Over-Sampling Rate 设置为 9 后,滤波器的实现结果有何变化? 为何要把它设为 9 而不是 8?运行仿真. 如果采样率更新窗口出现, 接受采样率为 7.407e-008 并再次运行仿真双击系统发生器符号并设置以下参数Compilation: HDL NetlistPart: Spartan3e xc3s500e-4fg320Step 1:GenerateFilterCoefficientsStep 2:AssociateCoefficientsto FilterStep 3:Simulate theFilterStep 4:Complete theDesignStep 6:EstimateResourcesStep 7:Perform HW-in-the-LoopVerificationSynthesis Tool: XSTTarget Directory: c:/xup/dsp_flow/labs/lab3/ise (or ./ise)Create Testbench: UncheckedSimulink System Period (sec):7.407e-008FPGA System Clock Period (ns):20双击Generate按钮以产生设计在资源管理器中双击bandpass_filter_cw.ise以打开Project Navigator高亮突出顶层文件并双击执行4. 利用各种报告, 回答以下问题Slices的数目:有无定时约束?实际时钟周期:5. 在选择连续执行的情况下, 滤波器的实际时钟是多少?用 Resource Estimator估计资源利用率步骤 6实验总流程:用Resource Estimator模块和post-map报告, 估计此设计所用的资源. ?双击resource estimator模块从下拉框中选择Post-Map 并点击Estimate按钮. ISE 将自动通过综合和映射来运行并产生映射报告.6. 资源估计器的报告有什么内容?Step 1:GenerateFilterCoefficientsStep 2:AssociateCoefficientsto FilterStep 3:Simulate theFilterStep 4:Complete theDesignStep 5:ImplementDesignStep 7:Perform HW-in-the-LoopVerificationSlices 的数目: FFs 的数目: LUTs 数目:实现 Hardware-in-the-Loop 验证步骤 7实验总流程:利用系统发生器产生硬件电路并通过硬件电路板来验证设计. 通过Simulink仿真这个设计.储存模型为 bandpass_filter_hwcosim.mdl双击系统发生器符号并设置以下参数Compilation : Hardware Co-simulation → xup → sp3e_starter_kit ? Synthesis Tool : XSTTarget Directory : c:/xup/dsp_flow/labs/lab3/sp3e (or ./sp3e) ? Create Testbench: UncheckedSimulink System Period (sec): 7.407e-008点击Generate 按钮,会出现一个对话框,显示编译处理的过程,如图 3-12图 3–12. 在命令窗口的编译过程.Step 1: Generate Filter CoefficientsStep 2: Associate Coefficients to FilterStep 3: Simulate the FilterStep 4: Complete the DesignStep 6: Estimate ResourcesStep 5: Implement Design当发生器成功完成后, 一个新的Simulink 库窗口将打开,并出现一个具有适当输入输出数的模块.图 3–13. 在新的 Simulink 窗口中打开的被编译模块.复制被编译模块到设计中并连结它如图 3-14所示图 3–14. 在循环仿真中完成硬件的设计准备工作.连接硬件板并通过Simulink对设计仿真.把电源线与硬件板相连. 板子的LEDs 将闪亮.在板子与PC间连接下载电缆在硬件协同仿真模块上双击并设置下载电缆为USB.在Simulink窗口中点击run按钮 ( ) 以运行仿真. 配置文件将被下载,仿真将开始运行仿真结果将在输出示波器中显示,其中 Simulink 仿真器的输出显示在顶部,硬件输出显示在底部(Figure 3-15)图 3–15. 仿真结果,Simulink 仿真器的输出显示在顶部.硬件输出显示在底部完成后关闭电源储存模块并关闭 MATLAB结论在这个试验里, 你学会了如何用 FDAT ool 创建滤波器系数并从FIR 滤波器模块使用它们.学会使用Resource Estimator模块估计资源占用量.1. 基于定义的技术要求, 最小的滤波器阶数是多少?922. 完成下列与系数相连的信息最大值: 0.1610最小值: -0.15413. Hardware Over-Sampling Rate 设置为 9 后,滤波器的实现结果有何变化?为何要把它设为 9 而不是 8?它指出滤波器可以连续实现. 每次输出会占用9个时钟周期. 设为9而不设为8是因为要实现系数的对称. 在对称的条件下, 可以在通过串行乘法器之前实现采样. 这实现了8位数相加,结果为9位数的执行结果 (位增长).4. 利用各种报告, 回答下列问题Slices的数目: 278有无时间约束? Yes实际的时钟周期: ~146 MHz5. 在你选择连续执行的情况下, 滤波器实际的时钟周期是多少?1.5MHz x 9 = 135 MHz6. 资源估计器的报告内容?Slices的数目: 282FFs的数目: 481LUTs的数目: 410。

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

5
6
3
4
5
n
0
1
2
n
(c)
(d)
图5.1.2
线性相位FIR滤波器h(n)的四种对称形式
9
1.h(n) 偶对称,h(n)=h(N-1-n),N为奇数 。
H e
j
H e
N 1 n 0 N 3 2
j
h(n)
h(n)e j n
0
1
2
3 4
5
6
n
N 1 j n h n e h e 2 n 0
H 则:

n 0
( N 1) / 2
a(n) cos n
对这些频
12
由于 cos n关于 0,,2 偶对称,因此 率也呈偶对称,有 H ( ) H (2 ) 。
2.h(n)偶对称,h(n)=h(N-1-n), N为偶数。
H e j
hn e
N 3 N 1 j 2 N 1 N 1 2 e h 2hn cos n 2 2 n 0
( N 3)/ 2 N 1 N 1 H ( ) h 2h(n)cos n 2 2 n 0
i
N 1
所以系统函数亦可表示为:
H ( z ) ai z
(1)
FIR滤波器为有限长单位脉冲响应滤波器,且:
H ( z ) h( n) z n
n 0
N 1
(2)
比较(1)、(2)两式可知 ai h(n) 。
2
FIR数字滤波器的特点(与IIR数字滤波器比较):
优点: (1)很容易获得严格的线性相位,避免被处理的信号 产生相位失真,这一特点在宽频带信号处理、阵列信号处 理、数据传输等系统中非常重要; (2)可得到多带幅频特性;
N 1 ( ) 2
11

,则
( N 1) / 2
N 1 H ( ) h 2

m1
N 1 2h( m) cosm 2
N 1 N 1 N 1 n , n 1,2,, , a(n) 2h 令: a(0) h 2 2 2
(3)极点全部在原点(永远稳定),无稳定性问题;
(4)任何一个非因果的有限长序列,总可以通过一 定的延时,转变为因果序列, 所以因果性总是满足;
(5)无反馈运算,运算误差小。
3
缺点:
(1)因为无极点,要获得好的过渡带特性,需以较高的 阶数为代价;
(2)无法利用模拟滤波器的设计结果,一般无解析设计 公式,要借助计算机辅助设计程序完成。
利用类似的关系,可以得出: 2 h n h N 1 n
d ( ) g d
N 1 2
7



2



0
2

2
( N 1)
( N 0.5)
h( n)
偶对称
第5章
5.1
5.2 5.3
有限长单位脉冲响应(FIR)滤 波器的设计方法
线性相位FIR滤波器的特点
窗口设计法 频率采样设计法
5.4*
5.5
FIR滤波器的最优化设计法
IIR与FIR数字滤波器的比较
1
y ( n) FIR数字滤波器的差分方程描述:
N 1 i 0
a x(n i )
i 0 i
h(n) 奇对称
图5.1.1 线性相位特性
8
5.1.2 线性相位FIR滤波器的幅度特性
对于线性相位FIR 滤波器h(n)有奇对 称和偶对称两种情 况,且每种情况包 含了N为奇数和偶 数,所以共分四种 情况:
h(n) h(n)
0
1
2
3 4
5
6
n
0
1
2
3
4
5
n
(a) h(n) h(n)
(b)
4 1 2 3
n 0 N 1 2 n 0
N 1 2
j n
h N 1 n e j N 1 n
hnsin n
n
6
N
满足上式的条件是:
N 1 2 h n h N 1 n
, 0 n N 1
另外一种情况是,除了上述的线性相位外,还有一附 加的相位,即:
()
系统的群时延为:
4
5.1
线性相位FIR数字滤波器的特性
5.1.1 线性相位的条件
线性相位意味着一个系统的相频特性是频率的线性函数,即:
( )
式中为常数,表示此时通过这一系统的各频率分量的时
延; 系统的群时延为:
d ( ) g d
5
线性相位FIR滤波器的DTFT为
H e j h n e jn H e j ( ) H e j
10
H ( e j ) e
N 1 j 2
N23 N 1 N 1 j n j n N 1 2 2 e ) h hn (e 2 n 0
N 3 2
N 1 j 2


n
N 1 N 1 2
h n e j n
N 1 j 2
N 1 j N 1 n j n h n e e h e 2 n0
n 0
N 1
式中 H(ω)是正或负的实函数。等式中间和等式右边的实 部与虚部应当各自相等,同样实部与虚部的比值应当相等:
hn sin n sin cos hn cosn
n N n
N
将上式两边交叉相乘,再将等式右边各项移到左边,应 用三角函数的恒等关系得:
相关文档
最新文档