Beruflich Dokumente
Kultur Dokumente
• FIR filters
• Chebychev design
• equalizer design
1
FIR filters
n−1
X
y(t) = hτ u(t − τ ), t∈Z
τ =0
Filter design 2
filter frequency response: H : R → C
√
• (EE tradition uses j = −1 instead of i)
• H is periodic and conjugate symmetric, so only need to know/specify
for 0 ≤ ω ≤ π
Filter design 3
example: (lowpass) FIR filter, order n = 21
impulse response h:
0.2
0.1
h(t)
−0.1
−0.2
0 2 4 6 8 10 12 14 16 18 20
Filter design 4
frequency response magnitude (i.e., |H(ω)|):
1
10
0
10
|H(ω)|
−1
10
−2
10
−3
10
0 0.5 1 1.5 2 2.5 3
ω
frequency response phase (i.e., 6 H(ω)):
3
2
H(ω)
−1
6
−2
−3
0 0.5 1 1.5 2 2.5 3
ω
Filter design 5
Chebychev design
• h is optimization variable
• Hdes : R → C is (given) desired transfer function
• convex problem
• can add constraints, e.g., |hi| ≤ 1
sample (discretize) frequency:
Filter design 6
Chebychev design via SOCP:
minimize t
subject to
A h − b
≤ t,
(k) (k)
k = 1, . . . , m
where
1 cos ωk ··· cos(n−1)ωk
A(k) =
0 −sin ωk · · · −sin(n−1)ωk
ℜHdes(ωk )
b(k) =
ℑHdes(ωk )
h0
h = ..
hn−1
Filter design 7
Linear phase filters
suppose
• n = 2N + 1 is odd
• impulse response is symmetric about midpoint:
ht = hn−1−t, t = 0, . . . , n − 1
then
Filter design 8
• term e−iN ω represents N -sample delay
e
• H(ω) is real
e
• |H(ω)| = |H(ω)|
• called linear phase filter (6 H(ω) is linear except for jumps of ±π)
Filter design 9
Lowpass filter specifications
δ1
1/δ1
δ2
ωp ωs π
ω
idea:
• pass frequencies in passband [0, ωp]
• block frequencies in stopband [ωs, π]
Filter design 10
specifications:
• maximum passband ripple (±20 log10 δ1 in dB):
|H(ω)| ≤ δ2, ωs ≤ ω ≤ π
Filter design 11
Linear phase lowpass filter design
• sample frequency
e
• can assume wlog H(0) > 0, so ripple spec is
e k ) ≤ δ1
1/δ1 ≤ H(ω
minimize δ2
e k ) ≤ δ1, 0 ≤ ωk ≤ ωp
subject to 1/δ1 ≤ H(ω
e k ) ≤ δ2, ωs ≤ ωk ≤ π
−δ2 ≤ H(ω
Filter design 12
• passband ripple δ1 is given
• an LP in variables h, δ2
Filter design 13
example
• linear phase filter, n = 21
• passband [0, 0.12π]; stopband [0.24π, π]
• max ripple δ1 = 1.012 (±0.1dB)
• design for maximum stopband attenuation
impulse response h:
0.2
0.1
h(t)
−0.1
−0.2
0 2 4 6 8 10 12 14 16 18 20
Filter design 14
frequency response magnitude (i.e., |H(ω)|):
1
10
0
10
|H(ω)| −1
10
−2
10
−3
10
0 0.5 1 1.5 2 2.5 3
ω
frequency response phase (i.e., 6 H(ω)):
3
1
H(ω)
−1
−2
6
−3
0 0.5 1 1.5 2 2.5 3
ω
Filter design 15
Equalizer design
H(ω) G(ω)
equalization: given
• G (unequalized frequency response)
• Gdes (desired frequency response)
e=∆
design (FIR equalizer) H so that G GH ≈ Gdes
Filter design 16
Chebychev equalizer design:
e
minimize max G(ω) − Gdes(ω)
ω∈[0,π]
Filter design 17
time-domain equalization: optimize impulse response g̃ of equalized
system
e.g., with Gdes(ω) = e−iDω ,
1 t=D
gdes(t) =
0 t=
6 D
sample design:
minimize maxt6=D |g̃(t)|
subject to g̃(D) = 1
• an LP
P 2
P
• can use t6=D g̃(t) or t6=D |g̃(t)|
Filter design 18
extensions:
• can impose (convex) constraints
G(k)H ≈ Gdes, k = 1, . . . , K
Filter design 19
Equalizer design example
0.8
0.6
g(t)
0.4
0.2
−0.2
−0.4
0 1 2 3 4 5 6 7 8 9
Filter design 20
1
10
|G(ω)|
0
10
−1
10
0 0.5 1 1.5 2 2.5 3
ω
2
G(ω)
−1
6
−2
−3
0 0.5 1 1.5 2 2.5 3
ω
e
design 30th order FIR equalizer with G(ω) ≈ e−i10ω
Filter design 21
Chebychev equalizer design:
minimize max G̃(ω) − e−i10ω
ω
0.8
g̃(t)
0.6
0.4
0.2
−0.2
0 5 10 15 20 25 30 35
Filter design 22
e
equalized frequency response magnitude |G|
1
10
|G(ω)| 0
10
e
−1
10
0 0.5 1 1.5 2 2.5 3
ω
e
equalized frequency response phase 6 G
3
2
G(ω)
0
e
−1
6
−2
−3
0 0.5 1 1.5 2 2.5 3
ω
Filter design 23
time-domain equalizer design:
0.8
0.6
g̃(t)
0.4
0.2
−0.2
0 5 10 15 20 25 30 35
Filter design 24
e
equalized frequency response magnitude |G|
1
10
0
10
|G(ω)|
e
−1
10
0 0.5 1 1.5 2 2.5 3
ω
e
equalized frequency response phase 6 G
3
0
G(ω)
−1
e
−2
6
−3
0 0.5 1 1.5 2 2.5 3
ω
Filter design 25
Filter magnitude specifications
Filter design 26
Autocorrelation coefficients
autocorrelation coefficients associated with impulse response
h = (h0, . . . , hn−1) ∈ Rn are
X
rt = hτ hτ +t
τ
Filter design 27
Fourier transform of autocorrelation coefficients is
X n−1
X
R(ω) = e−iωτ rτ = r0 + 2rt cos ωt = |H(ω)|2
τ t=1
. . . convex in r
Filter design 28
Spectral factorization
Filter design 29
log-Chebychev magnitude design
choose h to minimize
minimize t
subject to D(ω)2/t ≤ R(ω) ≤ tD(ω)2, 0≤ω≤π
• convex in variables r, t
• constraint includes spectral factorization condition
Filter design 30
√
example: 1/f (pink noise) filter (i.e., D(ω) = 1/ ω), n = 50,
log-Chebychev design over 0.01π ≤ ω ≤ π
1
10
0
10
|H(ω)|2
−1
10
−2
10 −1 0
10 10
ω
Filter design 31