subband adsp

100
15: Subband Processing 15: Subband Processing Subband processing 2-band Filterbank Perfect Reconstruction Quadrature Mirror Filterbank (QMF) Polyphase QMF QMF Options Linear Phase QMF IIR Allpass QMF Tree-structured filterbanks Summary Merry Xmas DSP and Digital Filters (2015-5583) Subband Processing: 15 – 1 / 12

Upload: mekusaha

Post on 07-Feb-2016

236 views

Category:

Documents


0 download

DESCRIPTION

Subband

TRANSCRIPT

Page 1: Subband ADSP

15: Subband Processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 1 / 12

Page 2: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

Page 3: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

• The Hm(z) are bandpass analysis filters and divide x[n] intofrequency bands

Page 4: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

• The Hm(z) are bandpass analysis filters and divide x[n] intofrequency bands

• Subband processing often processes frequency bands independently

Page 5: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

• The Hm(z) are bandpass analysis filters and divide x[n] intofrequency bands

• Subband processing often processes frequency bands independently• The Gm(z) are synthesis filters and together reconstruct the output

Page 6: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

• The Hm(z) are bandpass analysis filters and divide x[n] intofrequency bands

• Subband processing often processes frequency bands independently• The Gm(z) are synthesis filters and together reconstruct the output• The Hm(z) outputs are bandlimited and so can be subsampled

without loss of information

Page 7: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

• The Hm(z) are bandpass analysis filters and divide x[n] intofrequency bands

• Subband processing often processes frequency bands independently• The Gm(z) are synthesis filters and together reconstruct the output• The Hm(z) outputs are bandlimited and so can be subsampled

without loss of information◦ Sample rate multiplied overall by

1Pi

Page 8: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

• The Hm(z) are bandpass analysis filters and divide x[n] intofrequency bands

• Subband processing often processes frequency bands independently• The Gm(z) are synthesis filters and together reconstruct the output• The Hm(z) outputs are bandlimited and so can be subsampled

without loss of information◦ Sample rate multiplied overall by

1Pi

1Pi

= 1⇒ critically sampled : good for coding

Page 9: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

• The Hm(z) are bandpass analysis filters and divide x[n] intofrequency bands

• Subband processing often processes frequency bands independently• The Gm(z) are synthesis filters and together reconstruct the output• The Hm(z) outputs are bandlimited and so can be subsampled

without loss of information◦ Sample rate multiplied overall by

1Pi

1Pi

= 1⇒ critically sampled : good for coding∑

1Pi

> 1⇒ oversampled : more flexible

Page 10: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

• The Hm(z) are bandpass analysis filters and divide x[n] intofrequency bands

• Subband processing often processes frequency bands independently• The Gm(z) are synthesis filters and together reconstruct the output• The Hm(z) outputs are bandlimited and so can be subsampled

without loss of information◦ Sample rate multiplied overall by

1Pi

1Pi

= 1⇒ critically sampled : good for coding∑

1Pi

> 1⇒ oversampled : more flexible• Goals:

(a) good frequency selectivity in Hm(z)

Page 11: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

• The Hm(z) are bandpass analysis filters and divide x[n] intofrequency bands

• Subband processing often processes frequency bands independently• The Gm(z) are synthesis filters and together reconstruct the output• The Hm(z) outputs are bandlimited and so can be subsampled

without loss of information◦ Sample rate multiplied overall by

1Pi

1Pi

= 1⇒ critically sampled : good for coding∑

1Pi

> 1⇒ oversampled : more flexible• Goals:

(a) good frequency selectivity in Hm(z)(b) perfect reconstruction: y[n] = x[n− d] if no processing

Page 12: Subband ADSP

Subband processing

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 2 / 12

• The Hm(z) are bandpass analysis filters and divide x[n] intofrequency bands

• Subband processing often processes frequency bands independently• The Gm(z) are synthesis filters and together reconstruct the output• The Hm(z) outputs are bandlimited and so can be subsampled

without loss of information◦ Sample rate multiplied overall by

1Pi

1Pi

= 1⇒ critically sampled : good for coding∑

1Pi

> 1⇒ oversampled : more flexible• Goals:

(a) good frequency selectivity in Hm(z)(b) perfect reconstruction: y[n] = x[n− d] if no processing

• Benefits: Lower computation, faster convergence if adaptive

Page 13: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Page 14: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Vm(z) = Hm(z)X(z)

Page 15: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Vm(z) = Hm(z)X(z)

Um(z) = 1K

∑K−1k=0 Vm(e

−j2πk

K z1

K )

[K = 2]

Page 16: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Vm(z) = Hm(z)X(z)

Um(z) = 1K

∑K−1k=0 Vm(e

−j2πk

K z1

K ) = 12

{

Vm

(

z1

2

)

+ Vm

(

−z1

2

)}

[K = 2]

Page 17: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Vm(z) = Hm(z)X(z)

Um(z) = 1K

∑K−1k=0 Vm(e

−j2πk

K z1

K ) = 12

{

Vm

(

z1

2

)

+ Vm

(

−z1

2

)}

Wm(z) = Um(z2) = 12 {Vm(z) + Vm(−z)} [K = 2]

Page 18: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Vm(z) = Hm(z)X(z)

Um(z) = 1K

∑K−1k=0 Vm(e

−j2πk

K z1

K ) = 12

