0% found this document useful (0 votes)
82 views

Lect 07

This document summarizes a lecture on multirate digital signal processing. It introduces key concepts like decimation, interpolation, and sample rate conversion. Decimation is used to downsample signals by removing samples in integer ratios. Interpolation upsamples signals by inserting samples, also in integer ratios. Non-integer sample rate conversion combines interpolation and decimation using common integer factors. Multistage sample rate conversion improves filter design by breaking large conversion ratios into multiple integer stages.

Uploaded by

sanjapatil
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
82 views

Lect 07

This document summarizes a lecture on multirate digital signal processing. It introduces key concepts like decimation, interpolation, and sample rate conversion. Decimation is used to downsample signals by removing samples in integer ratios. Interpolation upsamples signals by inserting samples, also in integer ratios. Non-integer sample rate conversion combines interpolation and decimation using common integer factors. Multistage sample rate conversion improves filter design by breaking large conversion ratios into multiple integer stages.

Uploaded by

sanjapatil
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 31

Lecture 07: Multirate Digital Signal Processing

John Chiverton
School of Information Technology
Mae Fah Luang University

1st Semester 2009/ 2552

Lecture Contents

Introduction

Decimation

Interpolation

Non-Integer Sample Rate Conversion

Multistage Sample Rate Conversion

Summary

Outline

Introduction

Decimation

Interpolation

Non-Integer Sample Rate Conversion

Multistage Sample Rate Conversion

Summary

What is a Multirate Digital Signal Processing?

A digital signal processing system that uses signals with


different sampling frequencies is probably performing
multirate digital signal processing.

Multirate digital signal processing often uses sample rate


conversion to convert from
one sampling frequency to another sampling frequency.

Sample rate conversion uses


decimation to decrease the sampling rate,
interpolation to increase the sampling rate.

Sample Rate Conversion


Changing the sampling frequency in the analog domain
requires:
I

digital to analog conversion then

analog to digital conversion at a different sampling


frequency.

Both
I

Digital to analog conversion

Analog to digital conversion

introduce errors and noise into the signal.


Therefore sample rate conversion is done in digital domain and
uses a combination of:
I

Decimation,

and Interpolation.

Outline

Introduction

Decimation

Interpolation

Non-Integer Sample Rate Conversion

Multistage Sample Rate Conversion

Summary

Decimation (for Downsampling)


Decimation removes samples from a signal.
Decimation can therefore only downsample the signal by an
integer factor:
fs
=D>1
so that fs > fsnew
fsnew
where D is an integer, fs is the old sampling rate (number of
samples per second) and fsnew is the new sampling rate.
y[0]

(included)

x[0]
x[1]
x[2]
x[3]
x[4]
x[5]
x[6]
x[7]
x[8]
x[9]
tim

I
I

y[1]
y[2]

(included)

(included)

Anti-aliasing for Decimation


Decimation decreases the sampling rate.
I

The sampling theorem states that the highest frequency in a


signal should be less than half the sampling frequency.

A digital anti-aliasing filter has to be applied to remove


frequencies higher than:
fcf =

fsnew
2

So in digital frequency the cut-off frequency is:


new

2 fsfs
new
s
cf =
=
2
2
as fsnew < fs .

fsnew
<
fs

Anti-aliasing for Decimation

This means that the signal has to be filtered in the digital


domain before decimation:
x[n]

Digital
Antialiasing
Filter

Decimator

y[n]

Outline

Introduction

Decimation

Interpolation

Non-Integer Sample Rate Conversion

Multistage Sample Rate Conversion

Summary

Interpolation (for Upsampling)


I

Interpolation increases the sampling frequency by estimating


the value of the signal between samples.

x(t)

x(t)

x[n]
time t or
sample instances

time t or new
sample instances

y[m]

Interpolation

The new sampling frequency is greater than the old


sampling frequency:
fsnew > fs
where fs is the old sampling frequency and fsnew the new
sampling frequency.

Also, the new sampling frequency has to be an integer


multiple of the original sampling frequency:
fsnew
=D>1
fs
where D is an integer.

Zero Filling Based Interpolation


A common interpolation approach is zero filling based
interpolation.
There are two stages:
1. zero filling
2. low pass filtering

