第六章 FIR滤波器的设计
前言
为啥大三了课还这么多…感谢感谢还是说不尽的感谢…
一蓑烟雨任平生
我再说什么…
我不太正常…
写不完咯…
先写了再说…
线性相位FIR DF的条件和特点
上来就拽英文…我最恨别人拽英文, FIR DF就是有限长单位脉冲响应数字滤波器的意思.
和第六章的IIR注重幅频特性相比, FIR的优点是可以实现线性相位
此外, FIR是全零点滤波器
也就是说, 频率响应函数只有零点!! 没有极点!
线性相位FIR滤波器定义
H
(
e
j
ω
)
=
H
g
(
ω
)
e
j
θ
ω
H(e^{j\omega}) = H_g(\omega)e^{j\theta\omega}
H(ejω)=Hg(ω)ejθω
H
g
(
ω
)
为
ω
的实函数又叫幅度特性函数
H_g(\omega)为\omega的实函数 又叫幅度特性函数
Hg(ω)为ω的实函数又叫幅度特性函数
可以看见这里定义专门把旋转因子ejw提了出来, 足见线性相位的特点!
- 第一类线性相位
θ ( ω ) = − k ω \theta(\omega)=-k\omega θ(ω)=−kω
这个叫严格的 ω \omega ω线性函数, 确实很严格… - 第二类线性相位
θ ( ω ) = − k ω + β \theta(\omega)=-k\omega+\beta θ(ω)=−kω+β
那这个就是不那么严格的啦~多了一个初相位 β \beta β, 当这个初相位为 π / 2 \pi/2 π/2的时候, FIR滤波器就有了正交变换的作用, 据说很有用…目前也不知道有啥用, 但既然这么有用, 这里就只讨论初相位为 π / 2 \pi/2 π/2这个情况
第一类线性相位的条件及对滤波器频域的约束
h
(
n
)
是实序列
,
n
=
0
,
.
.
.
,
N
−
1
,
且
h
(
n
)
=
h
(
N
−
1
−
n
)
h(n)是实序列, n=0,...,N-1, 且h(n)=h(N-1-n)
h(n)是实序列,n=0,...,N−1,且h(n)=h(N−1−n)
这里N为h(n)的长度, N-1为滤波器的阶数
本来这里有个证明的, 但是证明过程确实是鄙人难以触及的领域…就不献丑了
这里约束条件的推导又要用到之前证明里的式子...只能记下来了
- 当h(n)的长度N为奇数时, ω 关于 0 , π , 2 π 偶对称 , 可以实现各种滤波器 \omega关于0,\pi,2\pi偶对称, 可以实现各种滤波器 ω关于0,π,2π偶对称,可以实现各种滤波器
- 当N为偶数时,
ω
关于
0
,
2
π
偶对称
,
关于
π
奇对称
,
不能实现高通和带阻滤波器
\omega关于0, 2\pi偶对称, 关于\pi奇对称, 不能实现高通和带阻滤波器
ω关于0,2π偶对称,关于π奇对称,不能实现高通和带阻滤波器
第二类线性相位的条件及滤波器频域的约束
h
(
n
)
是实序列
,
n
=
0
,
.
.
.
,
N
−
1
,
且
h
(
n
)
=
−
h
(
N
−
1
−
n
)
h(n)是实序列, n=0,...,N-1, 且h(n)=-h(N-1-n)
h(n)是实序列,n=0,...,N−1,且h(n)=−h(N−1−n)
同上证明也不放了
- 当h(n)的长度N为奇数时, ω 关于 0 , π , 2 π 奇对称 , 只能实现带通滤波器 \omega关于0,\pi,2\pi奇对称, 只能实现带通滤波器 ω关于0,π,2π奇对称,只能实现带通滤波器
- 当N为偶数时, ω 关于 0 , 2 π 奇对称 , 关于 π 偶对称 , 只能实现高通和带通滤波器 \omega关于0, 2\pi奇对称, 关于\pi偶对称, 只能实现高通和带通滤波器 ω关于0,2π奇对称,关于π偶对称,只能实现高通和带通滤波器
线性相位FIR滤波器的零点分布特点(之前不是埋了个全零点的坑?)
H ( z ) = ± z − ( N − 1 ) H ( z − 1 ) H(z)=±z^{-(N-1)}H(z^{-1}) H(z)=±z−(N−1)H(z−1)
这个式子表明, 若 z k z_k zk是H(z)的零点, 则 z k − 1 z_k^{-1} zk−1也是零点
若h(n)是实序列, 则零点必然共轭成对出现!!!
窗函数法设计FIR DF
这一节其实挺难的, 但是众所周知, 上课造火箭, 考试搓泥巴, 看看考试怎么考吧
设计的思路就是用理想滤波器的系统响应为标准, 用窗函数逼近
窗函数 ω ( n ) \omega(n) ω(n)的作用就是截取理想滤波器的单位脉冲响应 h d ( n ) h_d(n) hd(n)得到我们所设计的滤波器单位脉冲响应 h ( n ) h(n) h(n)
h ( n ) = h d ( n ) ⋅ ω ( n ) h(n)=h_d(n) \cdot \omega(n) h(n)=hd(n)⋅ω(n)
通过这个式子也可看到
H
(
e
j
ω
)
=
1
2
π
H
d
(
e
j
ω
)
∗
W
(
e
j
ω
)
H(e^{j\omega})=\frac{1}{2\pi}H_d(e^{j\omega}) \ast W(e^{j\omega})
H(ejω)=2π1Hd(ejω)∗W(ejω)
下图进一步展现实际滤波器系统是如何由窗函数构建的
本章出题要点
- 求H(z)的逆变换h(n), 用定义或者多项式展开法
- 判读是否具有线性特性, 用第一二类线性特性条件
- 求幅度特性函数 H g ( ω ) H_g(\omega) Hg(ω)和相位特性函数 θ ( ω ) \theta(\omega) θ(ω), 用定义解
- 根据给的参数(截止频率, 过度带宽, 阻带最小衰减参数)设计FIR DF
关系如下
1.阻带最小衰减参数决定使用的窗函数类型
2.由窗函数的过度带宽和题目要求确定 N N N
3.由截止频率确定频率函数 H D ( e j ω ) = { e − j N − 1 2 ω 0 ≤ ∣ ω ∣ ≤ ω c 0 ∣ ω ∣ ≥ ω c H_D(e^{j\omega})=\begin{cases} e^{-j\frac{N-1}{2}\omega} & 0 \le |\omega_| \le\omega_c \\ 0&|\omega|\ge\omega_c \end{cases} HD(ejω)={e−j2N−1ω00≤∣ω∣≤ωc∣ω∣≥ωc
4.由 h D ( n ) = 1 2 π ∫ − π π H D ( e j ω ) e j ω n h_D(n)=\frac{1}{2\pi}\int^\pi_{-\pi}H_D(e^{j\omega})e^{j\omega n} hD(n)=2π1∫−ππHD(ejω)ejωn求 h D ( n ) h_D(n) hD(n)
5.由 h ( n ) = h D ( n ) ⋅ ω ( n ) h(n)=h_D(n)\cdot \omega(n) h(n)=hD(n)⋅ω(n)
注意选择合适的窗函数, 通常记住矩形波即可
R N ( n ) R_N(n) RN(n)