{

Vm

(

z1

2

)

+ Vm

(

−z1

2

)}

Wm(z) = Um(z2) = 12 {Vm(z) + Vm(−z)} [K = 2]

= 12 {Hm(z)X(z) +Hm(−z)X(−z)}

Page 19: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Vm(z) = Hm(z)X(z)

Um(z) = 1K

∑K−1k=0 Vm(e

−j2πk

K z1

K ) = 12

{

Vm

(

z1

2

)

+ Vm

(

−z1

2

)}

Wm(z) = Um(z2) = 12 {Vm(z) + Vm(−z)} [K = 2]

= 12 {Hm(z)X(z) +Hm(−z)X(−z)}

Y (z) =[

W0(z) W1(z)]

[

G0(z)G1(z)

]

Page 20: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Vm(z) = Hm(z)X(z)

Um(z) = 1K

∑K−1k=0 Vm(e

−j2πk

K z1

K ) = 12

{

Vm

(

z1

2

)

+ Vm

(

−z1

2

)}

Wm(z) = Um(z2) = 12 {Vm(z) + Vm(−z)} [K = 2]

= 12 {Hm(z)X(z) +Hm(−z)X(−z)}

Y (z) =[

W0(z) W1(z)]

[

G0(z)G1(z)

]

= 12

[

X(z) X(−z)]

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

Page 21: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Vm(z) = Hm(z)X(z)

Um(z) = 1K

∑K−1k=0 Vm(e

−j2πk

K z1

K ) = 12

{

Vm

(

z1

2

)

+ Vm

(

−z1

2

)}

Wm(z) = Um(z2) = 12 {Vm(z) + Vm(−z)} [K = 2]

= 12 {Hm(z)X(z) +Hm(−z)X(−z)}

Y (z) =[

W0(z) W1(z)]

[

G0(z)G1(z)

]

= 12

[

X(z) X(−z)]

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

=[

X(z) X(−z)]

[

T (z)A(z)

]

Page 22: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Vm(z) = Hm(z)X(z)

Um(z) = 1K

∑K−1k=0 Vm(e

−j2πk

K z1

K ) = 12

{

Vm

(

z1

2

)

+ Vm

(

−z1

2

)}

Wm(z) = Um(z2) = 12 {Vm(z) + Vm(−z)} [K = 2]

= 12 {Hm(z)X(z) +Hm(−z)X(−z)}

Y (z) =[

W0(z) W1(z)]

[

G0(z)G1(z)

]

= 12

[

X(z) X(−z)]

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

=[

X(z) X(−z)]

[

T (z)A(z)

]

We want (a) T (z) = 12 {H0(z)G0(z) +H1(z)G1(z)} = z−d

Page 23: Subband ADSP

2-band Filterbank

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 3 / 12

Vm(z) = Hm(z)X(z)

Um(z) = 1K

∑K−1k=0 Vm(e

−j2πk

K z1

K ) = 12

{

Vm

(

z1

2

)

+ Vm

(

−z1

2

)}

Wm(z) = Um(z2) = 12 {Vm(z) + Vm(−z)} [K = 2]

= 12 {Hm(z)X(z) +Hm(−z)X(−z)}

Y (z) =[

W0(z) W1(z)]

[

G0(z)G1(z)

]

= 12

[

X(z) X(−z)]

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

=[

X(z) X(−z)]

[

T (z)A(z)

]

[X(−z)A(z) is “aliased” term]

We want (a) T (z) = 12 {H0(z)G0(z) +H1(z)G1(z)} = z−d

and (b) A(z) = 12 {H0(−z)G0(z) +H1(−z)G1(z)} = 0

Page 24: Subband ADSP

Perfect Reconstruction

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 4 / 12

For perfect reconstruction without aliasing, we require

12

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

=

[

z−d

0

]

Page 25: Subband ADSP

Perfect Reconstruction

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 4 / 12

For perfect reconstruction without aliasing, we require

12

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

=

[

z−d

0

]

Hence:[

G0(z)G1(z)

]

=

[

H0(z) H1(z)H0(−z) H1(−z)

]

−1 [2z−d

0

]

Page 26: Subband ADSP

Perfect Reconstruction

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 4 / 12

For perfect reconstruction without aliasing, we require

12

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

=

[

z−d

0

]

Hence:[

G0(z)G1(z)

]

=

[

H0(z) H1(z)H0(−z) H1(−z)

]

−1 [2z−d

0

]

= 2z−d

H0(z)H1(−z)−H0(−z)H1(z)

[

H1(−z) −H1(z)−H0(−z) H0(z)

] [

10

]

Page 27: Subband ADSP

Perfect Reconstruction

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 4 / 12

For perfect reconstruction without aliasing, we require

12

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

=

[

z−d

0

]

Hence:[

G0(z)G1(z)

]

=

[

H0(z) H1(z)H0(−z) H1(−z)

]

−1 [2z−d

0

]

= 2z−d

H0(z)H1(−z)−H0(−z)H1(z)

[

H1(−z) −H1(z)−H0(−z) H0(z)

] [

10

]

= 2z−d

H0(z)H1(−z)−H0(−z)H1(z)

[

H1(−z)−H0(−z)

]

Page 28: Subband ADSP

Perfect Reconstruction

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 4 / 12

For perfect reconstruction without aliasing, we require