tim
e

x[0]
0
0

x[3]

rin
filt
e
pa
ss
low

x[2]
0
0

x[1]
0
0

y[0]
y[1]
y[2]
y[3]
y[4]
y[5]
y[6]
y[7]
y[8]
y[9]

Zero Filling Based Interpolation


Example: Interpolating by 3 (two zero samples are inserted
between each original sample).

x(t)

Original Signal

x[n]
time t or
sample instances

zero filling
x(t)

zero filled
time t or new
sample instances

low pass
filtering
x(t)

y[m]
time t or new
sample instances

Interpolated Signal

Outline

Introduction

Decimation

Interpolation

Non-Integer Sample Rate Conversion

Multistage Sample Rate Conversion

Summary

Non-Integer Sample Rate Conversion

Both:
I

Decimation (for downsampling):


fs
fsnew

=D

and Interpolation (for upsampling):


fsnew
=D
fs

where D is an integer, can only change the sampling frequency


to an integer of the original frequency.

Non-Integer Sample Rate Conversion


Example:
I

A CD player stores music at 44.1kHz.

A professional music recording device processes audio at


48kHz.
Transfer of the music to or from the CD player and the
professional audio device using:

I
I

decimation only or
interpolation only

are not possible because:


48e3
= 1.0884
44.1e3
which is not an integer.

Non-Integer Sample Rate Conversion


Solution!
Combine decimation and interpolation to get non-integer sample
rate conversion.
Similar to finding a common denominator in fractions...
1. Find common (integer) factor of the two sample rates, L
2. Interpolate (upsample) by this common factor L
3. Decimate (downsample) to the new sample rate fsnew by
downsampling by an integer factor M .
The sample rate converison is then:
f new
L
= s
M
fs

Non-Integer Sample Rate Conversion Example

Example:
Get audio from 44.1kHz sampled source (CD player) and transfer
to professional audio processor requiring 48kHz sample rate.
A. This process requires upsampling to 48kHz from 44.1kHz.
Professional
Audio Processor

CD Player

44.1kHz

Sample Rate
Conversion

48kHz

Non-Integer Sample Rate Conversion Example contd.


1. Worst case common factor: L = 48kHz to give
fs 48kHz = 2116.8MHz.
Better alternative is L = 160 to give
L 44.1kHz = 7056kHz
2. So interpolate by factor L by inserting 159 zeros for each
sample in 44.1kHz CD player signal then low pass filtering.
3. Then decimate to 48kHz by removing 146 samples in every
147 (= L 44.1kHz/48kHz) from the upsampled signal
(after applying anti-aliasing low pass filter).
The resulting sample rate conversion is:
160
L
=
= 1.088
M
147
which is the same as
fsnew
48kHz
=
= 1.088.
fs
44.1kHz

Optimising Non-Integer Sample Rate Conversion


There are 2 low pass filters (low pass filtering and anti-aliasing
filtering) for non-integer sample rate conversion:
INPUT SIGNAL

Interpolation
Zero Filling

Low Pass
Filtering

AntiAliasing
Filtering

Decimation

Sample
Removal

OUTPUT SIGNAL

Optimising Non-Integer Sample Rate Conversion


The interpolation low pass filter and the anti-aliasing filter for
the decimation stage can be combined
with a cut-off frequency equal to the lower of the two filters
cut-off frequencies.
INPUT SIGNAL

Zero Filling

Interpolation
& Decimation
Low Pass
Filtering

Sample
Removal

OUTPUT SIGNAL

Outline

Introduction

Decimation

Interpolation

Non-Integer Sample Rate Conversion

Multistage Sample Rate Conversion

Summary

Multistage Sample Rate Conversion

Problem!
In real world applications sample rate conversion converts a
sampling frequency to another sampling frequency that is:
I

Very much greater (fsnew  fs ) or

Very much smaller (fsnew  fs )

than the original signal sampling frequency.


But what is wrong with this?
This is best explained by an example.

Multistage Sample Rate Conversion: Problem


