Upload
blaise-cleavenger
View
221
Download
1
Tags:
Embed Size (px)
Citation preview
August 2004 Multirate DSP (Part 2/2) 1
Multirate DSP•Digital Filter Banks
•Filter Banks and Subband Processing
•Applications and Advantages
•Perfect Reconstruction FB
•2-band Quadrature-Mirror Filter Bank
•K-band Filter Bank Case
•Uniform DFT Modulated Filter Banks
August 2004 Multirate DSP (Part 2/2) 2
Digital Filter Banks
• So far we have mostly concentrated on the design, realisation and applications of single-input, single-output digital filters.
• In certain applications, it is desirable to separate a signal into a set of subband signals occupying, usually nonoverlapping, portions of the original frequency band.
• In other applications, it is necessary to combine many such subband signals into a single composite signal occupying the whole Nyquist range.
• To achieve the above two requirements, we need digital filter banks.
August 2004 Multirate DSP (Part 2/2) 3
H0(z)
H1(z)
HK-1(z)
. . .
v0[n]x[n]
v1[n]
vK-1[n]
F0(z)
F1(z)
FK-1(z). . .
v0’[n] y[n]
v1’[n]
vK-1’[n]
+
+
Analysis Filter Bank Synthesis Filter Bank
• K-band analysis filter bank with the subfilters Hk(z) known as the analysis filters.
• Decomposes input signal x[n] into a set of K subband signals vk[n] with each subband signal occupying a portion of the original frequency band.
• Synthesis filter bank - a set of subband signals v’k[n] is combined into one signal y[n].
• K-band synthesis bank where each filter Fk(z) is called synthesis filter.
August 2004 Multirate DSP (Part 2/2) 4
•Decimation: decimator (down-sampler)
example : u[k]: 1,2,3,4,5,6,7,8,9,…
2-fold down-sampling: 1,3,5,7,9,...
•Interpolation: expander (up-sampler)
example : u[k]: 1,2,3,4,5,6,7,8,9,…
2-fold up-sampling: 1,0,2,0,3,0,4,0,5,0...
L u[0], u[N], u[2N]...u[0],u[1],u[2]...
M u[0],0,..0,u[1],0,…,0,u[2]...u[0], u[1], u[2],...
Down-sampler and up-sampler (Revisited)
August 2004 Multirate DSP (Part 2/2) 5
General `subband processing’ set-up/overview:
- signals split into frequency channels/subbands (`analysis bank’)
- per-channel/subband processing
- reconstruction (`synthesis bank’)
- multi-rate structure: down-sampling / up-sampling
Filter Banks and Subband Processing [1/6]
subband processing 3H1(z)
subband processing 3H2(z)
subband processing 3H3(z)
3
3
3
3 subband processing 3H4(z)
IN
G1(z)
G2(z)
G3(z)
G4(z)
+
OUT
August 2004 Multirate DSP (Part 2/2) 6
Step-1: Analysis filter bank
- collection of M filters (`analysis filters’, `decimation filters’) with a
common input signal
- ideal (but non-practical) frequency responses = ideal bandpass filters
- typical frequency responses (overlapping, marginally overlapping,
non-overlapping)
2
H1(z)
H2(z)
H3(z)
H4(z)
IN2
H1 H4H3H2
H1 H4H3H2
H1 H4H3H2
2
K=4
2
Filter Banks and Subband Processing [2/6]
August 2004 Multirate DSP (Part 2/2) 7
Step-2: Decimators (down-samplers)
- subband sampling rate reduction by factor N
- critically decimatedcritically decimated filter banks (= maximally down-sampled filter banks):
N = K (where, K = number filters/subbands)
this sounds like maximum efficiency, but aliasing problem arises!
- over-sampled filter banks (= non-critically down-sampled filter banks):
N < K
Filter Banks and Subband Processing [3/6]
H1(z)
H2(z)
H3(z)
H4(z)
IN
3
3
3
3
N=3K=4
August 2004 Multirate DSP (Part 2/2) 8
Step-3: Subband processing
- Example :
coding (=compression) + (transmission or storage) + decoding
- Filter bank design mostly assumes subband processing has `unit
transfer function’ (output signals = input signals), i.e. mostly ignores
presence of subband processing
subband processingH1(z)
subband processingH2(z)
subband processingH3(z)
3
3
3
3 subband processingH4(z)
IN
N=3K=4
Filter Banks and Subband Processing [4/6]
August 2004 Multirate DSP (Part 2/2) 9
Step-4: Expanders (up-samplers)
- restore original fullband sampling rate by N-fold up-sampling
(= insert N-1 zeros in between every two samples)
Filter Banks and Subband Processing [5/6]
subband processing 3H1(z)
subband processing 3H2(z)
subband processing 3H3(z)
3
3
3
3 subband processing 3H4(z)
IN
K=4 N=3 N=3
August 2004 Multirate DSP (Part 2/2) 10
Filter Banks and Subband Processing [6/6]
Step-5: Synthesis filter bank
- collection of K filters (`synthesis filters’, `interpolation filters’) with a
`common’ (summed) output signal
- frequency responses : preferably `matched’ to frequency responses of
the analysis filters, e.g., to provide perfect reconstruction (see below)
2
G1 G4G3G2
2
G1 G4G3G22
G1 G4G3G2G1(z)
G2(z)
G3(z)
G4(z)
+
OUT
K=4
2
August 2004 Multirate DSP (Part 2/2) 11
Aliasing versus Perfect Reconstruction
Assume subband processing does not modify subband signals
(e.g. lossless coding/decoding)
- The overall aim could be to have y[k]=u[k-d], i.e. that the output signal is
equal to the input signal up to a certain delay
- But: down-sampling introduces ALIASING, especially in maximally
decimated (but even so in non-maximally decimated) filter banks
- Question : Can y[k]=u[k-d] be achieved in the presence of aliasing?
- Answer = YES, see below: PERFECT RECONSTRUCTION banks with
synthesis bank designed to remove aliasing effects !
output=input 3H1(z)
3H2(z)
3H3(z)
3333 3H4(z)
u[k]
G1(z)
G2(z)
G3(z)
G4(z)
+y[k]=u[k-d]?
output=input
output=input
output=input
August 2004 Multirate DSP (Part 2/2) 12
Multirate DSP•Digital Filter Banks
•Filter Banks and Subband Processing
•Applications and Advantages
•Perfect Reconstruction FB
•2-band Quadrature-Mirror Filter Bank
•K-band Filter Bank Case
•Uniform DFT Modulated Filter Banks
August 2004 Multirate DSP (Part 2/2) 13
Filter Banks Applications [1/5]
1. Speech coding
2. Image compression
3. Adaptive equalization
4. Echo cancellation
5. Adaptive beamforming
6. Transmultiplexers (TDM)
7. Code division multiple access (CDMA)
coding
adaptive filtering
August 2004 Multirate DSP (Part 2/2) 14
Filter Banks Applications [2/5]
Subband coding:
Coding = Fullband signal split into subbands & down-sampled
subband signals separately encoded
(e.g. subband with smaller energy content encoded with fewer bits)
Decoding = reconstruction of subband signals, then fullband
signal synthesis (expanders + synthesis filters)
Example : Image coding (e.g. wavelet filter banks)
Example : Audio coding
e.g. digital compact cassette (DCC), MiniDisc, MPEG, ...
Filter bandwidths and bit allocations chosen to further
exploit perceptual properties of human hearing
(perceptual coding, masking, etc.)
August 2004 Multirate DSP (Part 2/2) 15
Subband adaptive filtering:
Example 1: Adaptive channel equalization
Adaptive equalizer is employed to mitigate the effect of inter-symbol interference (ISI), that occurs due to limited bandwidth and multipath propagation.
Example 2: Acoustic echo cancellation
Adaptive filter models (time-varying) acoustic echo path and produces a copy of the echo, which is then subtracted from microphone signal.
= difficult problem !
* long acoustic impulse responses
* time-varying
Filter Banks Applications [3/5]
August 2004 Multirate DSP (Part 2/2) 16
Subband adaptive filtering (continued):
Example 1: Adaptive channel equalization
Adaptive equalizer is employed to mitigate the effect of inter-symbol interference (ISI), that occurs due to limited bandwidth and multipath propagation.
Filter Banks Applications [4/5]
August 2004 Multirate DSP (Part 2/2) 17
3H1(z)
3H2(z)
3H3(z)
3H4(z)
3H1(z)
3H2(z)
3H3(z)
3H4(z) ++
++ 3 G1(z)
3 G2(z)
3 G3(z)
3 G4(z)
OUT+
ad.filter
ad.filter
ad.filter
ad.filter
Subband adaptive filtering (continued):
Example 2: Acoustic echo cancellation
- Subband filtering = K subband modeling problems instead of one fullband
modeling problem
- Perfect reconstruction guarantees distortion-free desired near-end
speech signal
Filter Banks Applications [5/5]
August 2004 Multirate DSP (Part 2/2) 18
General advantages of subband decomposition techniques
1. Allow parallel processing of signal will slower processor, as the sampling rate is reduces in each subband.
2. Computational complexity reduction. For instance in compression application where subband are compressed at different rates, e.g. speech processing and image compression.
3. Improve/increase convergence speed in adaptive filtering applications, e.g. echo cancellation and adaptive equalization.
August 2004 Multirate DSP (Part 2/2) 19
- analysis bank + synthesis bank
- multirate structure: down-sampling after analysis, up-sampling for synthesis
- aliasing vs. “perfect reconstruction”
- filter bank implementation (for N = decimation factor, K = number of subband):
1. critically-sampled FB N = K
2. over-sampled FB N < K
- applications: coding, (adaptive) filtering, transmultiplexers
- advantages of subband processingsubband processing 3H1(z)
subband processing 3H2(z)
subband processing 3H3(z)
3
3
3
3 subband processing 3H4(z)
IN
G1(z)
G2(z)
G3(z)
G4(z)
+
OUT
Conclusion I: General `subband processing’ set-up
August 2004 Multirate DSP (Part 2/2) 20
Multirate DSP•Digital Filter Banks
•Filter Banks and Subband Processing
•Applications and Advantages
•Perfect Reconstruction FB
•2-band Quadrature-Mirror Filter Bank
•K-band Filter Bank Case
•Uniform DFT Modulated Filter Banks
August 2004 Multirate DSP (Part 2/2) 21
Two design issues :
1. filter specifications, e.g. stopband attenuation, passband ripple, transition band, etc. (for each (analysis) filter!)
2. (nearly) perfect reconstruction property...
Design Issues
August 2004 Multirate DSP (Part 2/2) 22
Perfect Reconstruction: K = 2 subbands case
H0(z)
H1(z)
2
2
u[k] 2
2
G0(z)
G1(z)+
y[k]
2KN
)(.
)(
)}()()().(.{2
1)(.
)(
)}()()().(.{2
1)( 11001100 zU
zA
zGzHzGzHzU
zT
zGzHzGzHzY
It is proved that... (try it!)
• U(-z) represents aliased signals, hence the `alias transfer function’ A(z) should ideally be zero
• T(z) is referred to as `distortion function’ (amplitude & phase distortion). For perfect reconstruction, T(z) should ideally be a pure delay
August 2004 Multirate DSP (Part 2/2) 23
• Alias-free filter bank:
• Perfect reconstruction filter bank (= alias-free + distortion-free):
i)
ii)
• PS: if A(z)=0, then Y(z) = T(z).U(z), hence the complete filter bank behaves as a linear time invariant (LTI) system (despite up- & down-sampling)!
Perfect Reconstruction: K = 2 subbands case
H0(z)
H1(z)
2
2
u[k] 2
2
G0(z)
G1(z)+
y[k]
0)( zA
0)( zA
zzT )(
August 2004 Multirate DSP (Part 2/2) 24
• An initial choice is ….. :
so that
• For the real coefficient case:
which means the amplitude response of H1 is the mirror image of the
amplitude response of H0 with respect to the quadrature frequency
hence the name `quadrature mirror filter’ (QMF)
Perfect Reconstruction: K = 2 subbands case
H0(z)
H1(z)
2
2
u[k] 2
2
G0(z)
G1(z)+
y[k]
)()( ),()( ),()( 110001 zHzGzHzGzHzH
0...)( zA )}()({2
1...)( 2
020 zHzHzT
)(...)()
2(
0
)2
(
1
jj
eHeH
ignore the details!
August 2004 Multirate DSP (Part 2/2) 25
• quadrature mirror filter (QMF):
• hence if H0 (=G0) is designed to be a good lowpass filter, then H1 (=-G1) is a good high-pass filter.
Perfect Reconstruction: K = 2 subbands case
H0(z)
H1(z)
2
2
u[k] 2
2
G0(z)
G1(z)+
y[k]
2
H0 H1
August 2004 Multirate DSP (Part 2/2) 26
Perfect Reconstruction: K number subbands caseKN
H2(z)
H3(z)
4
4
4
4
G2(z)
G3(z)
y[k]
H0(z)
H1(z)
4
4u[k]
4
4
G0(z)
G1(z)
+
• It is proved that... (try it!)
• 2nd term represents aliased signals, hence all `alias transfer functions’ Al(z) should ideally be zero (for all l )
• T(z) is referred to as `distortion function’ (amplitude & phase distortion). For perfect reconstruction, T(z) should ideally be a pure delay
).(.
)(
)}()..({.1
)(.
)(
})().(.{1
)(1
1
1
0
1
0
lM
l
M
kk
lk
M
kkk WzU
zl
A
zGWzHM
zU
zT
zGzHM
zY
ignore the details!
August 2004 Multirate DSP (Part 2/2) 27
Multirate DSP•Digital Filter Banks
•Filter Banks and Subband Processing
•Applications and Advantages
•Perfect Reconstruction FB
•2-band Quadrature-Mirror Filter Bank
•K-band Filter Bank Case
•Uniform DFT Modulated Filter Banks
August 2004 Multirate DSP (Part 2/2) 28
Uniform versus non-uniform (analysis) filter bank:
• non-uniform: e.g. for speech & audio applications
• uniform filter bank:
= frequency responses uniformly shifted over the unit circle
• H0(z) = `prototype’ filter, is the only filter that has to be designed
Uniform DFT-Modulated Filter Banks
H0(z)
H1(z)
H2(z)
H3(z)
IN
H0 H3H2H1
H0 H3H2H1uniform
non-uniform
).()( /20
Nkjk ezHzH
August 2004 Multirate DSP (Part 2/2) 29
Uniform DFT-Modulated Filter Banks
• Uniform filter banks can be implemented cheaply based on polyphase decompositions + FFT :
1. Uniform DFT-modulated analysis filter banks
If
then
).()( with )(),...,(),( /20110
NkjkN ezHzHzHzHzH
)(.)(1
00
N
l
Nl
l zEzzH
with , )(..
)(..).()(
/21
0
1
0
1
/2/2/20
NjN
l
Nl
kll
N
l
NkNjNl
NkljlNkjk
eWzEWz
ezEezezHzH
H0(z)
H1(z)
H2(z)
H3(z)
u[k]
August 2004 Multirate DSP (Part 2/2) 30
Uniform DFT-Modulated Filter Banks
Nj
NN
N
N
N
N
NNN
N
N
N
eW
zU
zEz
zEz
zEz
zE
F
WWWW
WWWW
WWWW
WWWW
zU
zH
zH
zH
zH
/2
11
22
11
0
)1()1(2)1(0
)1(2420
)1(210
0000
1
2
1
0
)(.
)(.
:
)(.
)(.
)(
.
*
...
::::
...
...
...
)(.
)(
:
)(
)(
)(
2
where F is NxN DFT-matrix
*F
u[k]
)( 40 zE
)( 41 zE
)( 42 zE
)( 43 zE
)(0 zH
)(1 zH
)(2 zH
)(3 zH
ignore the details!
August 2004 Multirate DSP (Part 2/2) 31
Uniform DFT-Modulated Filter Banks
• Uniform DFT-modulated analysis FB + decimation (K=N)
*F 4
4
4
4u[k]
)( 40 zE
)( 41 zE
)( 42 zE
)( 43 zE
u[k]
4
4
4
4
*F)(0 zE
)(1 zE
)(2 zE
)(3 zE
=
August 2004 Multirate DSP (Part 2/2) 32
2. Uniform DFT-modulated synthesis filter banks
Uniform DFT-Modulated Filter Banks
+
+
+
)(0 zG][0 ku
)(1 zG][1 ku
)(2 zG][2 ku
)(3 zG][3 kuy[k]
).(.)( with )(),...,(),( /20
/2110
NkjNkjkN ezGezGzGzGzG
)(.)(1
00
N
l
Nl
l zRzzG )(..... )(1
0
)1(
N
l
Nl
lNklk zRWzzG
August 2004 Multirate DSP (Part 2/2) 33
Nj
NNNN
N
N
NNNNN
N
N
N
eW
zU
zU
zU
zU
F
WWWW
WWWW
WWWW
WWWW
zRzRzzRzzRz
zU
zU
zU
zU
zFzFzFzFzY
/2
1
2
1
0
)1()1(2)1(0
)1(2420
)1(210
0000
011
22
11
1
2
1
0
1210
)(
:
)(
)(
)(
.
...
::::
...
...
...
.)()(.)(....)(.
)(
:
)(
)(
)(
.)(...)()()()(
2
where F is NxN DFT-matrix
y[k]
+
+
+)( 40 zR
)( 41 zR
)( 42 zR
)( 43 zR][0 ku
][1 ku
][2 ku
][3 ku
F
ignore the details!
August 2004 Multirate DSP (Part 2/2) 34
Uniform DFT-Modulated Filter Banks
• Expansion (K=N) + uniform DFT-modulated synthesis FB:
y[k]
4
4
4
4
+
+
+)(0 zR
)(1 zR
)(2 zR
)(3 zR][0 ku
][1 ku
][2 ku
][3 ku
F
y[k]
+
+
+
4
4
4
4 )( 40 zR
)( 41 zR
)( 42 zR
)( 43 zR][0 ku
][1 ku
][2 ku
][3 ku
F
=
August 2004 Multirate DSP (Part 2/2) 35
Uniform DFT-Modulated Filter Banks
• For over-sampled case, with down-sampling factor (N) smaller that the number of subbands (K) [i.e. N < K], aliasing is expected to become a smaller problem, possibly negligible if N<<K.
• Still, PR theory (hence perfect alias cancellation) is not necessarily simpler.
August 2004 Multirate DSP (Part 2/2) 36
• Design problem = all filter specs + alias cancellation (PR)
• Uniform versus non-uniform filter banks
• Critically-sampled and over-sampled PR filter banks
• Modulated PR filter banks
• DFT-modulated filter banks
• Other methods: GDFT-modulated filter banks and DCT-modulated filter banks (not considered here!)
• Economy in design (only prototype) & implementation
Conclusion II: