Fast Signal Processing Algorithms Week 5

1 / 65

Fast Signal Processing Algorithms Week 5 - PowerPoint PPT Presentation

Fast Signal Processing Algorithms Week 5. Polyphase Implementation and Filter Banks. Motivation. Up- and down sampling combined with filtering are the usual operations in multirate systems. Polypahse approach will yield simple implementations. Outlines. Two basic multirate operations

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

PowerPoint Slideshow about 'Fast Signal Processing Algorithms Week 5' - brinly

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Fast Signal Processing AlgorithmsWeek 5

Polyphase Implementation and Filter Banks

Motivation
• Up- and down sampling combined with filtering are the usual operations in multirate systems.
• Polypahse approach will yield simple implementations
Outlines
• Two basic multirate operations
• Polyphase interpolator – upsampling followed by a filter
• Polyphase decimatator – a filter followed by a decimator
• Two-channel filter banks
• Perfect reconstruction condition
• Quadrature mirror filter (QMF) filter banks
• Design of two-channel filter banks with PR
• Multiple-channel filter banks
• Tree- structured filter banks
• Octave-band filter banks
Basic Multirate Operations
• Decimation and interpolation
• Z-domain and Frequency domain analysis of up-and downsampled version of a signal
• Polyphase decomposition
• Noble Identities
Decimation and Interpolation
• Decimation---down-sampling

N

x(n)

Decimation and Interpolation
• Decimation---down-sampling

N

Decimation and Interpolation
• Decimation---down-sampling

N

y(m)

Decimation and Interpolation
• Interpolation --- up-sampling

N

Decimation and Interpolation
• Interpolation --- up-sampling

N

Decimation and Interpolation
• Interpolation --- up-sampling

N

H(z)

N

N

G(z)

Decimation and Interpolation

A typical building block of multirate filter bank

We want to know the relationships between the above signals

Decimation and Interpolation

Upsampling

when N=2

Decimation and Interpolation

Downsampling followed by upsampling

N

N

as

hence

Decimation and Interpolation

Downsampling followed by upsampling

N

N

Decimation and Interpolation

Downsampling followed by upsampling

N

N

image spectra

original spectrum

Decimation and Interpolation

Downsampling followed by upsampling

image spectra

original spectrum

Decimation and Interpolation

Downsampling followed by upsampling

when N=2

Image spectra

Decimation and Interpolation

Downsampling

N

We know upsampling

We know downsampling +upsampling

We can get downsampling

Decimation and Interpolation

Downsampling

N

Example, N=2

Decimation and Interpolation

Downsampling

when N=2

Image spectra

Decimation and Interpolation

Downsampling

when N=2

Image spectra

Decimation and Interpolation

Downsampling

when N=2

Image spectra

H(z)

N

N

G(z)

Decimation and Interpolation

A typical building block of multirate filter bank

We want to know the relationships between the above signals

Polyphase Decomposition
• Polyphase decomposition is the decomposition of a sequence x(n) into sub-sequences x(mN+i)
• There are four types of polyphase decomposition.

Type-1

[ 0,1,2,3,4,5,6,7,8,9,10,11]

M=3

[ 0,3,6,9]

[ 1,4,7,10]

[ 2,5,8,11]

Polyphase Decomposition

Type-2

[ 0,1,2,3,4,5,6,7,8,9,10,11]

M=3

[ 2,5,8,11]

[ 1,4,7,10]

[ 0,3,6,9]

Polyphase Decomposition

Type-3: we want to have

hence

Type-3 is not very straightforward as there is a casualty problem.

Nobel Identities

Identity I

N

G(z)

G(zN)

N

Nobel Identities

Identity II

N

G(zN)

G(z)

N

H(z)

N

N

G(z)

Decimation and Interpolation—polyphase implementation

A typical building block of multirate filter bank

We want to know if there is an efficient way to implement the above system

Polyphase Interpolator

N

G(z)

x(n)

y(m)

v(n)

Multiplications with zeros are involved

Polyphase Intepolator
• We decompose the filter into polyphase components (Type-1):
• In z-domain:
N

G(z)

x(n)

y(m)

v(n)

Polyphase Intepolator

N

x(n)

y(m)

v(n)