Q. A signal x[n], sampled at 4.096kHz has to be decimated to 128Hz. There should
be an antialiasing filter:
I that rejects frequencies above 64Hz,
I with a stopband ripple, s 0.001,
I and a passband ripple of p 0.001.
I The transition width should be ftw =4Hz,
I so that frequencies below 60Hz are kept.
A. A Blackman window can achieve a stop band ripple 75dB and passband ripple of
0.0014dB.
This can be compared with the requirements of this antialiasing filter of s 0.001,
which is 20 log(0.001) = 60dB and a passband ripple p 0.001, or
20 log(1 + 0.001) = 0.0087dB.
However, according to the low pass FIR filter design guidelines in [Van de Vegte,
2002]1 , the number of filter coefficients for a Blackman window will then be:
N = 5.98

fs
= 5.98 4096/4 = 6123.5
ftw

So the number of filter coefficients is very high.


1

Van de Vegte, Fundamentals of Digital Signal Processing Prentice Hall, 2002.

Multistage Sample Rate Conversion


Multiple stages for decimation (or interpolation) can reduce the
number of filter coefficients in the filter specifications.
The signal can be decimated more than once, using
a gradual change in sampling frequency.
Conventional decimation:
x[n]

AntiAliasing
Filter h[n]

Decimation

y[n]

Decimation in mutliple stages (multistage):

x[n]

AntiAliasing
Filter h 1 [n]

Decimation

D1

AntiAliasing
Filter h 2 [n]

Decimation

D2

AntiAliasing
Filter h 3 [n]

Decimation

D3

y[n]

Multistage Sample Rate Conversion

The multi-stage sample rate conversion decimation values, Di :


fs
fsnew

= D = D1 D2 ... Dk =

k
Y

Di

i=1

where all Di are integers. So for three stages, k = 3 and


D = D1 D2 D3 .

x[n]

AntiAliasing
Filter h 1 [n]

Decimation

D1

AntiAliasing
Filter h 2 [n]

Decimation

D2

AntiAliasing
Filter h 3 [n]

Decimation

D3

y[n]

Multistage Sample Rate Conversion Problem 2


Q. The earlier problem can now be implemented using 2 decimation stages. Find out
how many filter coefficients are necessary for a 2 stage decimation process.
A. The original sampling frequency fs = 4.096kHz and the new (decimated signal)
should have a sampling frequency of fsnew = 128Hz. Multistage decimation with 2
stages requires that:
4096
fs
=D=
= 32 = D1 D2 .
fsnew
128
The multistage decimation values can therefore be D1 = 8 and D2 = 4, creating an
(1)
intermediate signal with sampling frequency: fs = fs /8 = 512Hz.
The transition width can be longer with this higher sampling rate.
We can keep the same passband frequency (60Hz).
The transition width can go up to half the sampling rate:
(1)

ftw

512Hz
60Hz = 196Hz
2

The number of Blackman filter coefficients for this stage is:


(1)

N1 = 5.98

fs

(1)

ftw

= 5.98

512
= 16, (rounded up to integer value).
196

Multistage Sample Rate Conversion Problem 2, contd.


So N1 = 8 filter coefficients are required for the first decimation stage.
The intermediate signal sampled at 512Hz is to be decimated by a factor of 4 to
128Hz for the second stage:
(2)

fsnew = fs

512Hz
= 128Hz.
4

The transition width for this (final) stage can then be:
(2)

ftw =

128Hz
60Hz = 4Hz
2

So that the number of Blackman filter coefficients for this stage is:
(2)

N2 = 5.98

fs

(2)
ftw

= 5.98

128
= 192.
4

192 filter coefficients are required for this final stage. The combined filter coefficients
for the two stages is:
N1 + N2 = 16 + 192 = 208,
which is considerably less than the original non-multistage decimation antialiasing
filter requiring N = 6124 coefficients.

Outline

Introduction

Decimation

Interpolation

Non-Integer Sample Rate Conversion

Multistage Sample Rate Conversion

Summary

Lecture Summary

This lecture has covered


I

Decimation,

Interpolation,

Non-integer sample rate conversion,

Multistage sample rate conversion.

There are many more to topics and techniques in multirate digital


signal processing including:
I

Implementation techniques, e.g. polyphase filters

and Applications.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy