Digital Signal Processing II Lecture 4: Filter Realization ...

yakzephyrΤεχνίτη Νοημοσύνη και Ρομποτική

24 Νοε 2013 (πριν από 3 χρόνια και 11 μήνες)

52 εμφανίσεις

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
/


DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
2


Filter
banks introduction


Introduction


Applications


Aliasing & perfect reconstruction



Review of multi
-
rate systems



DFT
/IDFT filter bank


Maximally decimated DFT
-
modulated
filter
banks


Other…



Overview

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


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

subband processing

subband processing

subband processing

H1(z)

H2(z)

H3(z)

H4(z)

IN

+

OUT

H1

H4

H3

H2


2
DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
4

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,…)











2
H1

H4

H3

H2

H1

H4

H3

H2

H1

H4

H3

H2


2

2
H1(z)

H2(z)

H3(z)

H4(z)

IN

N
=
4

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
5

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
):


#
subband

samples= #
fullband

samples


this sounds like maximum efficiency, but aliasing (see below)!


-

Oversampled

filter banks
(=non
-
critically
downsampled
):


#
subband

samples> #
fullband

samples






D
=N

D
<
N

H1(z)

H2(z)

H3(z)

3

3

3

3

H4(z)

IN

N
=
4

D
=
3


PS: 3
-
fold
downsampling



= ‘remove every 2
nd

and 3
rd

sample’ (see below)

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


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

N
=
4

D
=
3

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
7

Filter Banks Introduction

Step
-
4: Expanders (
upsamplers
)


-

restore original
fullband

sampling rate by D
-
fold
upsampling













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

N
=
4

D
=
3

D
=
3


PS: 3
-
fold
u
psampling



= ‘insert 2 zeros in between every two samples’ (see belo
w)

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
8

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)










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

N
=
4

D
=
3

D
=
3

G1

G4

G3

G2


2
DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
9

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








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)

N
=
4

D
=
3

D
=
3

u[k]

y[k]=u[k
-
d]?

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


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)

N
=
4

D
=
3

D
=
3

u[k]

y[k]=u[k
-
d]?

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


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.)


DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
12

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.
13

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










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

ad.filter

ad.filter

ad.filter

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
14

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 )



-

Received signal decomposed into N 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

D
>=N

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
15



-

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

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
16

Filter Banks Applications



PS: special case is Time Division Multiplexing (TDM),


if synthesis and analysis filters are replaced by delay


operators (and N=D)










PS: special case is Code Division Multiplexing (CDMA)

4

4

4

4

+

4

4

4

transmission

channel

1

z
2

z
3

z
1
1

z
2

z
3

z
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) ?

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
17

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...

D

u[0], u[N], u[
2D]
...

u[0],u[1],u[2]...

D

u[0],0,..0,u[1],0,…,0,u[2]...

u[0], u[1], u[2],...

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
18

Review of Multi
-
rate Systems
2/10


Z
-
transform (frequency domain) analysis of expander











`expansion in time domain ~ compression in frequency domain




D

u[0],0,..0,u[1],0,…,0,u[2]...

u[0], u[1], u[2],...

D

)
(
z
U
U
(
z
D
)

j
e
z




D

xHz




`images


xHz

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
19

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

D

u[0],0,..0,u[1],0,…,0,u[2]...

u[0], u[1], u[2],...




3

xHz




`images


xHz




xHz

LP

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
20

Review of Multi
-
rate Systems
3/10


Z
-
transform (frequency domain) analysis of decimator












`compression in time domain ~ expansion in frequency domain



PS:
Note
that
is
periodic with period

while
is periodic with period



T
he
summation with
d=
0
…D
-
1 restores the periodicity with period
!

