FIR Filter Design: - Linear Phase Filter Design - Magnitude Filter Design - Equalizer Design
FIR Filter Design: - Linear Phase Filter Design - Magnitude Filter Design - Equalizer Design
Vandenberghe
Lecture 10
FIR filter design
101
n1
X
=0
h u(t )
n1
X
t=0
+ + hn1e
ht cos t j
n1
X
j(n1)
(with j =
1)
ht sin t
t=0
102
h(t)
0.2
0.1
0
0.1
0.2
0
10
12
14
16
18
20
3
2
H()
10
10
1
0
1
10
|H()|
10
10
0.5
1.5
2.5
3
0
0.5
1.5
2.5
103
Linear-phase filters
suppose n = 2N + 1 is odd and impulse response is symmetric about hN :
ht = hn1t,
t = 0, . . . , n 1
frequency response
H() = h0 + h1ej + + hn1ej(n1)
2
p s
for [0, p]
for [s, ]
105
106
Example
linear-phase filter of order n = 31
passband [0, 0.12]; stopband [0.24, ]
maximum ripple 1 = 1.059 (0.5dB)
0.2
0.15
h(t)
0.1
0.05
0
0.05
0.1
10
15
20
25
30
t
1
10
|H()|
10
10
10
10
10
0.5
1.5
2.5
107
Variations
minimize passband ripple (variables 1, h)
minimize 1
subject to 1/1 G(k ) 1 for k [0, p]
2 G(k ) 2 for k [s, ]
minimize transition bandwidth (variables s, h)
minimize s
subject to 1/1 G(k ) 1 for k [0, p]
2 G(k ) 2 for k [s, ]
minimize filter order (variables N , h)
minimize N
subject to 1/1 G(k ) 1 for k [0, p]
2 G(k ) 2 for k [s, ]
not LPs, but can be solved by bisection/LP feasibility problems
FIR filter design
108
Outline
n1
X
t=0
ht cos t j
n1
X
ht sin t
t=0
109
Autocorrelation coefficients
definition: autocorrelation coefficients of h = (h0, . . . , hn1) Rn
rt =
n1t
X
h h +t
=0
ej r = r0 +
n1
X
t=1
for [0, ]
1010
Spectral factorization
when is r Rn the vector of autocorrelation coefficients of some h Rn?
spectral factorization theorem: if and only if R() 0 for all
condition is an infinite set of linear inequalities in r
many algorithms for spectral factorization (find h s.t. R() = |H()|2)
consequence: to cast magnitude design problem as an LP,
use r = (r0, . . . , rn1) as variable instead of h = (h0, . . . , hn1)
add spectral factorization condition as constraint: R() 0 for all
discretize the frequency axis
optimize over r and use spectral factorization to recover h
FIR filter design
1011
1012
Outline
Equalizer design
g(t)
h(t)
(time-domain) equalization
given g (unequalized impulse response), gdes (desired impulse response)
design FIR equalizer h so that convolution g = h g approximates gdes
example
gdes is pure delay D: gdes(t) =
1 t=D
0 t=
6 D
max |
g (t)|
t6=D
subject to g(D) = 1
this can be cast as an LP in the coefficients hi
FIR filter design
1013
Example
unequalized system (10th order FIR)
impulse response
1
0.8
g(t)
0.6
0.4
0.2
0
0.2
0.4
0
10
G()
10
1
0
1
|G()|
2
1
10
0.5
1.5
2.5
3
0
0.5
1.5
2.5
1014
g
(t)
0.8
0.6
0.4
0.2
0
0.2
0
10
15
20
25
30
35
10
e
G()
10
1
0
1
e
|G()|
2
1
10
0.5
1.5
2.5
3
0
0.5
1.5
2.5
1015
G()
problem
given system frequency response G : [0, ] C
design FIR equalizer H so that |G()H()| 1:
minimize
2
max |G()H()| 1
[0,]
1016
max
2
max |Gk ()H()| k
k=1,...,M [0,]
subject to k 1,
k = 1, . . . , M
for [0, ],
k = 1, . . . , M
1017
Example
M = 2 systems, equalizer of order n = 25
2.5
2.5
|Gk ()H()|2
|Gk ()|2
1.5
0.5
0
0
0.5
1.5
2.5
1.5
0.5
0
0
0.5
1.5
2.5
1018