12

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

=

[

z−d

0

]

Hence:[

G0(z)G1(z)

]

=

[

H0(z) H1(z)H0(−z) H1(−z)

]

−1 [2z−d

0

]

= 2z−d

H0(z)H1(−z)−H0(−z)H1(z)

[

H1(−z) −H1(z)−H0(−z) H0(z)

] [

10

]

= 2z−d

H0(z)H1(−z)−H0(−z)H1(z)

[

H1(−z)−H0(−z)

]

For all filters to be FIR, we need the denominator to be

H0(z)H1(−z)−H0(−z)H1(z) = cz−k

Page 29: Subband ADSP

Perfect Reconstruction

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 4 / 12

For perfect reconstruction without aliasing, we require

12

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

=

[

z−d

0

]

Hence:[

G0(z)G1(z)

]

=

[

H0(z) H1(z)H0(−z) H1(−z)

]

−1 [2z−d

0

]

= 2z−d

H0(z)H1(−z)−H0(−z)H1(z)

[

H1(−z) −H1(z)−H0(−z) H0(z)

] [

10

]

= 2z−d

H0(z)H1(−z)−H0(−z)H1(z)

[

H1(−z)−H0(−z)

]

For all filters to be FIR, we need the denominator to be

H0(z)H1(−z)−H0(−z)H1(z) = cz−k , which implies[

G0(z)G1(z)

]

= 2czk−d

[

H1(−z)−H0(−z)

]

Page 30: Subband ADSP

Perfect Reconstruction

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 4 / 12

For perfect reconstruction without aliasing, we require

12

[

H0(z) H1(z)H0(−z) H1(−z)

] [

G0(z)G1(z)

]

=

[

z−d

0

]

Hence:[

G0(z)G1(z)

]

=

[

H0(z) H1(z)H0(−z) H1(−z)

]

−1 [2z−d

0

]

= 2z−d

H0(z)H1(−z)−H0(−z)H1(z)

[

H1(−z) −H1(z)−H0(−z) H0(z)

] [

10

]

= 2z−d

H0(z)H1(−z)−H0(−z)H1(z)

[

H1(−z)−H0(−z)

]

For all filters to be FIR, we need the denominator to be

H0(z)H1(−z)−H0(−z)H1(z) = cz−k , which implies[

G0(z)G1(z)

]

= 2czk−d

[

H1(−z)−H0(−z)

]

d=k= 2

c

[

H1(−z)−H0(−z)

]

Page 31: Subband ADSP

Quadrature Mirror Filterbank (QMF)

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 5 / 12

Page 32: Subband ADSP

Quadrature Mirror Filterbank (QMF)

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 5 / 12

QMF satisfies:(a) H0(z) is causal and real

Page 33: Subband ADSP

Quadrature Mirror Filterbank (QMF)

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 5 / 12

QMF satisfies:(a) H0(z) is causal and real(b) H1(z) = H0(−z): i.e.

∣H0(ejω)

∣ is reflected around ω = π2

Page 34: Subband ADSP

Quadrature Mirror Filterbank (QMF)

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 5 / 12

QMF satisfies:(a) H0(z) is causal and real(b) H1(z) = H0(−z): i.e.

∣H0(ejω)

∣ is reflected around ω = π2

(c) G0(z) = 2H1(−z) = 2H0(z)

Page 35: Subband ADSP

Quadrature Mirror Filterbank (QMF)

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 5 / 12

QMF satisfies:(a) H0(z) is causal and real(b) H1(z) = H0(−z): i.e.

∣H0(ejω)

∣ is reflected around ω = π2

(c) G0(z) = 2H1(−z) = 2H0(z)(d) G1(z) = −2H0(−z) = −2H1(z)

Page 36: Subband ADSP

Quadrature Mirror Filterbank (QMF)

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 5 / 12

QMF satisfies:(a) H0(z) is causal and real(b) H1(z) = H0(−z): i.e.

∣H0(ejω)

∣ is reflected around ω = π2

(c) G0(z) = 2H1(−z) = 2H0(z)(d) G1(z) = −2H0(−z) = −2H1(z)

QMF is alias-free:A(z) = 1

2 {H0(−z)G0(z) +H1(−z)G1(z)}

Page 37: Subband ADSP

Quadrature Mirror Filterbank (QMF)

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 5 / 12

QMF satisfies:(a) H0(z) is causal and real(b) H1(z) = H0(−z): i.e.

∣H0(ejω)

∣ is reflected around ω = π2

(c) G0(z) = 2H1(−z) = 2H0(z)(d) G1(z) = −2H0(−z) = −2H1(z)

QMF is alias-free:A(z) = 1

2 {H0(−z)G0(z) +H1(−z)G1(z)}

= 12 {2H1(z)H0(z)− 2H0(z)H1(z)} = 0

Page 38: Subband ADSP

Quadrature Mirror Filterbank (QMF)

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 5 / 12

QMF satisfies:(a) H0(z) is causal and real(b) H1(z) = H0(−z): i.e.

∣H0(ejω)

∣ is reflected around ω = π2

(c) G0(z) = 2H1(−z) = 2H0(z)(d) G1(z) = −2H0(−z) = −2H1(z)

QMF is alias-free:A(z) = 1

2 {H0(−z)G0(z) +H1(−z)G1(z)}

= 12 {2H1(z)H0(z)− 2H0(z)H1(z)} = 0

QMF Transfer Function:T (z) = 1

2 {H0(z)G0(z) +H1(z)G1(z)}

Page 39: Subband ADSP

Quadrature Mirror Filterbank (QMF)

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 5 / 12

QMF satisfies:(a) H0(z) is causal and real(b) H1(z) = H0(−z): i.e.

∣H0(ejω)

∣ is reflected around ω = π2

(c) G0(z) = 2H1(−z) = 2H0(z)(d) G1(z) = −2H0(−z) = −2H1(z)

QMF is alias-free:A(z) = 1

2 {H0(−z)G0(z) +H1(−z)G1(z)}

= 12 {2H1(z)H0(z)− 2H0(z)H1(z)} = 0

QMF Transfer Function:T (z) = 1

2 {H0(z)G0(z) +H1(z)G1(z)}

= H20 (z)−H2

1 (z) = H20 (z)−H2

0 (−z)

Page 40: Subband ADSP

Polyphase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 6 / 12

Page 41: Subband ADSP

Polyphase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 6 / 12

Polyphase decomposition:H0(z) = P0(z

2) + z−1P1(z2)

Page 42: Subband ADSP

Polyphase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 6 / 12

Polyphase decomposition:H0(z) = P0(z

2) + z−1P1(z2)

H1(z) = H0(−z) = P0(z2)− z−1P1(z

2)

Page 43: Subband ADSP

Polyphase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 6 / 12

Polyphase decomposition:H0(z) = P0(z

2) + z−1P1(z2)

H1(z) = H0(−z) = P0(z2)− z−1P1(z

2)G0(z) = 2H0(z) = 2P0(z

2) + 2z−1P1(z2)

Page 44: Subband ADSP

Polyphase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 6 / 12

Polyphase decomposition:H0(z) = P0(z

2) + z−1P1(z2)

H1(z) = H0(−z) = P0(z2)− z−1P1(z

2)G0(z) = 2H0(z) = 2P0(z

2) + 2z−1P1(z2)

G1(z) = −2H0(−z) = −2P0(z2) + 2z−1P1(z

2)

Page 45: Subband ADSP

Polyphase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 6 / 12

Polyphase decomposition:H0(z) = P0(z

2) + z−1P1(z2)

H1(z) = H0(−z) = P0(z2)− z−1P1(z

2)G0(z) = 2H0(z) = 2P0(z

2) + 2z−1P1(z2)

G1(z) = −2H0(−z) = −2P0(z2) + 2z−1P1(z

2)

Page 46: Subband ADSP

Polyphase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 6 / 12

Polyphase decomposition:H0(z) = P0(z

2) + z−1P1(z2)

H1(z) = H0(−z) = P0(z2)− z−1P1(z

2)G0(z) = 2H0(z) = 2P0(z

2) + 2z−1P1(z2)

G1(z) = −2H0(−z) = −2P0(z2) + 2z−1P1(z

2)

Transfer Function:T (z) = H2

0 (z)−H21 (z) = 4z−1P0(z

2)P1(z2)

Page 47: Subband ADSP

Polyphase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 6 / 12

Polyphase decomposition:H0(z) = P0(z

2) + z−1P1(z2)

H1(z) = H0(−z) = P0(z2)− z−1P1(z

2)G0(z) = 2H0(z) = 2P0(z

2) + 2z−1P1(z2)

G1(z) = −2H0(−z) = −2P0(z2) + 2z−1P1(z

2)

Transfer Function:T (z) = H2

0 (z)−H21 (z) = 4z−1P0(z

2)P1(z2)

we want T (z) = z−d ⇒ P0(z) = a0z−k, P1(z) = a1z

k+1−d

Page 48: Subband ADSP

Polyphase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 6 / 12

Polyphase decomposition:H0(z) = P0(z

2) + z−1P1(z2)

H1(z) = H0(−z) = P0(z2)− z−1P1(z

2)G0(z) = 2H0(z) = 2P0(z

2) + 2z−1P1(z2)

G1(z) = −2H0(−z) = −2P0(z2) + 2z−1P1(z

2)

Transfer Function:T (z) = H2

0 (z)−H21 (z) = 4z−1P0(z

2)P1(z2)

we want T (z) = z−d ⇒ P0(z) = a0z−k, P1(z) = a1z

k+1−d

⇒ H0(z) has only two non-zero taps ⇒ poor freq selectivity

Page 49: Subband ADSP

Polyphase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 6 / 12

Polyphase decomposition:H0(z) = P0(z

2) + z−1P1(z2)

H1(z) = H0(−z) = P0(z2)− z−1P1(z

2)G0(z) = 2H0(z) = 2P0(z

2) + 2z−1P1(z2)

G1(z) = −2H0(−z) = −2P0(z2) + 2z−1P1(z

2)

Transfer Function:T (z) = H2

0 (z)−H21 (z) = 4z−1P0(z

2)P1(z2)

we want T (z) = z−d ⇒ P0(z) = a0z−k, P1(z) = a1z

k+1−d

⇒ H0(z) has only two non-zero taps ⇒ poor freq selectivity∴ Perfect reconstruction QMF filterbanks cannot have good freq selectivity

Page 50: Subband ADSP

QMF Options

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 7 / 12

Page 51: Subband ADSP