D

)
(
z
U
1
D
.
U
(
z
1
D
.
e

j
2

d
D
)
d

0
D

1

D

u[0], u
[D]
, u[
2D]
...

u[0],u[1],u[2]...

d
=
0

d
=
2

d
=
1

3




xHz




3

xHz

)
(

j
e
U

2
U
(
e
j

/
D
)
2
D


2
DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
21

Review of Multi
-
rate Systems
4
/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


2

D
D

u[0], u[N], u[
2D]
...

u[0],u[1],u[2]...

LP

d
=
0

d
=
2

d
=
1

3




xHz




3

xHz

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
22

Review of Multi
-
rate Systems
5/10


Interconnection of multi
-
rate building blocks :











identities also hold if all decimators are replaced by expanders

D

x

a

D

x

a

=

=

=

D

+

u2[k]

D

x

u2[k]

u1[k]

u1[k]

D

+

D

u2[k]

u1[k]

D

x

D

u2[k]

u1[k]

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
23

Review of Multi
-
rate Systems
6/10


`Noble identities


⡉⤠㨠†
(only for rational functions)








Example : D=2


h[0],h[1],0,0,0,…








=

D

D

H
(
z
D
)
)
(
z
H
u[k]

u[k]

y[k]

y[k]




















































































]
3
[
]
2
[
]
1
[
]
0
[
.
0
1
0
0
0
0
0
1
.
)
(
]
1
[
0
]
0
[
]
1
[
0
]
0
[
...
]
3
[
]
2
[
]
1
[
]
0
[
.
)
2
(
]
1
[
0
0
0
0
]
1
[
0
0
]
0
[
0
]
1
[
0
0
]
0
[
0
]
1
[
0
0
]
0
[
0
0
0
0
]
0
[
.
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
]
2
[
]
1
[
]
0
[
ng
downsampli

fold
-
2
ng
downsampli

fold
-
2
u
u
u
u
z
H
h
h
h
h
u
u
u
u
z
H
h
h
h
h
h
h
h
h
y
y
y


































DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
24

Review of Multi
-
rate Systems
7/10


`Noble identities


⡉䤩 㨠†:
(only for rational functions)






Example : D=2


h[0],h[1],0,0,0,…










=

D

D

H
(
z
D
)
)
(
z
H
u[k]

u[k]

y[k]

y[k]


































































































]
1
[
]
0
[
.
0
0
1
0
0
0
0
1
.
)
2
(
]
1
[
0
0
0
0
]
1
[
0
0
]
0
[
0
]
1
[
0
0
]
0
[
0
]
1
[
0
0
]
0
[
0
0
0
0
]
0
[
...
]
1
[
]
0
[
.
)
(
]
1
[
0
]
0
[
]
1
[
0
]
0
[
.
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
]
5
[
]
4
[
]
3
[
]
2
[
]
1
[
]
0
[
upsampling

fold
-
2
upsampling

fold
-
2
u
u
z
H
h
h
h
h
h
h
h
h
u
u
z
H
h
h
h
h
y
y
y
y
y
y


























DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
25

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)






























)
(
4
2
1
)
(
6
4
2
6
5
4
3
2
1
2
1
2
0
)
].
5
[
].
3
[
]
1
[
(
.
)
].
6
[
].
4
[
].
2
[
]
0
[
(


].
6
[
].
5
[
].
4
[
].
3
[
].
2
[
].
1
[
]
0
[
)
(
z
E
z
E
z
h
z
h
h
z
z
h
z
h
z
h
h
z
h
z
h
z
h
z
h
z
h
z
h
h
z
H



















































)
(
3
2
)
(
3
1
)
(
6
3
6
5
4
3
2
1
3
2
3
1
3
0
)
].
5
[
]
2
[
(
.
)
].
4
[
]
1
[
(
.
)
].
6
[
].
3
[
]
0
[
(


].
6
[
].
5
[
].
4
[
].
3
[
].
2
[
].
1
[
]
0
[
)
(
z
E
z
E
z
E
z
h
h
z
z
h
h
z
z
h
z
h
h
z
h
z
h
z
h
z
h
z
h
z
h
h
z
H


























H
(
z
)

h
[
k
]
.
z

k
k






z

d
.
E
d
(
z
D
)
d

0
D

1







,











E
d
(
z
)

h
[
D
.
k

d
]
.
z

k
k





DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
26

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

)
(
2
0
z
E
)
(
2
1
z
E
1

z
+

H(z)

u[k]


2

1

z
)
(
0
z
E
)
(
1
z
E
+

=

2

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
27

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

)
(
2
0
z
E
)
(
2
1
z
E
1

z
+

H(z)

u[k]


2

1

z
+

)
(
0
z
E
)
(
1
z
E
2

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
28

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….






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]?

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
29

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],...

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
30

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 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:
T
ransmux

version (TDM) see p.16

4

4

4

4

+

1

z
2

z
3

z
1
u[k
-
3]

4

4

4

1

z
2

z
3

z
4

1
u[k]

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
31

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]

1

z
2

z
3

z
1
1

z
2

z
3

z
1
4

4

4

4

u[k]

F
1

F
I
F
F


.
1
DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
32

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

1

z
2

z
3

z
1
u[k]

4

4

4

4

F
+

u[k
-
3]

1

z
2

z
3

z
1
1

F
DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
33

DFT/IDFT Filter Bank

What do analysis filters look like?
(N
-
channel case)











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
H
n

are obtained by uniformly shifting the `prototype


Ho over the


frequency axis.

F
u[k]



N
j
N
F
N
N
N
N
N
N
e
W
z
z
z
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
z
H
z
H
z
H
z
H
/
2
1
2
1
)
1
(
)
1
(
2
1
0
)
1
(
2
4
2
0
1
2
1
0
0
0
0
0
1
2
1
0

:
1
.
...
:
:
:
:
...
...
...
)
(
:
)
(
)
(
)
(
2













































































H
n
(
e
j

)

H
0
(
e
j
(


n
.
(
2

/
N
)
)
)
1
2
1
0
...
1
)
(









N
z
z
z
z
H
:

k
:

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
34

DFT/IDFT Filter Bank


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.


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..

Ho(z)

H1(z)

N=4

H3(z)

H2(z)

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
35

DFT/IDFT Filter Bank

S
ynthesis filters ?










synthesis filters are (roughly) equal to analysis filters…



PS: Efficient DFT/IDFT implementation based on FFT algorithm


(`Fast Fourier Transform

).

...
)
(
:
)
(
)
(
)
(
1
2
1
0


















z
F
z
F
z
F
z
F
N
+

1

z
z

N

1
1
1

F
*(1/N)

N=4

:

:

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
36

Maximally Decimated DFT
-
Modulated FBs

Uniform versus non
-
uniform (analysis) filter bank:








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

H0(z)

H1(z)

H2(z)

H3(z)

IN

H0

H3

H2

H1

H0

H3

H2

H1

uniform

non
-
uniform

H
n
(
z
)

H
0
(
z
.
e

j
2

n
/
N
)





n

0
,
.
.
.
,
N

1
h
n
[
k
]

h
0
[
k
]
.
e
j
2

k
.
n
/
N
DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
37

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



If



(N
-
fold
polyphase

decomposition)



then





H
0
(
z
)
,
H
1
(
z
)
,
.
.
.
,
H
N

1
(
z
)





w
i
t
h



H
n
(
z
)

H
0
(
z
.
e

j
2

n
/
N
)
H
n
(
z
)

H
0
(
z
.
e

j
2

n
/
N
)

z

n
.
e
j
2

n
n
/
N
.
E
n
(
z
N
e

j
2

n
N
/
N
1
)
n

0
N

1















z

n
.
W

n
n
.
E
n
(
z
N
)
n

0
N

1


,





w
i
t
h



W

e

j
2

/
N


H
0
(
z
)

z

n
.
E
n
(
z
N
)
n

0
N

1






i.e.

H0(z)

H1(z)

H2(z)

H3(z)

u[k]

N
M

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
38

Maximally Decimated DFT
-
Modulated FBs














where F is
NxN

DFT
-
matrix

(and `*


is complex conjugate)


This means that filtering with the
H
n

s can be implemented by first filtering
with
polyphase

components and then DFT

N
j
N
N
N
N
N
N
N
N
N
N
N
N
e
W
z
U
z
E
z
z
E
z
z
E
z
z
E
F
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
z
U
z
H
z
H
z
H
z
H
/
2
1
1
2
2
1
1
0
)
1
(
)
1
(
2
)
1
(
0
)
1
(
2
4
2
0
)
1
(
2
1
0
0
0
0
0
1
2
1
0

)
(
.
)
(
.
:
)
(
.
)
(
.
)
(
.
*
...
:
:
:
:
...
...
...
)
(
.
)
(
:
)
(
)
(
)
(
2

























































































i.e.

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
39

Maximally Decimated DFT
-
Modulated FBs









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
H
n
(z)

s are


automatically `co
-
designed


(same
passband

ripple, etc…) !

*
F
u[k]




)
(
4
0
z
E
)
(
4
1
z
E
)
(
4
2
z
E
)
(
4
3
z
E
)
(
0
z
H
)
(
1
z
H
)
(
2
z
H
)
(
3
z
H
i.e.

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
40

Maximally Decimated DFT
-
Modulated FBs


Special case:
DFT
-
filter bank
, if all E
n
(z)=1













*
F
u[k]




1
)
(
0
z
H
)
(
1
z
H
)
(
2
z
H
)
(
3
z
H
1
1
1
Ho(z)

H1(z)

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
41

Maximally Decimated DFT
-
Modulated FBs


PS: with F instead of F*
(see p.32),

only filter


ordering is changed













F
u[k]




1
)
(
0
z
H
)
(
1
z
H
)
(
2
z
H
)
(
3
z
H
1
1
1
Ho(z)

H1(z)

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
42

Maximally Decimated DFT
-
Modulated FBs



DFT
-
modulated analysis FB + maximal decimation
















*
F
4

4

4

4

u[k]




)
(
4
0
z
E
)
(
4
1
z
E
)
(
4
2
z
E
)
(
4
3
z
E
4

4

4

4

u[k]




*
F
)
(
0
z
E
)
(
1
z
E
)
(
2
z
E
)
(
3
z
E
=

= efficient realization !

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
43

Maximally Decimated DFT
-
Modulated FBs















y[k]


+


+


+

)
(
4
0
z
R
)
(
4
1
z
R
)
(
4
2
z
R
)
(
4
3
z
R
]
[
0
k
u
]
[
1
k
u
]
[
2
k
u
]
[
3
k
u
F
2. Synthesis FB
: similar..

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
44

Maximally Decimated DFT
-
Modulated FBs


Expansion + DFT
-
modulated synthesis FB :



















y[k]

4

4

4

4


+


+


+

)
(
0
z
R
)
(
1
z
R
)
(
2
z
R
)
(
3
z
R
]
[
0
k
u
]
[
1
k
u
]
[
2
k
u
]
[
3
k
u
F
y[k]


+


+


+

4

4

4

4

)
(
4
0
z
R
)
(
4
1
z
R
)
(
4
2
z
R
)
(
4
3
z
R
]
[
0
k
u
]
[
1
k
u
]
[
2
k
u
]
[
3
k
u
F
=

= efficient realization !

DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
45

Maximally Decimated DFT
-
Modulated FBs

How to achieve
Perfect Reconstruction

(PR)

with maximally decimated DFT
-
modulated FBs?









polyphase

components of
synthesis bank prototype filter
are obtained
by inverting
polyphase

components of
analysis bank prototype filter

y[k]

4

4

4

4


+


+


+

)
(
0
z
R
)
(
1
z
R
)
(
2
z
R
)
(
3
z
R
F
4

4

4

4

u[k]




*
F
)
(
0
z
E
)
(
1
z
E
)
(
2
z
E
)
(
3
z
E
R
n
(
z
)

z


.
E
N

1

n

1
(
z
)
DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
46

Maximally Decimated DFT
-
Modulated FBs


Design Procedure

:


1. Design prototype analysis filter Ho(z) (see Chapter
-
3).


2. This determines E
n
(z) (=
polyphase

components).


3. Assuming all E
n
(z) can be inverted (?), choose synthesis filters

R
n
(
z
)

z


.
E
N

1

n

1
(
z
)
y[k]

4

4

4

4


+


+


+

)
(
0
z
R
)
(
1
z
R
)
(
2
z
R
)
(
3
z
R
F
4

4

4

4

u[k]




*
F
)
(
0
z
E
)
(
1
z
E
)
(
2
z
E
)
(
3
z
E
DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
47

Maximally Decimated DFT
-
Modulated FBs


Will consider only
FIR

prototype analysis filters, leading to
simple
polyphase

decompositions.


However, FIR E
n
(z)

s generally again lead to IIR
R
n
(z)

s,
where
stability

is a concern…


Hence need for other/better design procedures


R
n
(
z
)

z


.
E
N

1

n

1
(
z
)
DSP
-
CIS / Chapter
7: Multi
-
rate Systems & Filter Banks
/ Version
2012
-
2013


p.
48

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…