Presentation is loading. Please wait.

Presentation is loading. Please wait.

DSP-CIS Chapter 6: Filter Banks - Preliminaries Marc Moonen Dept. E.E./ESAT, K.U.Leuven

Similar presentations


Presentation on theme: "DSP-CIS Chapter 6: Filter Banks - Preliminaries Marc Moonen Dept. E.E./ESAT, K.U.Leuven"— Presentation transcript:

1 DSP-CIS Chapter 6: Filter Banks - Preliminaries Marc Moonen Dept. E.E./ESAT, K.U.Leuven marc.moonen@esat.kuleuven.be www.esat.kuleuven.be/scd/

2 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 2 Chapter-6 Chapter-7 Chapter-8 Chapter-9 Part-II : Filter Banks : Preliminaries Filter bank (FB) set-up and applications `Perfect reconstruction’ problem + 1st example (DFT/IDFT) Multi-rate systems review (10 slides) : Maximally decimated FBs Perfect reconstruction filter banks (PR FBs) Paraunitary PR FBs : Modulated FBs Maximally decimated DFT-modulated FBs Oversampled DFT-modulated FBs : Special Topics Cosine-modulated FBs Non-uniform FBs & Wavelets Frequency domain filtering

3 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 3 Filter Banks Introduction What we have in mind is this… : - 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) subband processing H1(z) H2(z) H3(z) H4(z) IN + OUT H1H4H3H2

4 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 4 Filter Banks Introduction 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, non-overlapping,…) H1H4H3 H2 H1H4H3H2 H1H4H3H2 H1(z) H2(z) H3(z) H4(z) IN M=4

5 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 5 Filter Banks Introduction Step-2: Decimators (downsamplers) - To increase efficiency, subband sampling rate is reduced by factor N (= Nyquist (bandpass) sampling theorem, see Chapter-7) - Maximally decimated filter banks (=critically downsampled): # subband samples= # fullband samples this sounds like maximum efficiency, but aliasing (see below)! - Oversampled filter banks (=non-critically downsampled): # subband samples> # fullband samples N=M N<M H1(z) H2(z) H3(z) 3 3 3 3 H4(z) IN M=4N=3

6 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 6 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 subband processing H1(z) subband processing H2(z) subband processing H3(z) 3 3 3 3 subband processing H4(z) IN M=4N=3

7 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 7 Filter Banks Introduction Step-4: Expanders (upsamplers) - restore original fullband sampling rate by N-fold upsampling (=insert N-1 zeros in between every two samples) subband processing 3 H1(z) subband processing 3 H2(z) subband processing 3 H3(z) 3 3 3 3 subband processing 3 H4(z) IN M=4N=3

8 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 8 Filter Banks Introduction Step-5: Synthesis filter bank - upsampling has to be followed by (interpolation) filtering (see below) - collection of M `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) G1(z) G2(z) G3(z) G4(z) + OUT subband processing 3 H1(z) subband processing 3 H2(z) subband processing 3 H3(z) 3 3 3 3 subband processing 3 H4(z) IN M=4N=3 G1G4G3G2

9 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 9 Aliasing versus Perfect Reconstruction - Assume subband processing does not modify subband signals (e.g. lossless coding/decoding) -The overall aim would 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 (see also Chapter-7) G1(z) G2(z) G3(z) G4(z) + output = input 3 H1(z) output = input 3 H2(z) output = input 3 H3(z) 3 3 3 3 output = input 3 H4(z) M=4N=3 u[k] y[k]=u[k-d]?

10 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 10 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 ! G1(z) G2(z) G3(z) G4(z) + output = input 3 H1(z) output = input 3 H2(z) output = input 3 H3(z) 3 3 3 3 output = input 3 H4(z) M=4N=3 u[k] y[k]=u[k-d]?

11 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 11 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), MiniDisc, MPEG,... Filter bandwidths and bit allocations chosen to further exploit perceptual properties of human hearing (perceptual coding, masking, etc.)

12 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 12 Filter Banks Applications Subband adaptive filtering : - See Part III - 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

13 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 13 Filter Banks Applications Subband adaptive filtering (continued): - Subband filtering = M (simpler?) subband modeling problems instead of one (more complicated?) fullband modeling problem - Perfect reconstruction guarantees distortion-free desired near-end speech signal 3 H1(z) 3 H2(z) 3 H3(z) 3 H4(z) 3 H1(z) 3 H2(z) 3 H3(z) 3 H4(z) + + + + 3 G1(z) 3 G2(z) 3 G3(z) 3 G4(z) OUT + ad.filter

14 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 14 Filter Banks Applications: Transmux’s Transmultiplexers : Frequency Division Multiplexing (FDM) in digital communications - M different source signals multiplexed into 1 transmit signal by expanders & synthesis filters (ps: here interpolation factor ) - Received signal decomposed into M source signals by analysis filters & decimators - Again ideal filters = ideal bandpass filters 5 G1(z) 5 G2(z) 5 G3(z) 5 G4(z) + 5 H1(z) 5 H2(z) 5 H3(z) 5 H4(z) transmission channel signal-1 signal-2 signal-3 signal-4 signal-1 signal-2 signal-3 signal-4 N>=M