QMF Options

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 7 / 12

A(z) = 0⇒ no alias term

Page 52: Subband ADSP

QMF Options

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 7 / 12

A(z) = 0⇒ no alias termT (z) = H2

0 (z)−H21 (z) = H2

0 (z)−H20 (−z)

Page 53: Subband ADSP

QMF Options

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 7 / 12

Polyphase decomposition:

A(z) = 0⇒ no alias termT (z) = H2

0 (z)−H21 (z) = H2

0 (z)−H20 (−z)

Page 54: Subband ADSP

QMF Options

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 7 / 12

Polyphase decomposition:

A(z) = 0⇒ no alias termT (z) = H2

0 (z)−H21 (z) = H2

0 (z)−H20 (−z) = 4z−1P0(z

2)P1(z2)

Page 55: Subband ADSP

QMF Options

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 7 / 12

Polyphase decomposition:

A(z) = 0⇒ no alias termT (z) = H2

0 (z)−H21 (z) = H2

0 (z)−H20 (−z) = 4z−1P0(z

2)P1(z2)

Options:• Perfect Reconstruction: T (z) = z−d ⇒H0(z) is a bad filter.

Page 56: Subband ADSP

QMF Options

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 7 / 12

Polyphase decomposition:

A(z) = 0⇒ no alias termT (z) = H2

0 (z)−H21 (z) = H2

0 (z)−H20 (−z) = 4z−1P0(z

2)P1(z2)

Options:• Perfect Reconstruction: T (z) = z−d ⇒H0(z) is a bad filter.

• T (z) is Linear Phase FIR:⇒ Tradeoff:

∣T (ejω)∣

∣ ≈ 1 versus H0(z) stopband attenuation

Page 57: Subband ADSP

QMF Options

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 7 / 12

Polyphase decomposition:

A(z) = 0⇒ no alias termT (z) = H2

0 (z)−H21 (z) = H2

0 (z)−H20 (−z) = 4z−1P0(z

2)P1(z2)

Options:• Perfect Reconstruction: T (z) = z−d ⇒H0(z) is a bad filter.

• T (z) is Linear Phase FIR:⇒ Tradeoff:

∣T (ejω)∣

∣ ≈ 1 versus H0(z) stopband attenuation

• T (z) is Allpass IIR: H0(z) can be Butterworth or Elliptic filter⇒ Tradeoff: ∠T (ejω) ≈ τω versus H0(z) stopband attenuation

Page 58: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

Page 59: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase

Page 60: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

Page 61: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

Page 62: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

= e−jωM∣

∣H0(ejω)

2− e−j(ω−π)M

∣H0(ej(ω−π))

2

Page 63: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

= e−jωM∣

∣H0(ejω)

2− e−j(ω−π)M

∣H0(ej(ω−π))

2

= e−jωM(

∣H0(ejω)

2− (−1)M

∣H0(ej(π−ω))

2)

Page 64: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

= e−jωM∣

∣H0(ejω)

2− e−j(ω−π)M

∣H0(ej(ω−π))

2

= e−jωM(

∣H0(ejω)

2− (−1)M

∣H0(ej(π−ω))

2)

M even ⇒ T (ejπ2 ) = 0 /

Page 65: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

= e−jωM∣

∣H0(ejω)

2− e−j(ω−π)M

∣H0(ej(ω−π))

2

= e−jωM(

∣H0(ejω)

2− (−1)M

∣H0(ej(π−ω))

2)

M even ⇒ T (ejπ2 ) = 0 / so choose M odd ⇒ − (−1)

M= +1

Page 66: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

= e−jωM∣

∣H0(ejω)

2− e−j(ω−π)M

∣H0(ej(ω−π))

2

= e−jωM(

∣H0(ejω)

2− (−1)M

∣H0(ej(π−ω))

2)

M even ⇒ T (ejπ2 ) = 0 / so choose M odd ⇒ − (−1)

M= +1

Select h0[n] by numerical iteration to minimize

α∫ π

π2+∆

∣H0(ejω)

2dω + (1− α)

∫ π

0

(∣

∣T (ejω)∣

∣− 1)2

Page 67: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

= e−jωM∣

∣H0(ejω)

2− e−j(ω−π)M

∣H0(ej(ω−π))

2

= e−jωM(

∣H0(ejω)

2− (−1)M

∣H0(ej(π−ω))

2)

M even ⇒ T (ejπ2 ) = 0 / so choose M odd ⇒ − (−1)

M= +1

Select h0[n] by numerical iteration to minimize

α∫ π

π2+∆

∣H0(ejω)

2dω + (1− α)

∫ π

0

(∣

∣T (ejω)∣

∣− 1)2

α → balance between H0(z) being lowpass and T (ejω) ≈ 1

Page 68: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

= e−jωM∣

∣H0(ejω)

2− e−j(ω−π)M

∣H0(ej(ω−π))

2

= e−jωM(

∣H0(ejω)

2− (−1)M

∣H0(ej(π−ω))

2)

M even ⇒ T (ejπ2 ) = 0 / so choose M odd ⇒ − (−1)

M= +1

Select h0[n] by numerical iteration to minimize

α∫ π

π2+∆

∣H0(ejω)

2dω + (1− α)

∫ π

0

(∣

∣T (ejω)∣

∣− 1)2