N

G(z)

x(n)

y(m)

v(n)

N

N

N

Polyphase Intepolator

Using the second Noble identity:

x(n)

y(m)

N

G(z)

x(n)

y(m)

v(n)

N

x(n)

N

y(m)

N

Polyphase Intepolator

For input signal of length M, and G(z) of length L,

convolution of v(n) (of length NM) and g(n) (of length L) requires NML mutiplications

N

x(n)

N

y(m)

N

Polyphase Intepolator
• Each branch has a convolution of y(m) (of length M) with Gl(z) (of length L/N). ML/N multiplications are required;
• Hence for N branches, ML multiplications are required in total; Computation is greatly reduced
Polyphase Intepolator
• example: M=1024, N=2,L=64, MNL=128k multiplications are required for convolution
• when using polyphase approach, only ML=64k multiplications are required.
Polyphase Decimator – polyphase implementation

H(z)

N

y(m)

x(n)

v(n)

The number of multiplications is: ML

Polyphase Decimator

Let i=jN+k

let

Polyphase Decimator

N

y(m)

x(n)

N

N

The number of multiplications is: N (M/N)(L/N)

=ML/N. Also reduced a lot.

Two-Channel Filter Banks
• It is known that when the signal bandwidth is p (or half of the sampling frequency), there is no room for decimation operation.
• In this case filter banks can be used to decompose signals into subband components which has narrower band and decimation can be done for each subband component;
• A parallel processing method
Two-channel filter banks
• Two-channel filter banks
• Perfect reconstruction condition
• Quadrature mirror filter (QMF) filter banks
• Design of two-channel filter banks with PR
• Multiple-channel filter banks
• Tree- structured filter banks
• Octave-band filter banks
Two-Channel Filter Banks
• Two-channel filter bank --- the simplest filter bank. Hk(z) are analysis filters and Gk(z) are synthesis filters

2

Processing

2

+

output

2

Processing

2

Two-Channel Filter Banks
• In order that the decomposition does not involve loss of information, the following system should meet perfect reconstruction (PR) condition. That is

2

2

+

2

2

Two-Channel Filter Banks
• Usually H0(z) is a low-pass filter and H1(z) a high pass filter, by which x(n) are decomposed into low and high frequency components respectively

2

2

+

output

2

2

According to the results associated with downsampling followed by upsampling we have:

PR means that

The solutions for the above condition are not unique. A natural selection is

The above solution is called QMF, as there are “mirror” relationships among the filters

However the QMFs may not yield PR;

The filters are to be carefully chosen so that the PR condition is met:

Numerical optimization algorithms are usually employed to find the suitable H0(z).

Two-channel filter banks --- General cases with PR

There are many solutions for PR, for example

We have the following

Two-channel filter banks --- General cases with PR

Hence we can find a polynomial T(z) such that

And the decompose T(z) into two factors

Then the filters are determined

Two-channel filter banks --- General cases with PR

Example l=1

Polynomials with only one term of even power of z satisfy the above relation, for example

The coefficients of odd powers of z can be arbitrary and can be chosen to obtain a nice frequency response

Two-channel filter banks --- General cases with PR

We can also choose l=0

Polynomials with only one term of odd power of z satisfy the above relation, for example

The coefficients of even powers of z can be arbitrary and can be chosen to obtain a nice frequency response

Two-channel filter banks --- General cases with PR
• The approach can be summerized as
• Choose T(z);
• Compute the roots of T(z) and group them into two sets
• Multiply out the factors of each group and call the results H0(z) and G0(z)
• Example:
Two-Channel Filter Banks– Polyphase Implementation
• Now let us go back to this two-channel filter banks. How to make it simpler?

2

2

+

2

2

Two-Channel Filter Banks– Polyphase Implementation
• The results can be implemented as

2

2

+

+

2

2

+

Two-Channel Filter Banks– Polyphase Implementation
• The synthesis part can also be implemented using polyphase representation (Type-2)

2

2

+

+

+

2

2

+

+

Two-Channel QMF banks– Polyphase Implementation
• As H1(z)=H0(-z), hence H10(z)=H00(z), H11(z)=-H01(-z),

2

2

+

+

+

2

2

-

+

+