15 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 15 Transmultiplexers : (continued) - 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) Filter Banks Applications: Transmux’s

16 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 16 Filter Banks Applications: Transmux’s Transmultiplexers : (continued) PS: special case is Time Division Multiplexing (TDM), if synthesis and analysis filters are replaced by delay operators (and N=M) 4 4 4 4 + 4 4 4 transmission channel u1[k],u1[k+1] u2[k],u2[k+1] u3[k],u3[k+1] u4[k],u4[k+1] u1[k],u2[k],u3[k],u4[k],u1[k+1],u2[k+1]... 4 u1[k-1],u1[k] u2[k-1],u2[k] u3[k-1],u3[k] u4[k-1],u4[k] 0,0,0,u4[k],0,0,0,u4[k+1]... PS: another special case is OFDM… explain! What are Gi(z) & Hi(z) ?

17 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 17 Filter Banks Applications: Transmux’s Transmultiplexers : (continued) PS : special case is Code Division Multiple Access (CDMA), where filter coefficients=(orthogonal) user codes CDMA basics : (see digital coms courses)…… -Each user (i) is assigned a length-N pseudo-random code sequence -Transmission : For each symbol (k-th symbol for user-i), a `chip’ sequence is transmitted -Mostly binary codes ( ) with BPSK/QPSK symbols -Multiple access based on code-orthogonality (see below) Skip this slide

18 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 18 CDMA basics: -Reception : If (x) received signal = transmitted chip sequence (i.e. no channel effect, no noise), multiply chips with (synchronized) code sequence + sum. -Example (user i) transmitted symbols +1……… -1………. -1……… +1……… code sequence +1,+1,-1,-1 transmitted chips +1,+1,-1,-1 -1,-1,+1,+1 -1,-1,+1,+1 +1,+1,-1,-1 received chips +1,+1,-1,-1 -1,-1,+1,+1 -1,-1,+1,+1 +1,+1,-1,-1 +1,+1,-1,-1 (mult. with code & sum) received symbols (*1/4) +1………… -1…….…..-1…………+1 (x) PS: real-world CDMA is considerably more complicated (different channels for different users + channel dispersion, asynchronous users, scrambling codes, etc.) Filter Banks Applications: Transmux’s Skip this slide

19 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 19 Filter Banks Applications: Transmux’s CDMA Transmission/reception block scheme : -transmitter code-multiplication may be viewed as filtering operation, with FIR transmit filter -receiver code-multiplication & summation may be viewed as filtering operation, with receive filter -PR for `flat’ channel H(z)=1 and if codes are orthogonal (prove it!) 4 4 4 4 + 4 4 4 transmission channel u1[k],u1[k+1] u2[k],u2[k+1] u3[k],u3[k+1] u4[k],u4[k+1] u2[k+1],u2[k] 4 Base station User-2 terminal Skip this slide

20 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 20 PR-FB Example: 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 examples, to demonstrate that PR can indeed (easily) be obtained Discover the magic of aliasing-compensation…. G1(z) G2(z) G3(z) G4(z) + output = input 4 H1(z) output = input 4 H2(z) output = input 4 H3(z) 4 4 4 4 output = input 4 H4(z) u[k] y[k]=u[k-d]?

21 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 21 DFT/IDFT Filter Bank First attempt to design a perfect reconstruction filter bank - Starting point is this : convince yourself that y[k]=u[k-3] … 4 4 4 4 u[k] 4 4 4 4 + + + u[k-3] u[0],0,0,0,u[4],0,0,0,... u[-1],u[0],0,0,u[3],u[4],0,0,... u[-2],u[-1],u[0],0,u[2],u[3],u[4],0,... u[-3],u[-2],u[-1],u[0],u[1],u[2],u[3],u[4],...