α → balance between H0(z) being lowpass and T (ejω) ≈ 1

Johnston filter(M = 11):

h0[n] M=11

Page 69: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

= e−jωM∣

∣H0(ejω)

2− e−j(ω−π)M

∣H0(ej(ω−π))

2

= e−jωM(

∣H0(ejω)

2− (−1)M

∣H0(ej(π−ω))

2)

M even ⇒ T (ejπ2 ) = 0 / so choose M odd ⇒ − (−1)

M= +1

Select h0[n] by numerical iteration to minimize

α∫ π

π2+∆

∣H0(ejω)

2dω + (1− α)

∫ π

0

(∣

∣T (ejω)∣

∣− 1)2

α → balance between H0(z) being lowpass and T (ejω) ≈ 1

Johnston filter(M = 11):

h0[n] M=11

0 1 2 3-60

-40

-20

0H

0H

1

ω

Page 70: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

= e−jωM∣

∣H0(ejω)

2− e−j(ω−π)M

∣H0(ej(ω−π))

2

= e−jωM(

∣H0(ejω)

2− (−1)M

∣H0(ej(π−ω))

2)

M even ⇒ T (ejπ2 ) = 0 / so choose M odd ⇒ − (−1)

M= +1

Select h0[n] by numerical iteration to minimize

α∫ π

π2+∆

∣H0(ejω)

2dω + (1− α)

∫ π

0

(∣

∣T (ejω)∣

∣− 1)2

α → balance between H0(z) being lowpass and T (ejω) ≈ 1

Johnston filter(M = 11):

h0[n] M=11

0 1 2 3-60

-40

-20

0H

0H

1

ω0 1 2 3

-0.04

-0.02

0

0.02

0.04

ω

Page 71: Subband ADSP

Linear Phase QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 8 / 12

T (z) ≈ 1

H0(z) order M , linear phase ⇒ H0(ejω) = ±e−jωM

2

∣H0(ejω)

T (ejω) = H20 (e

jω)−H21 (e

jω) = H20 (e

jω)−H20 (−ejω)

= e−jωM∣

∣H0(ejω)

2− e−j(ω−π)M

∣H0(ej(ω−π))

2

= e−jωM(

∣H0(ejω)

2− (−1)M

∣H0(ej(π−ω))

2)

M even ⇒ T (ejπ2 ) = 0 / so choose M odd ⇒ − (−1)

M= +1

Select h0[n] by numerical iteration to minimize

α∫ π

π2+∆

∣H0(ejω)

2dω + (1− α)

∫ π

0

(∣

∣T (ejω)∣

∣− 1)2

α → balance between H0(z) being lowpass and T (ejω) ≈ 1

Johnston filter(M = 11):

h0[n] M=11

0 1 2 3-60

-40

-20

0H

0H

1

ω0 1 2 3

-0.04

-0.02

0

0.02

0.04

ω

Page 72: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Page 73: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:

Page 74: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

Page 75: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasing

Page 76: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2)

Page 77: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2) is an allpass filter.

Page 78: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2) is an allpass filter.

H0(z) and H1(z) are power complementary :∣

∣H0(ejω)

2+∣

∣H1(ejω)

2= H0(e

jω)H0(e−jω)+H1(e

jω)H1(e−jω)

Page 79: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2) is an allpass filter.

H0(z) and H1(z) are power complementary :∣

∣H0(ejω)

2+∣

∣H1(ejω)

2= H0(e

jω)H0(e−jω)+H1(e

jω)H1(e−jω)

= . . . = 12

∣P0(ejω)

2+ 1

2

∣P1(ejω)

2= 1

Page 80: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2) is an allpass filter.

H0(z) and H1(z) are power complementary :∣

∣H0(ejω)

2+∣

∣H1(ejω)

2= H0(e

jω)H0(e−jω)+H1(e

jω)H1(e−jω)

= . . . = 12

∣P0(ejω)

2+ 1

2

∣P1(ejω)

2= 1

H0(z) can be made a Butterworth or Elliptic filter with MH = 4MP + 1:

Page 81: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2) is an allpass filter.

H0(z) and H1(z) are power complementary :∣

∣H0(ejω)

2+∣

∣H1(ejω)

2= H0(e

jω)H0(e−jω)+H1(e

jω)H1(e−jω)

= . . . = 12

∣P0(ejω)

2+ 1

2

∣P1(ejω)

2= 1

H0(z) can be made a Butterworth or Elliptic filter with MH = 4MP + 1:

0 1 2 3

-8

-6

-4

-2

0

P0(z2)

z-1P1(z2)

MP=1

A0=1+0.236z-1

A1=1+0.715z-1

ω

Phase cancellation: ∠z−1P1 = ∠P0 + π

Page 82: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2) is an allpass filter.

H0(z) and H1(z) are power complementary :∣

∣H0(ejω)

2+∣

∣H1(ejω)

2= H0(e

jω)H0(e−jω)+H1(e

jω)H1(e−jω)

= . . . = 12

∣P0(ejω)

2+ 1

2

∣P1(ejω)

2= 1

H0(z) can be made a Butterworth or Elliptic filter with MH = 4MP + 1:

0 1 2 3

-8

-6

-4

-2

0

P0(z2)

z-1P1(z2)

MP=1

A0=1+0.236z-1

A1=1+0.715z-1

ω

0 1 2 3-60

