第 7章 FIR数字滤波器的设计
? 线性相位 FIR滤波器的性质
? 窗函数法设计 FIR滤波器
? 频率取样法设计线性相位 FIR滤波器
? 线性相位 FIR滤波器的优化设计
线性相位 FIR滤波器的性质
?线性相位系统的 时域特性
?线性相位系统的 频域特性
?线性相位系统 H(z)的零点分布特性
FIR滤波器的定义
k
k
M
k
zbzH ?
?
??
0
)(
M阶 (长度 N=M+1) 的 FIR数字滤波器
?
?
? ?
其它0
,,1,0 Mkb k ??][ kh
FIR滤波器的特点
1)h[k]在有限范围内非零,系统总是稳定的。
2)容易设计成线性相位
3)可利用 FFT实现
4)运算量比 IIR大
通 带
过 渡 带
阻 带
?
?
?
p
? ?
s
? ? e
j ?
?
? ? ?
p
? ? ?
p
?
s
FIR滤波器设计指标
严格线性相位定义
)(jjj e)e()e( ???? HH ?
例,单频信号 exp(j?0 k)通过线性相位 (LTI)系统的响应
)(jjj 000 e)e(}e{ ???? ?? kk HT
若 ?(?)= ???? 则称 系统 H(z)是严格线性相位的。
广义 线性相位定义
)(jj e)()e( ???? ? ??? AH
A(?)称为幅度频函数
线性相位系统的 时域特性
0 1 2 3 4
M=4 偶对称
0 1 2 3 4
M=3 偶对称
0 1 2
3 4
M=4 奇对称
0 1
2 3
4
M=3 奇对称
定理,为线性相位的充要条件为 h[k]=?h[M?k]
k
k
M
k
zbzH ?
?
??
0
)(
线性相位系统的 频域特性
1) 1型, (h[k]=h[M?k],M为偶数 )
例,M=4,h[k]={h[0],h[1],h[2],h[1],h[0]}
????? 234 ]2[)](1[)1](0[)( jjjjj eheeheheH ???? ?????
??? ?? 222 ]2[c o s]1[22c o s]0[2 jjj eheheh ??? ???
??? 2c o s]22[2c o s]12[2]2[)( ????? hhhA
??? kkakkLhLhA
L
k
L
k
c o s][c o s][2][)(
01
??
??
????
2/ML ?
?? kkaA
L
k
c o s][)(
0
?
?
?
?? )π2( ?A )(?A ?? )( ?A )(?A
A(?)关于 0和 ? 点偶对称
例,h [k]={1,2,1},M=2
2/c o s4e)e( 2jj ??? ??H
? 2 ?
4
0
A(?)
?? )2( ??A )(?A
2) II型,( h[k]=h[M?k]),M为奇数
M=3 h[k]={h[0],h[1],h[1],h[0]}
)](1[)1](0[)( 23 ??????? ???? jjjj eeheheH
???? ???? 5.0c o s]1[2)5.1c o s (]0[2 5.15.1 jj eheh
)5.1c o s (]0[2)5.0c o s (]1[2)( ??? hhA ??
cos(0.5?) 的周期 = 4? cos(1.5?) 的周期 = (4/3)?
A(?) 的周期 = 4?
])2/1c o s [ (][
0
??? ?
?
kkb
L
k
))5.01c o s ( (]11[2])5.00c o s [ (]01[2)( ??? ?????? hhA
LM ?? 2/)1(记:
A(? )= 0 不能用于高通、带阻滤波器的设计
)]2)(2/1c o s [ (][)2(
0
???? ???? ?
?
kkbA
L
k
))2/1(2c o s (][
0
???? ?
?
kkkb
L
k
??? )(?A??
H(?)关于 ?=? 点奇对称
])5.0c o s [ (][2)(
0
?? ??? ?
?
kkLhA
L
k
)5.1c o s (]0[2)5.0c o s (]1[2)( ??? hhA ??
例,h[k]=(? [k]+? [k?1])/2
)2/c o s(e)e( 2/jj ??? ??H
0
1
???
A(?)
3)III型, h[k]= ?h[M?k],M为偶数
M=4 h[k]={h[0],h[1],0,?h[1],?h[0]}
)e](1[)e1](0[)( 3j4j ???? ??? ???? jj ehheH
?? ?? si ne]1[j2)2si n (e]0[j2 2j2j ?? ?? hh
)2s i n (]22[2s i n]12[2)( ??? ???? hhA
LM ?2/记:
)s i n (][)s i n (][2)(
11
??? kkckkLhA
L
k
L
k
??
??
???
?? )2( ??A )(?A ?? )( ?A )(?A?
A(?)关于 0和 ? 点奇数对称
A(0)= A (?)=0 不能用于高通和低通滤波器的设计
例,h[k]=(? [k]?? [k??])/2
?? ? jj e)si n (j)e( ??H
0
A(?)
1
??
?
4) IV型, h[k]= ?h[M?k],M 为奇数
M=3 h[k]={h[0],h[1],?h[1],?h[0]}
)ee](1[)e1](0[)( 2jj3j ???? ??? ???? hheH j
?? ?? 5.0si ne]1[j2)5.1si n (e]0[j2 5.1j5.1j ?? ?? hh
? ? ? ???? )5.01(s i n]11[2)5.00(s i n]01[2)( ?????? hhA
LM ?? 2/)1(记:
))2/1s i n ( (][
))2/1s i n ( (][2)(
0
0
?
??
??
???
?
?
?
?
kkd
kkLhA
L
k
L
k
A(0)=0 不能用于低通滤波器的设计
)()π2( ?? AA ??
例,h[k]=(? [k]-? [k??])/2
?? ? 5.0je)5.0si n (j)( ??jeH
0
A(? )
1
???
线性相位 FIR滤波器频率响应一般形式可写为
)(e)e( )5.0j(j ???? AH M- ??
表 5-1 四种线性相位 FIR 滤波器的性质
类型 I II III IV
阶数 M 偶 奇 偶 奇
h[k]的对称性 偶对称 偶对称 奇对称 奇对称
A(?)关于 ???的对称性 偶对称 偶对称 奇对称 奇对称
A(?)关于 ???的对称性 偶对称 奇对称 奇对称 偶对称
A(?)的周期 2? 4? 2? 4?
? 0 0 0.5? 0.5?
A??? 任意 任意 0 0
A??? 任意 0 0 任意
可适用的 滤波器类型 LP,HP,B
P,BS 等
LP,BP 微分器,Hilbert
变换器
微分器,Hilbert
变换器,HP
线性相位系统 H(z)的零点分布特性
][][ kMhkh ??? )()( 1????? zHzzH M
?z=0不可能有系统的零点
?zk是系统的零点,则 zk?1也是系统的零点。
? h[k]是实的,,kj
kk erz
??,kj
k er
??
,1 kjk er ??? kjk er ?1?
1)
43211 1)( ???? ????? zazbzazzH
Re(z)
Im(z)
2)
Re(z)
Im(z)
212 1)( ?? ??? zazzH
Re(z)
Im(z)
213 1)( ?? ??? zazzH
3)
Re(z)
Im(z)
4)
14 1)( ??? zzH
?任意线性相位系统是上述四种子系统的组合
?h[k]奇对称时,H(z)在 z=1处一定有奇数阶零点。
四种不同类型的线性相位系统在 zk=?1的零点:
(1)I 型 FIR滤波器 (M为偶 ):
在 zk=1和 zk= ?1无零点或者有偶数个零点。
(2)II 型 FIR滤波器 (M为奇 ):
在 zk= ?1有奇数个零点,在 zk=1无零点或者有偶数个零点。
(3)III 型 FIR滤波器 (M为偶 ):
在 zk=1和 zk= ?1有奇数个零点。
(4)IV 型 FIR滤波器 (M为奇 ):
在 zk=1有奇数个零点,在 zk=?1无零点或者有偶数个零点。
?最小积分平方误差设计 FIR滤波器
?吉伯斯 (Gibbs)现象
?常用窗函数
窗函数法设计 FIR滤波器
问题:已知 Hd(ej?),设计
使其频率响应逼近 Hd(ej?)。 k
M
k
zkhzH ?
?
?? ][)(
0
?
?
??
?
?
d)(
2
1][ jkj
dd eeHkh ?
?
?
hd [k]一般情况下是无穷序列,需对其进行截断。
设 M=2K,w[k]=RN+1[k]
h [k]= hd [k?K]RN+1[k]
方案 1:设 Hd (ej?)是实偶函数, 则 hd [k] 是实偶对称的。
h [M?k]= hd [M?k?M/2] RN+1 [k]
= hd [?(k?N /2)] RN+1 [k] = h[k]= hd [k?M]RN+1[k]
最小积分平方误差设计 FIR滤波器
例:设计一个线性相位的 FIR滤波器。其频率响应能逼近
截频为 ?c的理想低通。
解:设
?
?
? ??
其他0
1)(
d
cjeH ???
)(Sa1
2
1][ kdekh
c
cjk
d
c
c
?
?
??
?
?
?
?
??? ?
?
? ? MkMkMkhkh ccd ?????? 0,2/(Sa]2/[][ ?
?
?
方案 2:设 Hd (ej?)为
Hd (ej?) =Ad(?)exp(j( ?0.5M?+???
I型和 II,?=0 ; III型和 IV:?=?/2。
h [k]= hd [k]RN+1[k]
例:设计一个线性相位的 FIR滤波器。其频率响应能逼近
截频为 ?c的理想低通。
解:设
?
?
? ??? ?
其他 0
0e)( 5.0j
d
c
M
jeH ??
?
?
? ?)2/(Sae
2
1][ j 0, 5 Mkdekh
c
cjkM
d
c
c
???? ?
?
? ????? ??
?
?
? ? MkMkkh cc ???? 0,)2/(Sa][ ?
?
?
例:理想数字微分器的频率响应为
HDIF(ej?)=j?,|?|??
试用窗口法设计一线性相位 FIR滤波器,使其幅度响应逼近理想数
字微分器。
解:设理想微分器的频率响应为
HDIF(ej?)= ? ej(0.5??0.5M?),|?|??
?? ? de
π2
j][ )5.0(jπ
πD I F
Mkkh ?
???
?
?
?
?
??
?
?
?
?
??
?
?
?
?
?
??
?
为奇
为偶
为偶
M
Mk
MkM
MkM
Mk
Mk
Mk
)5.0(
)1(
5.0,,0
5.0,,
5.0
)1(
2
)5.05.0(
)5.0(
A(?)
?
??
?
?
?
??
A(?)
?
?
M??? M?9
积分平方误差定义为
?? ?? d)()e(π2 1 2jdππ2 jeHH ?? ??
由 Parseval等式,? 2可表示为
22 ][][ khkh
d
k
?? ?
?
???
?
2
1
2
0
21 ][][][][ khkhkhkh
d
Mk
d
M
k
d
k
??? ?
???
?
???
????
可选择
h[k]= hd[k],??k ?M
使积分平方误差最小 。
吉伯斯 (Gibbs)现象
0
0
0.5
1
0.2 ? 0.4 ? 0.6 ? 0.8 ? ?
?
A
??
?
M=14
M=60
0.2 ?0
0
0.5
1
0.4 ? 0.6 ? 0.8 ? ?
A
??
?
?
矩形窗对 H(e j?)的影响
][][][ kwkhkh Nd?
?
?
???
?
?
? deWeHeH j
N
j
d
j )()(
2
1)( )( ?
?
??
][][ kRkw NN ?当:
)2/s i n (
)2/s i n ()( 2/)1(
?
??? NeeW Njj ???
矩形窗 的幅度函数为
)2/s i n (
)2/s i n ()(
?
?? NW ?
?
N
?2
N
?2?
N
?4
N
?4?
N
???
主瓣
旁瓣
)(?W
矩形窗的幅度函数
将理想滤波器的频率响应表示为
2/)1()()( ??? Njdjd eAeH ?? ?
则可得 FIR滤波器的频率响应为
????
?
???
?
?
? deWeAeH NjNj
d
j 2/)1)((2/)1( )()(
2
1)( ?????
?
?? ?
????
?
?
?
? dWAe
d
Nj )()(
2
12/)1( ?? ?
?
??
所以 FIR滤波器的幅度函数为
??????
?
?
dWAA d )()(2 1)( ?? ?
?
)(?A
?
c?c??
???
????
c
?
c
??
)( ???W
)(?dA
)(?A
?
c?c??
???
?
c?c??
???
)(?dA
)( ???W
?
)(?dA
)( ???W
c?? c
? ???
)(?A
?
c?c??
???
由矩形窗截断产生的波峰大约是 9%,所以阻带最小衰减为
20log10(9%)??21dB。
用矩形窗设计的 ?c=?/2 FIR滤波器的幅度响应
0 0.25 0.5 0.75 1
-40
-30
-21
-10
0 M=14
M=30
Gai
n d
b
常用窗函数
矩形窗
?
?
? ???
其它 0
01][ Mkkw
1
0, 5
0, 0 9
1, 0 9
?
?
c N
π8.1
Ap? 0.82dB,As? 21dB
?Hann(汉纳 )窗 (w=hanning(M+1))
?
?
? ????
其他 0
0)/2c o s (5.05.0][ MkMkkw ?
0 1 0 2 0 3 0
1
w [ k ]
k
?
?
c N
π2.6
0, 0 0 6 4
1
1, 0 0 6 4
Ap? 0.056dB,As? 44dB
由 Hanning窗设计的 ?c=?/2 FIR滤波器的频响特性 (M=38)
0 0.25 0.5 0.75 1-80
-60
-44
-20
0 Square
Hanning
Gai
n d
B
0 0.25 0.5 0.75 1-80
-60
-52
-20
0
SquareHamming
?Hamming(哈明)窗 ( w=hamming(M+1) )
?
?
? ????
其他 0
0)/2c o s (46.054.0][ MkMkkw ?
Gain
db
?Blackman窗 ( w=blackman(M+1) )
??
? ?????
其它 0
0)/4c o s (08.0)/2c o s (5.042.0][ MkMkNkkw ??
0 0.25 0.5 0.75 1-100
-75
-60
-40
-20
0
Square Blackman
Gain
db
?Kaiser窗 ( w=kaiser(M+1,beta) )
Mk
I
MkI
kw ??
??
? 0,
)(
)]/21[1(
][
0
2
0
?
?
?是一可调参数 。 I??? ?,the modified zeroth-order Bessel function.
I??? ?可用幂级数表示为
2
1
0 !
)2/(
1)( ?
?
?
?
?
?
?? ?
?
? n
x
xI
n
n
一般求 20项就能达到所需精度。
用 Kaiser窗 设计 FIR滤波器的 步骤:
1,估计滤波器的阶数 M
A= ?20log10(min{?p,?s })
21,
2 8 5.2
95.7
sp
?
?
?? AAM
??
2,估计 ?
?
?
?
?
?
?
?????
??
?
21,0
5021 ),21(07886.0)21(5842.0
50 ),7.8(1102.0
4.0
A
AAA
AA
?
1,估计滤波器的阶数 M
285.2
95.7
sp ?? ?
?? sAM
2,估计 ?
? ? ???????As-?)
3,设定理想低通的截频
2/)( spc ??? ??
4,h[k]=hd[k]*w[k]
例, 用 Kaiser窗设计一满足下列指标的 I型线性相位 FIR低通滤波器 。
?p=0.2???s=0.4?,Ap=0.3dB,As=50dB
Gain response of lowpass FIR filter
0 0.1 0.2 0.3 0.4 0.5
-80
-50
-30
0
Normalized frequency
Ga
in,
dB
M=30
Ap=0.0105 dB
As=50.7524 dB
例:用 Hamming窗设计一个逼近截频为 ?c的线性相位 FIR
高通滤波器
选 I型 FIR(M为偶 )
?? ??
??
?
dekh jkNd
c
c
?? ?
?
? 5.0j
2
e2 1][
MkMkMkkh cc,,1,0) ),5.0((Sa]5.0[][ ?????? ?
?
??
?
?
? ??? ?
其它 0
)(
5.0 ????
? c
Mj
j
d
eeH
?
?
? ???? ?
其它 0
2)( 5.0 ccMjj
d
eeH ??????
k?0.5M
? ?ccd Mkkh ?
?
? )5.0(Sa][ ???
k=0.5M
?
? c
d Mh ?? 1]5.0[
选 IV型 FIR(M为奇 )
?
?
? ???? ?
其它 0
2j)( 5.0 ccMjj
d
eeH ??????
?
?
??
??
?
djkh jkMjd
c
c
ee
2
1][ 5.02 ?? ???
? ?cc MkjMkj
Mk
???
?
)5.0()2)(5.0( ee
)5.0(2
1 ??? ?
?
?
? ?cc MkjMkj
Mk
??
?
)5.0()5.0( ee
)5.0(2
1 ??? ?
?
??
? ?
)5.0(
)5.0(c o s
Mk
Mk c
?
???
?
?
Nk
Mk
Mkkh c,,1,0,
)5.0(
))5.0((c o s][ ??
?
???
?
?
用 Hamming窗设计的 ?c=0.6?FIR滤波器 HP的幅度响应
I 型 N=50 I V型 N=51
0 0.4 0.6 0.8 1
-110
-80
-53
0
Gain response of highpass FIR filter
Normalized frequency
Gai
n,
dB
type I
type IV
窗函数法设计 FIR滤波器窗函数法设计 滤波器
?问题提出
?基本思路
?I 型 线性相位系统
?II型 线性相位系统
?III型 线性相位系统
?VI 型 线性相位系统
频率取样法
问题
已知 Hd(ej?)在 M+1点上的抽样值 {Hd(ej?m) ;
m=0,1,...,M},设计 {h[k]; k=0,1,...,M},使设计出
的滤波器 H(z)满足
Hd (ej?m)= H (ej?m)
基本思路
kM
k
zkhzH ?
?
?? ][)(
0
{Hd (ej?m) ; m=0,1,...,M},已确定。则可通过求解方程
mm jk
M
k
jd ekheH ??
?
? ?? ][)(
0
得出 ][kh
h[k]的附加约束:系数是实的,满足线性相位条件。
?I型取样 (?m=2? m/(M+1) ; m=0,1,..,M)
mk
M
M
k
d
M
m
WkhmHH 1
0
1
π2j
d ][][)e( ?
?
? ???
mk
Md
M
k
WmH
M
kh ? ?
?
??? 1
0
][
1
1][
线性相位 FIR滤波器频率响应一般形式为
)()( )5.0j( ???? AeeH M-j ??
)e(][ 1
π2j
dd
?? M
m
HmH
][ee))1/(π2(ee d1
πj
j
d
1
πj
j mAMmA mM
Mm
M
M
???? ??? ??
I 型 线性相位系统 (M为偶数,h[k]偶对称 ):
I型线性相位滤波器的幅度函数满足, Ad(?)=Ad(2???)
Hd(ej?)在 M+1个取样点上值 Hd[m]为
))1/(π2(e)e(][ d1
πj
1
π2j
dd ???
??? MmAHmH mM
M
M
m
若设 M=4,则有
}e)5 π8(,e)5 π6(,e)5 π4(,e)5 π2(),0({][ π5
16j
d
π512j
d
π58j
d
π54j
ddd
????? AAAAAmH
}e)5 π2π2(,e)5 π4π2(,e)5 π4(,e)5 π2(],0[{ ) π5
16j ( 4
d
) π512j ( 4
d
π58j
d
π54j
dd
???? ??? AAAAA
}1 ] e[,2 ] e[,2 ] e[,1 ] e[],0[{][ π5
4j
d
π58j
d
π58j
d
π54j
ddd AAAAAmH
???
}1 ] e[,2 ] e[,2 ] e[,1 ] e[],0[{][ π5
4j
d
π58j
d
π58j
d
π54j
ddd AAAAAmH
???
对 Hd[m]做 5点 IDFT可得
)ee](2[)ee](1[]0[][5 5 π83π2j5 π82π2jd5 π44π2j5 4π2jdd ???? ????? kkkk AAAkh ?
?????? ???????? ??? )42(5 π2c o s]2[2)42(5πc o s]1[2]0[ ddd kAkAA
I型线性相位滤波器在 M+1个取样点值为
??
?
?
?
?????
???
?
?
?
MmMmMH
MmmAmH
m
M
M
12/ ]1[
2/0 e][][
d
1
π
j
d
d
例,用频率取样法设计一个满足下列指标的 I型线性相位高通滤波器 。
?s=0.5?,?p=0.6?
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
-0.2
0
0.2
0.4
0.6
0.8
1
1.2
A(?)
频率取样法设计的高通滤波器幅度函数
???
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
-0.2
0
0.2
0.4
0.6
0.8
1
1.2
A(?)
增加一个过渡点后频率取样法设计的高通滤波器幅度函数
???
I I型 线性相位系统 (M为奇数,h[k]偶对称 ):
幅度函数满足, Ad(?)=?Ad(2???),Ad(?)=?
))1/(π2(e)e(][ d1
πj
1
π2j
dd ???
??? MmAHmH mM
M
M
m
若 M=5,则 Hd(ej?)在 6个取样点上值 Hd[m]为
}e)
6
0 π1
(,e)
6
π8
(,
e)
6
π6
(,e)
6
π4
(,e)
6
π2
(),0({][
π
6
25
j
d
π
6
20
j
d
π
6
15
j
d
π
6
10
j
d
π
6
5
j
ddd
??
???
?
AA
AAAAmH
π615j
d
π610j
d
π65j
dd e)π(,e)6
π4(,e)
6
π2(),0({ ???? AAAA
}e)6 π2π2(,e)6 π4π2(,) π6
25j ( 5
d
) π620j ( 5
d
?? ???? AA
}1 ] e[,2 ] e[,0,2 ] e[,e]1[],0[{][ π65jdπ610jdπ610jdπ65jddd AAAAAmH ???
II型线性相位滤波器在 M+1个取样点值为
?
?
?
?
?
?
?
?????
??
???
?
?
?
?
MmMmMH
Mm
MmmA
mH
m
M
M
2/)3( ]1[
2/)1( 0
2/)1(0 e][
][
d
1
π
j
d
d
例, M=63 (II型 ),?p=0.5?,?s=0.6? FIR低通滤波器。
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
-80
-60
-40
-20
0
G(?),dB
频率取样法设计的低通滤波器增益响应
???
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
-100
-80
-60
-40
-20
0
G(?),dB
增加一个过渡点后频率取样法设计的低通滤波器增益响应
???
IV型线性相位滤波器在 M+1个取样点值为
?
?
?
??
?
?
?????
???
?
?
?
?
?
MmMmMH
MmmA
m
mH
m
M
M
3 ) / 2( ]1[
2/)1(1 e][j
0 0
][
d
1
π
j
dd
例, 用频率取样法设计一个线性相位数字微分器 。
解,HDIF(ej?)=j?,|?|??
0?m??M?????范围内 Hd[m]值为
m
M
M
M
mmH 1πj
d e1
2j][ ??
?
? ?
IV型 线性相位系统
0?m??M?????范围内 Hd[m]值为
m
M
M
M
mmH 1πj
d e1
2j][ ??
?
? ?
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
0
1
2
3
4
???
A???
频率取样设计的 数字微分器的幅度函数