22 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 22 DFT/IDFT Filter Bank - An equivalent representation is... As y[k]=u[k-d], this can already be viewed as a (1 st ) perfect reconstruction filter bank (with 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 see p.16 4 4 4 4 + u[k-3] 4 4 4 4 u[k]

23 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 23 DFT/IDFT Filter Bank -now insert DFT-matrix (discrete Fourier transform) and its inverse (I-DFT)... as this clearly does not change the input-output relation (hence perfect reconstruction property preserved) 4 4 4 4 + u[k-3] 4 4 4 4 u[k]

24 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 24 DFT/IDFT Filter Bank - …and reverse order of decimators/expanders and DFT- matrices (not done in an efficient implementation!) : =analysis filter bank =synthesis filter bank This is the `DFT/IDFT filter bank’. It is a first (or 2 nd ) example of a maximally decimated perfect reconstruction filter bank ! 4 4 4 4 u[k] 4 4 4 4 + u[k-3]

25 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 25 DFT/IDFT Filter Bank What do analysis filters look like? This is seen (known) to represent a collection of filters Ho(z),H1(z),..., each of which is a frequency shifted version of Ho(z) : i.e. the Hi are obtained by uniformly shifting the `prototype’ Ho over the frequency axis. u[k]

26 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 26 DFT/IDFT Filter Bank The prototype filter Ho(z) is a not-so-great lowpass filter with first sidelobe only 13 dB below the main lobe. Ho(z) and Hi(z)’s are thus far from ideal lowpass/ bandpass filters. Hence (maximal) decimation introduces significant ALIASING in the decimated subband signals Still, we know this is a PERFECT RECONSTRUCTION filter bank (see construction p.21-24), which means the synthesis filters can apparently restore the aliasing distortion. This is remarkable! Other perfect reconstruction banks : see Chapter-7 Ho(z)H1(z) N=8

27 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 27 DFT/IDFT Filter Bank What do synthesis filters look like? synthesis filters are (roughly) equal to analysis filters (details omitted, see also Chapter-7) PS: Efficient DFT/IDFT implementation based on FFT algorithm (`Fast Fourier Transform’). + *(1/N) N=8

28 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 28 Conclusions Seen the general subband processing set-up + applications Filter bank system is multi-rate structure, with decimators and expanders, hence ALIASING is a major concern Seen a first (simple & not-so-great) example of a PERFECT RECONSTRUCTION filter bank (DFT/IDFT) Sequel = other (better) PR structures Chapter 7: Maximally decimated filter banks Chapter 8: Modulated filter banks Chapter 9: Oversampled filter banks, etc.. Reference: `Multirate Systems & Filter Banks’, P.P. Vaidyanathan Prentice Hall 1993.

29 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 29 Review of Multi-rate Systems 1/10 Decimation : decimator (downsampler) example : u[k]: 1,2,3,4,5,6,7,8,9,… 2-fold downsampling: 1,3,5,7,9,... Interpolation : expander (upsampler) 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... N u[0], u[N], u[2N]... u[0],u[1],u[2]... N u[0],0,..0,u[1],0,…,0,u[2]...u[0], u[1], u[2],...

30 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 30 Review of Multi-rate Systems 2/10 Z-transform (frequency domain) analysis of expander `expansion in time domain ~ compression in frequency domain’ N u[0],0,..0,u[1],0,…,0,u[2]...u[0], u[1], u[2],... N 3 `images’

31 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 31 Review of Multi-rate Systems 2bis/10 Z-transform (frequency domain) analysis of expander expander mostly followed by `interpolation filter’ to remove images (and `interpolate the zeros) interpolation filter can be low-/band-/high-pass (see Chapter-7) N u[0],0,..0,u[1],0,…,0,u[2]...u[0], u[1], u[2],... 3 `images’ LP

32 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 32 Review of Multi-rate Systems 3/10 Z-transform (frequency domain) analysis of decimator `compression in time domain ~ expansion in frequency domain’ N N u[0], u[N], u[2N]... u[0],u[1],u[2]... i=0i=2i=1 3

33 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 33 Review of Multi-rate Systems 3bis/10 Z-transform (frequency domain) analysis of decimator decimation introduces ALIASING if input signal occupies frequency band larger than, hence mostly preceded by anti-aliasing (decimation) filter anti-aliasing filter can be low-/band-/high-pass (see Chapter-7) N u[0], u[N], u[2N]... u[0],u[1],u[2]... LP i=0i=2i=1 3

34 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 34 Review of Multi-rate Systems 4/10 Z-transform analysis of decimator (continued) - Note that is periodic with period while is periodic with period the summation with i=0…N-1 restores the periodicity with period ! - Example: N

35 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 35 Review of Multi-rate Systems 5/10 Interconnection of multi-rate building blocks : identities also hold if all decimators are replaced by expanders N x a N x a = = = N + u2[k] N x u1[k] N + N u2[k] u1[k] N x N u2[k] u1[k]

36 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 36 Review of Multi-rate Systems 6/10 `Noble identities’ (I) : (only for rational functions) Example : N=2 h[0],h[1],0,0,0,… =NN u[k] y[k]

37 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 37 Review of Multi-rate Systems 7/10 `Noble identities’ (II) : (only for rational functions) Example : N=2 h[0],h[1],0,0,0,… =NN u[k] y[k]

38 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 38 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: (N-fold decomposition)

39 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 39 Review of Multi-rate Systems 9/10 Polyphase decomposition: Example : efficient implementation of an FIR decimation filter i.e. all filter operations performed at the lowest rate u[k] 2 + H(z) u[k] 2 + = 2

40 DSP-CIS / Chapter 5: Filter Banks – Preliminaries / Version 2011-2012 p. 40 Review of Multi-rate Systems 10/10 Polyphase decomposition: Example : efficient implementation of an FIR interpolation filter i.e. all filter operations performed at the lowest rate = u[k] 2 + H(z) u[k] 2 + 2


Download ppt "DSP-CIS Chapter 6: Filter Banks - Preliminaries Marc Moonen Dept. E.E./ESAT, K.U.Leuven"

Similar presentations


Ads by Google