-40

-20

0H

0H

1M

H=5

ω

Phase cancellation: ∠z−1P1 = ∠P0 + π

Page 83: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2) is an allpass filter.

H0(z) and H1(z) are power complementary :∣

∣H0(ejω)

2+∣

∣H1(ejω)

2= H0(e

jω)H0(e−jω)+H1(e

jω)H1(e−jω)

= . . . = 12

∣P0(ejω)

2+ 1

2

∣P1(ejω)

2= 1

H0(z) can be made a Butterworth or Elliptic filter with MH = 4MP + 1:

0 1 2 3

-8

-6

-4

-2

0

P0(z2)

z-1P1(z2)

MP=1

A0=1+0.236z-1

A1=1+0.715z-1

ω

0 1 2 3-60

-40

-20

0H

0H

1M

H=5

ω

Phase cancellation: ∠z−1P1 = ∠P0 + π ; Ripples in H0 and H1 cancel.

Page 84: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2) is an allpass filter.

H0(z) and H1(z) are power complementary :∣

∣H0(ejω)

2+∣

∣H1(ejω)

2= H0(e

jω)H0(e−jω)+H1(e

jω)H1(e−jω)

= . . . = 12

∣P0(ejω)

2+ 1

2

∣P1(ejω)

2= 1

H0(z) can be made a Butterworth or Elliptic filter with MH = 4MP + 1:

0 1 2 3

-8

-6

-4

-2

0

P0(z2)

z-1P1(z2)

MP=1

A0=1+0.236z-1

A1=1+0.715z-1

ω

0 1 2 3-60

-40

-20

0H

0H

1M

H=5

ω

H0(z)

Phase cancellation: ∠z−1P1 = ∠P0 + π ; Ripples in H0 and H1 cancel.

Page 85: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2) is an allpass filter.

H0(z) and H1(z) are power complementary :∣

∣H0(ejω)

2+∣

∣H1(ejω)

2= H0(e

jω)H0(e−jω)+H1(e

jω)H1(e−jω)

= . . . = 12

∣P0(ejω)

2+ 1

2

∣P1(ejω)

2= 1

H0(z) can be made a Butterworth or Elliptic filter with MH = 4MP + 1:

0 1 2 3

-8

-6

-4

-2

0

P0(z2)

z-1P1(z2)

MP=1

A0=1+0.236z-1

A1=1+0.715z-1

ω

0 1 2 3-60

-40

-20

0H

0H

1M

H=5

ω

H0(z)

0 1 2 3

5

10

15

T(z)

ω (rad/sample)

Phase cancellation: ∠z−1P1 = ∠P0 + π ; Ripples in H0 and H1 cancel.

Page 86: Subband ADSP

IIR Allpass QMF

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 9 / 12

|T (z)| = 1

Choose P0(z) and P1(z) to be allpass IIR filters:H0,1(z) =

12

(

P0(z2)± z−1P1(z

2))

, G0,1(z) = ±2H0,1(z)

A(z) = 0⇒ No aliasingT (z) = H2

0 −H21 = . . . = z−1P0(z

2)P1(z2) is an allpass filter.

H0(z) and H1(z) are power complementary :∣

∣H0(ejω)

2+∣

∣H1(ejω)

2= H0(e

jω)H0(e−jω)+H1(e

jω)H1(e−jω)

= . . . = 12

∣P0(ejω)

2+ 1

2

∣P1(ejω)

2= 1

H0(z) can be made a Butterworth or Elliptic filter with MH = 4MP + 1:

0 1 2 3

-8

-6

-4

-2

0

P0(z2)

z-1P1(z2)

MP=1

A0=1+0.236z-1

A1=1+0.715z-1

ω

0 1 2 3-60

-40

-20

0H

0H

1M

H=5

ω

H0(z)

0 1 2 3

5

10

15

T(z)

ω (rad/sample)

Phase cancellation: ∠z−1P1 = ∠P0 + π ; Ripples in H0 and H1 cancel.

Page 87: Subband ADSP

Tree-structured filterbanks

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 10 / 12

A half-band filterbank divides the full band into two equal halves.

0 1 2 30

0.5

1

X=Y

0 1 2 3

0 1 2 3

0 1 2 3

Page 88: Subband ADSP

Tree-structured filterbanks

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 10 / 12

A half-band filterbank divides the full band into two equal halves.

0 1 2 30

0.5

1

X=Y

0 1 2 30

0.5

1

V1

U1

0 1 2 3

0 1 2 3

Page 89: Subband ADSP

Tree-structured filterbanks

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 10 / 12

A half-band filterbank divides the full band into two equal halves.

You can repeat the process on either or both of the signals u1[p]and v1[p]. 0 1 2 3

0

0.5

1

X=Y

0 1 2 30

0.5

1

V1

U1

0 1 2 3

0 1 2 3

Page 90: Subband ADSP

Tree-structured filterbanks

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 10 / 12

A half-band filterbank divides the full band into two equal halves.

You can repeat the process on either or both of the signals u1[p]and v1[p]. 0 1 2 3

0

0.5

1

X=Y

0 1 2 30

0.5

1

V1

U1

0 1 2 30

0.5

1

V1

V2

U2

0 1 2 3

Page 91: Subband ADSP

Tree-structured filterbanks

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 10 / 12

A half-band filterbank divides the full band into two equal halves.

You can repeat the process on either or both of the signals u1[p]and v1[p].

Dividing the lower band in half repeatedly results in an octaveband filterbank .

0 1 2 30

0.5

1

X=Y

0 1 2 30

0.5

1

V1

U1

0 1 2 30

0.5

1

V1

V2

U2

0 1 2 3

Page 92: Subband ADSP

Tree-structured filterbanks

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 10 / 12

A half-band filterbank divides the full band into two equal halves.

You can repeat the process on either or both of the signals u1[p]and v1[p].

Dividing the lower band in half repeatedly results in an octaveband filterbank .

0 1 2 30

0.5

1

X=Y

0 1 2 30

0.5

1

V1

U1

0 1 2 30

0.5

1

V1

V2

U2

0 1 2 30

0.5

1

V1

V2

V3

U3

Page 93: Subband ADSP

Tree-structured filterbanks

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 10 / 12

A half-band filterbank divides the full band into two equal halves.

You can repeat the process on either or both of the signals u1[p]and v1[p].

Dividing the lower band in half repeatedly results in an octaveband filterbank . Each subband occupies one octave (= a factorof 2 in frequency).

0 1 2 30

0.5

1

X=Y

0 1 2 30

0.5

1

V1

U1

0 1 2 30

0.5

1

V1

V2

U2

0 1 2 30

0.5

1

V1

V2

V3

U3

Page 94: Subband ADSP

Tree-structured filterbanks

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 10 / 12

A half-band filterbank divides the full band into two equal halves.

You can repeat the process on either or both of the signals u1[p]and v1[p].

Dividing the lower band in half repeatedly results in an octaveband filterbank . Each subband occupies one octave (= a factorof 2 in frequency).

The properties “perfect reconstruction” and “allpass” arepreserved by the iteration.

0 1 2 30

0.5

1

X=Y

0 1 2 30

0.5

1

V1

U1

0 1 2 30

0.5

1

V1

V2

U2

0 1 2 30

0.5

1

V1

V2

V3

U3

Page 95: Subband ADSP

Summary

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 11 / 12

• Half-band filterbank:◦ Reconstructed output is T (z)X(z) +A(z)X(−z)◦ Unwanted alias term is A(z)X(−z)

Page 96: Subband ADSP

Summary

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 11 / 12

• Half-band filterbank:◦ Reconstructed output is T (z)X(z) +A(z)X(−z)◦ Unwanted alias term is A(z)X(−z)

• Perfect reconstruction: imposes strong constraints on analysisfilters Hi(z) and synthesis filters Gi(z).

Page 97: Subband ADSP

Summary

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 11 / 12

• Half-band filterbank:◦ Reconstructed output is T (z)X(z) +A(z)X(−z)◦ Unwanted alias term is A(z)X(−z)

• Perfect reconstruction: imposes strong constraints on analysisfilters Hi(z) and synthesis filters Gi(z).

• Quadrature Mirror Filterbank (QMF) adds an additional symmetryconstraint H1(z) = H0(−z).◦ Perfect reconstruction now impossible except for trivial case.◦ Neat polyphase implementation with A(z) = 0◦ Johnston filters: Linear phase with T (z) ≈ 1◦ Allpass filters: Elliptic or Butterworth with |T (z)| = 1

Page 98: Subband ADSP

Summary

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 11 / 12

• Half-band filterbank:◦ Reconstructed output is T (z)X(z) +A(z)X(−z)◦ Unwanted alias term is A(z)X(−z)

• Perfect reconstruction: imposes strong constraints on analysisfilters Hi(z) and synthesis filters Gi(z).

• Quadrature Mirror Filterbank (QMF) adds an additional symmetryconstraint H1(z) = H0(−z).◦ Perfect reconstruction now impossible except for trivial case.◦ Neat polyphase implementation with A(z) = 0◦ Johnston filters: Linear phase with T (z) ≈ 1◦ Allpass filters: Elliptic or Butterworth with |T (z)| = 1

• Can iterate to form a tree structure with equal or unequalbandwidths.

Page 99: Subband ADSP

Summary

15: Subband Processing

• Subband processing

• 2-band Filterbank

• Perfect Reconstruction• Quadrature MirrorFilterbank (QMF)

• Polyphase QMF

• QMF Options

• Linear Phase QMF

• IIR Allpass QMF

• Tree-structured filterbanks

• Summary

• Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 11 / 12

• Half-band filterbank:◦ Reconstructed output is T (z)X(z) +A(z)X(−z)◦ Unwanted alias term is A(z)X(−z)

• Perfect reconstruction: imposes strong constraints on analysisfilters Hi(z) and synthesis filters Gi(z).

• Quadrature Mirror Filterbank (QMF) adds an additional symmetryconstraint H1(z) = H0(−z).◦ Perfect reconstruction now impossible except for trivial case.◦ Neat polyphase implementation with A(z) = 0◦ Johnston filters: Linear phase with T (z) ≈ 1◦ Allpass filters: Elliptic or Butterworth with |T (z)| = 1

• Can iterate to form a tree structure with equal or unequalbandwidths.

See Mitra chapter 14 (which also includes some perfect reconstructiondesigns).

Page 100: Subband ADSP

Merry Xmas

DSP and Digital Filters (2015-5583) Subband Processing: 15 – 12 / 12