DSPCIS Chapter7 Introduction to Multirate Systems Filter Banks
DSP-CIS Chapter-7: Introduction to Multi-rate Systems & Filter Banks Marc Moonen Dept. E. E. /ESAT, KU Leuven marc. moonen@esat. kuleuven. be www. esat. kuleuven. be/scd/
Overview • Filter banks introduction Introduction Applications Aliasing & perfect reconstruction • Review of multi-rate systems • DFT/IDFT filter bank • Maximally decimated DFT-modulated filter banks • Other… DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 2
Filter Banks Introduction What we have in mind is this… : IN H 1(z) subband processing H 2(z) subband processing H 3(z) subband processing H 4(z) subband processing + OUT H 1 H 2 H 3 H 4 - Signals split into frequency channels/subbands - Per-channel/subband processing - Reconstruction : synthesis of processed signal - Applications : see below (audio coding etc. ) - In practice, this is implemented as a multi-rate structure for higher efficiency (see next slides) DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 3
Filter Banks Introduction Step-1: Analysis filter bank - collection of N filters (`analysis filters’, `decimation filters’) with a common input signal - ideal (but non-practical) frequency responses = ideal bandpass filters - typical frequency responses (overlapping, non-overlapping, …) N=4 H 1(z) IN H 2(z) H 3(z) H 1 H 2 H 3 H 4(z) DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 4
Filter Banks Introduction Step-2: Decimators (downsamplers) - To increase efficiency, subband sampling rate is reduced by factor D (= Nyquist (bandpass) sampling theorem) - Maximally decimated filter banks (=critically downsampled): D=N # subband samples= # fullband samples this sounds like maximum efficiency, but aliasing (see below)! - Oversampled filter banks (=non-critically downsampled): D<N # subband samples> # fullband samples N=4 H 1(z) IN H 2(z) H 3(z) H 4(z) D=3 3 PS: 3 -fold downsampling 3 = ‘remove every 2 nd and 3 rd sample’ (see below) DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 5
Filter Banks Introduction 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 N=4 H 1(z) IN H 2(z) H 3(z) H 4(z) D=3 3 3 subband processing DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 6
Filter Banks Introduction Step-4: Expanders (upsamplers) - restore original fullband sampling rate by D-fold upsampling PS: 3 -fold upsampling = ‘insert 2 zeros in between every two samples’ (see below) N=4 H 1(z) IN H 2(z) H 3(z) H 4(z) D=3 3 3 subband processing DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 3 3 p. 7
Filter Banks Introduction Step-5: Synthesis filter bank - upsampling has to be followed by (interpolation) filtering (see p. 22) - collection of N `synthesis’ (`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) G 1 N=4 H 1(z) IN H 2(z) H 3(z) H 4(z) G 3 G 4 D=3 3 3 G 2 subband processing DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 3 3 G 1(z) G 2(z) G 3(z) OUT + G 4(z) p. 8
Aliasing versus Perfect Reconstruction - Assume subband processing does not modify subband signals (e. g. lossless coding/decoding) -The overall aim would then 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: downsampling introduces ALIASING, especially so in maximally decimated (but also in non-maximally decimated) filter banks N=4 H 1(z) u[k] H 2(z) H 3(z) H 4(z) D=3 3 3 output = input DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 3 3 G 1(z) G 2(z) G 3(z) y[k]=u[k-d]? + G 4(z) p. 9
Aliasing versus Perfect Reconstruction Question : Can y[k]=u[k-d] be achieved in the presence of aliasing ? Answer : YES !! PERFECT RECONSTRUCTION banks with synthesis bank designed to remove aliasing effects ! N=4 H 1(z) u[k] H 2(z) H 3(z) H 4(z) D=3 3 3 output = input DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 3 3 G 1(z) G 2(z) G 3(z) y[k]=u[k-d]? + G 4(z) p. 10
Filter Banks Applications • Subband coding : Coding = Fullband signal split into subbands & downsampled 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), Mini. Disc, MPEG, . . . Filter bandwidths and bit allocations chosen to further exploit perceptual properties of human hearing (perceptual coding, masking, etc. ) DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 11
Filter Banks Applications • Subband adaptive filtering : - See Chapter-8 - Example : 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 DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 12
Filter Banks Applications - Subband filtering = N (simpler? ) subband modeling problems instead of one (more complicated? ) fullband modeling problem - Perfect reconstruction guarantees distortion-free desired near-end speech signal H 1(z) H 2(z) H 3(z) H 4(z) 3 3 3 3 ad. filter + + DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 3 3 G 1(z) G 2(z) G 3(z) OUT + G 4(z) p. 13
Filter Banks Applications • Transmultiplexers : Frequency Division Multiplexing (FDM) in digital communications - N different source signals multiplexed into 1 transmit signal by expanders & synthesis filters (ps: here interpolation factor D>=N - Received signal decomposed into N source signals by analysis filters & decimators signal-1 signal-2 signal-3 signal-4 5 5 G 1(z) G 2(z) G 3(z) H 1(z) + transmission channel G 4(z) H 2(z) H 3(z) H 4(z) 5 5 signal-1 signal-2 signal-3 signal-4 - Again ideal filters = ideal bandpass filters DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 14 )
Filter Banks Applications - Non-ideal synthesis & analysis filters result in aliasing as well as CROSS-TALK between channels, i. e. each reconstructed signal contains unwanted contributions from other signals - Analysis & synthesis are reversed here, but similar perfect reconstruction theory (try it!) (where analysis bank removes cross-talk introduced by synthesis bank, if transmission channel = distortion free) DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 15
Filter Banks Applications PS: special case is Time Division Multiplexing (TDM), if synthesis and analysis filters are replaced by delay operators (and N=D) u 1[k], u 2[k], u 3[k], u 4[k], u 1[k+1], u 2[k+1]. . . u 1[k], u 1[k+1] u 2[k], u 2[k+1] u 3[k], u 3[k+1] u 4[k], u 4[k+1] 4 4 + transmission channel 4 4 u 1[k-1], u 1[k] u 2[k-1], u 2[k] u 3[k-1], u 3[k] u 4[k-1], u 4[k] 0, 0, 0, u 4[k], 0, 0, 0, u 4[k+1]. . . PS: special case is Code Division Multiplexing (CDMA) p. 16 PS: another special case is OFDM… explain! What are Gi(z) & Hi(z) ? DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013
Review of Multi-rate Systems 1/10 • Decimation : decimator (downsampler) u[0], u[1], u[2]. . . D u[0], u[N], u[2 D]. . . example : u[k]: 1, 2, 3, 4, 5, 6, 7, 8, 9, … 2 -fold downsampling: 1, 3, 5, 7, 9, . . . • Interpolation : expander (upsampler) u[0], u[1], u[2], . . . D u[0], 0, . . 0, u[1], 0, …, 0, u[2]. . . example : u[k]: 1, 2, 3, 4, 5, 6, 7, 8, 9, … 2 -fold upsampling: 1, 0, 2, 0, 3, 0, 4, 0, 5, 0. . . DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 17
Review of Multi-rate Systems 2/10 • Z-transform (frequency domain) analysis of expander u[0], u[1], u[2], . . . D u[0], 0, . . 0, u[1], 0, …, 0, u[2]. . . D `images’ D `expansion in time domain ~ compression in frequency domain’ DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 18
Review of Multi-rate Systems 2 bis/10 • Z-transform (frequency domain) analysis of expander u[0], u[1], u[2], . . . D u[0], 0, . . 0, u[1], 0, …, 0, u[2]. . . expander mostly followed by `interpolation filter’ to remove images (and `interpolate the zeros’) `images’ 3 LP interpolation filter can be low-/band-/high-pass DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 19
Review of Multi-rate Systems 3/10 • Z-transform (frequency domain) analysis of decimator u[0], u[1], u[2]. . . D u[0], u[D], u[2 D]. . . D d=2 d=0 d=1 3 `compression in time domain ~ expansion in frequency domain’ PS: Note that is periodic with period while is periodic with period The summation with d=0…D-1 restores the periodicity with period ! DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 20
Review of Multi-rate Systems 4/10 • Z-transform (frequency domain) analysis of decimator u[0], u[1], u[2]. . . D u[0], u[N], u[2 D]. . . decimation introduces ALIASING if input signal occupies frequency band larger than , hence mostly preceded by anti-aliasing (decimation) filter d=2 LP d=0 d=1 3 anti-aliasing filter can be low-/band-/high-pass DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 21
Review of Multi-rate Systems 5/10 • Interconnection of multi-rate building blocks : D x D = x a u 1[k] a D + = u 2[k] u 1[k] D x u 2[k] = u 1[k] D u 2[k] D + x identities also hold if all decimators are replaced by expanders DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 22
Review of Multi-rate Systems 6/10 • `Noble identities’ (I) : u[k] D y[k] (only for rational functions) = u[k] D y[k] Example : D=2 h[0], h[1], 0, 0, 0, … DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 23
Review of Multi-rate Systems 7/10 • `Noble identities’ (II) : u[k] D y[k] (only for rational functions) = u[k] D y[k] Example : D=2 h[0], h[1], 0, 0, 0, … DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 24
Review of Multi-rate Systems 8/10 Application of `noble identities : efficient multi-rate realizations of FIR filters through… • Polyphase decomposition: example : (2 -fold decomposition) example : (3 -fold decomposition) general: (D-fold decomposition) DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 25
Review of Multi-rate Systems 9/10 • Polyphase decomposition: Example : efficient implementation of an FIR decimation filter u[k] H(z) + = u[k] 2 2 2 + i. e. all filter operations performed at the lowest rate DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 26
Review of Multi-rate Systems 10/10 • Polyphase decomposition: Example : efficient implementation of an FIR interpolation filter u[k] H(z) 2 + = u[k] 2 2 + i. e. all filter operations performed at the lowest rate DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 27
DFT/IDFT Filter Bank • Basic question is. . : Downsampling introduces ALIASING, then how can PERFECT RECONSTRUCTION (PR) (i. e. y[k]=u[k-d]) be achieved ? • Next slides provide simple PR-FB example, to demonstrate that PR can indeed (easily) be obtained • Discover the magic of aliasing-compensation…. H 1(z) u[k] H 2(z) H 3(z) H 4(z) 4 4 output = input DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 4 4 G 1(z) G 2(z) G 3(z) y[k]=u[k-d]? + G 4(z) p. 28
DFT/IDFT Filter Bank First attempt to design a perfect reconstruction filter bank - Starting point is this : u[k] u[0], 0, 0, 0, u[4], 0, 0, 0, . . . 4 4 + u[-1], u[0], 0, 0, u[3], u[4], 0, 0, . . . 4 4 + u[-2], u[-1], u[0], 0, u[2], u[3], u[4], 0, . . . 4 4 + u[-3], u[-2], u[-1], u[0], u[1], u[2], u[3], u[4], . . . u[k-3] convince yourself that y[k]=u[k-3] … DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 29
DFT/IDFT Filter Bank - An equivalent representation is. . . u[k] 4 4 4 4 + u[k-3] As y[k]=u[k-d], this can already be viewed as a (1 st) perfect reconstruction filter bank (with lots of aliasing in the subbands!) All analysis/synthesis filters are seen to be pure delays, hence are not frequency selective (i. e. far from ideal case with ideal bandpass filters…. ) PS: Transmux version (TDM) see p. 16 DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 30
DFT/IDFT Filter Bank -now insert DFT-matrix (discrete Fourier transform) and its inverse (I-DFT). . . u[k] 4 4 4 4 + u[k-3] as this clearly does not change the input-output relation (hence perfect reconstruction property preserved) DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 31
DFT/IDFT Filter Bank - …and reverse order of decimators/expanders and DFTmatrices (not done in an efficient implementation!) : 4 4 u[k] =analysis filter bank 4 4 + u[k-3] =synthesis filter bank This is the `DFT/IDFT filter bank’. It is a first (or 2 ) example of a maximally decimated perfect reconstruction filter bank ! nd DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 32
DFT/IDFT Filter Bank What do analysis filters look like? (N-channel case) u[k] : : This is seen (known) to represent a collection of filters Ho(z), H 1(z), . . . , each of which is a frequency shifted version of Ho(z) : i. e. the Hn are obtained by uniformly shifting the `prototype’ Ho over the frequency axis. DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 33
DFT/IDFT Filter Bank H 2(z) H 1(z) The prototype filter Ho(z) is a not-so-great lowpass filter with significant sidelobes. Ho(z) and Hi(z)’s are thus far from ideal lowpass/bandpass filters. Ho(z) H 3(z) N=4 Hence (maximal) decimation introduces significant ALIASING in the decimated subband signals Still, we know this is a PERFECT RECONSTRUCTION filter bank (see construction previous slides), which means the synthesis filters can apparently restore the aliasing distortion. This is remarkable! Other perfect reconstruction banks : read on. . DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 34
DFT/IDFT Filter Bank Synthesis filters ? : : *(1/N) N=4 + synthesis filters are (roughly) equal to analysis filters… PS: Efficient DFT/IDFT implementation based on FFT algorithm (`Fast Fourier Transform’). DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 35
Maximally Decimated DFT-Modulated FBs Uniform versus non-uniform (analysis) filter bank: IN H 0(z) H 1(z) H 2(z) H 3(z) uniform non-uniform H 0 H 1 H 2 H 3 • N-channel uniform FB: i. e. frequency responses are uniformly shifted over the unit circle Ho(z)= `prototype’ filter (=one and only filter that has to be designed) Time domain equivalent is: • non-uniform = everything that is not uniform e. g. for speech & audio applications (cfr. human hearing) example: wavelet filter banks DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 36
Maximally Decimated DFT-Modulated FBs Uniform filter banks can be realized cheaply based on polyphase decompositions + DFT(FFT) (hence name `DFT-modulated FB) 1. Analysis FB u[k] H 0(z) H 1(z) H 2(z) If H 3(z) (N-fold polyphase decomposition) then i. e. DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 37
Maximally Decimated DFT-Modulated FBs i. e. where F is Nx. N DFT-matrix (and `*’ is complex conjugate) This means that filtering with the Hn’s can be implemented by first filtering with polyphase components and then DFT DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 38
Maximally Decimated DFT-Modulated FBs i. e. u[k] conclusion: economy in… – implementation complexity (for FIR filters): N filters for the price of 1, plus DFT (=FFT) ! – design complexity: Design `prototype’ Ho(z), then other Hn(z)’s are automatically `co-designed’ (same passband ripple, etc…) ! DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 39
Maximally Decimated DFT-Modulated FBs • Special case: DFT-filter bank, if all En(z)=1 u[k] DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 Ho(z) H 1(z) p. 40
Maximally Decimated DFT-Modulated FBs • PS: with F instead of F* (see p. 32), only filter ordering is changed u[k] DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 Ho(z) H 1(z) p. 41
Maximally Decimated DFT-Modulated FBs • DFT-modulated analysis FB + maximal decimation u[k] 4 4 u[k] = 4 4 = efficient realization ! 4 4 DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 42
Maximally Decimated DFT-Modulated FBs 2. Synthesis FB: similar. . + + + y[k] DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 43
Maximally Decimated DFT-Modulated FBs • Expansion + DFT-modulated synthesis FB : 4 4 + 4 + y[k] 4 = 4 + 4 + DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 = efficient realization ! y[k] p. 44
Maximally Decimated DFT-Modulated FBs How to achieve Perfect Reconstruction (PR) with maximally decimated DFT-modulated FBs? u[k] 4 4 4 4 + + + y[k] polyphase components of synthesis bank prototype filter are obtained by inverting polyphase components of analysis bank prototype filter DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 45
Maximally Decimated DFT-Modulated FBs u[k] 4 4 4 4 + + + y[k] Design Procedure : 1. Design prototype analysis filter Ho(z) (see Chapter-3). 2. This determines En(z) (=polyphase components). 3. Assuming all En(z) can be inverted (? ), choose synthesis filters DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 46
Maximally Decimated DFT-Modulated FBs • Will consider only FIR prototype analysis filters, leading to simple polyphase decompositions. • However, FIR En(z)’s generally again lead to IIR Rn(z)’s, where stability is a concern… • Hence need for other/better design procedures DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 47
Other FBs… • Para-unitary perfect reconstruction filter banks • Cosine-modulated perfect reconstruction filter banks • Non-critically downsampled DFT-modulated perfect recinstruction filter banks • Non-uniform filter banks • Wavelet filter banks • Etc… DSP-CIS / Chapter 7: Multi-rate Systems & Filter Banks / Version 2012 -2013 p. 48
- Slides: 48