0% found this document useful (0 votes)
61 views99 pages

Multirate

The document discusses multirate systems which involve more than one sample rate. It describes the basic building blocks of downsampling and upsampling, and how they can be combined in resampling cascades. While upsampling can be inverted, downsampling permanently destroys information. The document notes that resampling operations can be interchanged if the resampling factors are coprime numbers. It provides examples and proofs to illustrate these concepts of multirate systems.
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)
61 views99 pages

Multirate

The document discusses multirate systems which involve more than one sample rate. It describes the basic building blocks of downsampling and upsampling, and how they can be combined in resampling cascades. While upsampling can be inverted, downsampling permanently destroys information. The document notes that resampling operations can be interchanged if the resampling factors are coprime numbers. It provides examples and proofs to illustrate these concepts of multirate systems.
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/ 99

11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

DSP and Digital Filters (2014-4464)

11: Multirate Systems

Multirate: 11 1 / 13

Multirate Systems
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Multirate systems include more than one sample rate

DSP and Digital Filters (2014-4464)

Multirate: 11 2 / 13

Multirate Systems
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Multirate systems include more than one sample rate


Why bother?:

May need to change the sample rate

DSP and Digital Filters (2014-4464)

e.g. Audio sample rates include 32, 44.1, 48, 96 kHz

Multirate: 11 2 / 13

Multirate Systems
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Multirate systems include more than one sample rate


Why bother?:

May need to change the sample rate


e.g. Audio sample rates include 32, 44.1, 48, 96 kHz

Can relax analog or digital filter requirements

DSP and Digital Filters (2014-4464)

e.g. Audio DAC increases sample rate so that the reconstruction filter
can have a more gradual cutoff

Multirate: 11 2 / 13

Multirate Systems
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Multirate systems include more than one sample rate


Why bother?:

May need to change the sample rate


e.g. Audio sample rates include 32, 44.1, 48, 96 kHz

Can relax analog or digital filter requirements


e.g. Audio DAC increases sample rate so that the reconstruction filter
can have a more gradual cutoff

Reduce computational complexity


fs
where f is width of transition band
FIR filter length f
Lower fs shorter filter + fewer samples computation fs2

DSP and Digital Filters (2014-4464)

Multirate: 11 2 / 13

Building blocks
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Downsample

DSP and Digital Filters (2014-4464)

y[m] = x[Km]

Multirate: 11 3 / 13

Building blocks
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Downsample
Upsample

DSP and Digital Filters (2014-4464)

y[m] = x[Km]
(  
n
u K
K|n
v[n] =
0
else

Multirate: 11 3 / 13

Building blocks
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

y[m] = x[Km]
(  
n
u K
K|n
v[n] =
0
else

Downsample
Upsample

Example:
Downsample by 3 then upsample by 4
w[n]

DSP and Digital Filters (2014-4464)

Multirate: 11 3 / 13

Building blocks
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

y[m] = x[Km]
(  
n
u K
K|n
v[n] =
0
else

Downsample
Upsample

Example:
Downsample by 3 then upsample by 4
w[n]

DSP and Digital Filters (2014-4464)

x[m]

Multirate: 11 3 / 13

Building blocks
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

y[m] = x[Km]
(  
n
u K
K|n
v[n] =
0
else

Downsample
Upsample

Example:
Downsample by 3 then upsample by 4
w[n]

DSP and Digital Filters (2014-4464)

x[m]

y[r]

Multirate: 11 3 / 13

Building blocks
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

y[m] = x[Km]
(  
n
u K
K|n
v[n] =
0
else

Downsample
Upsample

Example:
Downsample by 3 then upsample by 4
w[n]

x[m]

y[r]

We use different index variables (n, m, r ) for different sample rates

DSP and Digital Filters (2014-4464)

Multirate: 11 3 / 13

Building blocks
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

y[m] = x[Km]
(  
n
u K
K|n
v[n] =
0
else

Downsample
Upsample

Example:
Downsample by 3 then upsample by 4
w[n]

x[m]

y[r]

We use different index variables (n, m, r ) for different sample rates


Use different colours for signals at different rates (sometimes)

DSP and Digital Filters (2014-4464)

Multirate: 11 3 / 13

Building blocks
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

y[m] = x[Km]
(  
n
u K
K|n
v[n] =
0
else

Downsample
Upsample

Example:
Downsample by 3 then upsample by 4
w[n]

x[m]

y[r]

We use different index variables (n, m, r ) for different sample rates


Use different colours for signals at different rates (sometimes)
Synchronization: all signals have a sample at n = 0.

DSP and Digital Filters (2014-4464)

Multirate: 11 3 / 13

Resampling Cascades
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Successive downsamplers or upsamplers


can be combined

DSP and Digital Filters (2014-4464)

Multirate: 11 4 / 13

Resampling Cascades
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Successive downsamplers or upsamplers


can be combined
Upsampling can be exactly inverted

DSP and Digital Filters (2014-4464)

Multirate: 11 4 / 13

Resampling Cascades
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Successive downsamplers or upsamplers


can be combined
Upsampling can be exactly inverted
Downsampling destroys information
permanently uninvertible

DSP and Digital Filters (2014-4464)

Multirate: 11 4 / 13

Resampling Cascades
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Successive downsamplers or upsamplers


can be combined
Upsampling can be exactly inverted
Downsampling destroys information
permanently uninvertible
Resampling can be interchanged
iff P and Q are coprime (surprising!)

DSP and Digital Filters (2014-4464)

Multirate: 11 4 / 13

Resampling Cascades
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Successive downsamplers or upsamplers


can be combined
Upsampling can be exactly inverted
Downsampling destroys information
permanently uninvertible
Resampling can be interchanged
iff P and Q are coprime (surprising!)
Proof: Left side: y[n] = x

P
Qn

if Q | n else y[n] = 0.

[Note: a | b means b is a multiple of a]


DSP and Digital Filters (2014-4464)

Multirate: 11 4 / 13

Resampling Cascades
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Successive downsamplers or upsamplers


can be combined
Upsampling can be exactly inverted
Downsampling destroys information
permanently uninvertible
Resampling can be interchanged
iff P and Q are coprime (surprising!)
Proof: Left side: y[n] = x

P
Qn

if Q | n else y[n] = 0.

P
Right side: y[n] = x Q
n if Q | P n.

[Note: a | b means b is a multiple of a]


DSP and Digital Filters (2014-4464)

Multirate: 11 4 / 13

Resampling Cascades
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Successive downsamplers or upsamplers


can be combined
Upsampling can be exactly inverted
Downsampling destroys information
permanently uninvertible
Resampling can be interchanged
iff P and Q are coprime (surprising!)
Proof: Left side: y[n] = x

P
Qn

if Q | n else y[n] = 0.

P
Right side: y[n] = x Q
n if Q | P n.
But {Q | P n Q | n} iff P and Q are coprime.

[Note: a | b means b is a multiple of a]


DSP and Digital Filters (2014-4464)

Multirate: 11 4 / 13

Noble Identities
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Resamplers commute with addition


and multiplication

DSP and Digital Filters (2014-4464)

Multirate: 11 5 / 13

Noble Identities
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Resamplers commute with addition


and multiplication

Delays must be multiplied by the


resampling ratio

DSP and Digital Filters (2014-4464)

Multirate: 11 5 / 13

Noble Identities
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Resamplers commute with addition


and multiplication

Delays must be multiplied by the


resampling ratio
Noble identities:
Exchange resamplers and filters

DSP and Digital Filters (2014-4464)

Multirate: 11 5 / 13

Noble Identities
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Resamplers commute with addition


and multiplication

Delays must be multiplied by the


resampling ratio
Noble identities:
Exchange resamplers and filters

Example: H(z) = h[0] + h[1]z 1 + h[2]z 2 +

H(z 3 ) = h[0] + h[1]z 3 + h[2]z 6 +

DSP and Digital Filters (2014-4464)

Multirate: 11 5 / 13

Noble Identities
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Resamplers commute with addition


and multiplication

Delays must be multiplied by the


resampling ratio
Noble identities:
Exchange resamplers and filters

Corrollary
Example: H(z) = h[0] + h[1]z 1 + h[2]z 2 +

H(z 3 ) = h[0] + h[1]z 3 + h[2]z 6 +

DSP and Digital Filters (2014-4464)

Multirate: 11 5 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

w[r] = v[Qr]

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

w[r] = v[Qr] =

DSP and Digital Filters (2014-4464)

PQM
s=0

hQ [s]x[Qr s]

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
= m=0 hQ [Qm]x[Qr Qm]

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m]

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m] = y[r] ,

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m] = y[r] ,

Upsampled Noble Identity:

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m] = y[r] ,

Upsampled Noble Identity:

We know that v[n] = 0 except when Q | n and that v[Qr] = x[r].

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m] = y[r] ,

Upsampled Noble Identity:

We know that v[n] = 0 except when Q | n and that v[Qr] = x[r].

w[n] =

DSP and Digital Filters (2014-4464)

PQM
s=0

hQ [s]v[n s]

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m] = y[r] ,

Upsampled Noble Identity:

We know that v[n] = 0 except when Q | n and that v[Qr] = x[r].

w[n] =

DSP and Digital Filters (2014-4464)

PQM

s=0 hQ [s]v[n s] =

PM

m=0 hQ [Qm]v[n

Qm]

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m] = y[r] ,

Upsampled Noble Identity:

We know that v[n] = 0 except when Q | n and that v[Qr] = x[r].

P
PM
w[n] = QM
h
[s]v[n

s]
=
Q
m=0 hQ [Qm]v[n Qm]
Ps=0
M
= m=0 h[m]v[n Qm]

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m] = y[r] ,

Upsampled Noble Identity:

We know that v[n] = 0 except when Q | n and that v[Qr] = x[r].

P
PM
w[n] = QM
h
[s]v[n

s]
=
Q
m=0 hQ [Qm]v[n Qm]
Ps=0
M
= m=0 h[m]v[n Qm]

If Q n, then v[n Qm] = 0 m so w[n] = 0 = y[n]

DSP and Digital Filters (2014-4464)

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m] = y[r] ,

Upsampled Noble Identity:

We know that v[n] = 0 except when Q | n and that v[Qr] = x[r].

P
PM
w[n] = QM
h
[s]v[n

s]
=
Q
m=0 hQ [Qm]v[n Qm]
Ps=0
M
= m=0 h[m]v[n Qm]

If Q n, then v[n Qm] = 0 m so w[n] = 0 = y[n]


If Q | n = Qr , then w[Qr] =

DSP and Digital Filters (2014-4464)

PM

m=0

h[m]v[Qr Qm]
Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m] = y[r] ,

Upsampled Noble Identity:

We know that v[n] = 0 except when Q | n and that v[Qr] = x[r].

P
PM
w[n] = QM
h
[s]v[n

s]
=
Q
m=0 hQ [Qm]v[n Qm]
Ps=0
M
= m=0 h[m]v[n Qm]

If Q n, then v[n Qm] = 0 m so w[n] = 0 = y[n]


If Q | n = Qr , then w[Qr] =

=
DSP and Digital Filters (2014-4464)

PM

h[m]v[Qr Qm]
m=0 h[m]x[r m] = u[r]

PM

m=0

Multirate: 11 6 / 13

Noble Identities Proof


11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define hQ [n] to be the


impulse response of H(z Q ).
Assume that h[r] is of length M + 1 so that hQ [n] is of length QM + 1.
We know that hQ [n] = 0 except when Q | n and that h[r] = hQ [Qr].

PQM

w[r] = v[Qr] = s=0 hQ [s]x[Qr s]


PM
PM
= m=0 hQ [Qm]x[Qr Qm] = m=0 h[m]x[Q(r m)]
PM
= m=0 h[m]u[r m] = y[r] ,

Upsampled Noble Identity:

We know that v[n] = 0 except when Q | n and that v[Qr] = x[r].

P
PM
w[n] = QM
h
[s]v[n

s]
=
Q
m=0 hQ [Qm]v[n Qm]
Ps=0
M
= m=0 h[m]v[n Qm]

If Q n, then v[n Qm] = 0 m so w[n] = 0 = y[n]


If Q | n = Qr , then w[Qr] =

=
DSP and Digital Filters (2014-4464)

PM

h[m]v[Qr Qm]
m=0 h[m]x[r m] = u[r] = y[Qr] ,

PM

m=0

Multirate: 11 6 / 13

Upsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

V (z) =

DSP and Digital Filters (2014-4464)

n
v[n]z
n

Multirate: 11 7 / 13

Upsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

V (z) =

DSP and Digital Filters (2014-4464)

n v[n]z

n n
u[
n:K|n
K ]z

Multirate: 11 7 / 13

Upsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

V (z) =

DSP and Digital Filters (2014-4464)

=
n v[n]z
P
= m u[m]z Km

n n
u[
n:K|n
K ]z

Multirate: 11 7 / 13

Upsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

DSP and Digital Filters (2014-4464)

n n
v[n]z
=
u[
n
n:K|n
K ]z
P
= m u[m]z Km = U (z K )

V (z) =

Multirate: 11 7 / 13

Upsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

n n
v[n]z
=
u[
n
n:K|n
K ]z
P
= m u[m]z Km = U (z K )

V (z) =

Frequency Spectrum:

V (ej ) = U (ejK )

DSP and Digital Filters (2014-4464)

Multirate: 11 7 / 13

Upsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

n n
v[n]z
=
u[
n
n:K|n
K ]z
P
= m u[m]z Km = U (z K )

V (z) =

Frequency Spectrum:

V (ej ) = U (ejK )
Frequency spectrum is horizontally shrunk and replicated K times.

DSP and Digital Filters (2014-4464)

Multirate: 11 7 / 13

Upsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

n n
v[n]z
=
u[
n
n:K|n
K ]z
P
= m u[m]z Km = U (z K )

V (z) =

Frequency Spectrum:

V (ej ) = U (ejK )
Frequency spectrum is horizontally shrunk and replicated K times.

Example:
Asymmetric real spectrum ( complex signal)

0.5

DSP and Digital Filters (2014-4464)

-2

Multirate: 11 7 / 13

Upsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

n n
v[n]z
=
u[
n
n:K|n
K ]z
P
= m u[m]z Km = U (z K )

V (z) =

Frequency Spectrum:

V (ej ) = U (ejK )
Frequency spectrum is horizontally shrunk and replicated K times.

Example:
Asymmetric real spectrum ( complex signal)
K = 3: three images of the original spectrum in all.

0.5

0.5

DSP and Digital Filters (2014-4464)

-2

-2

Multirate: 11 7 / 13

Upsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

n n
v[n]z
=
u[
n
n:K|n
K ]z
P
= m u[m]z Km = U (z K )

V (z) =

Frequency Spectrum:

V (ej ) = U (ejK )
Frequency spectrum is horizontally shrunk and replicated K times.

Example:
Asymmetric real spectrum ( complex signal)
K = 3: three images of the original spectrum in all.
Energy unchanged:

1
2

DSP and Digital Filters (2014-4464)

1
2

0.5


R
U (ej ) 2 d =


R
V (ej ) 2 d

0.5

-2

-2

Multirate: 11 7 / 13

Upsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

n n
v[n]z
=
u[
n
n:K|n
K ]z
P
= m u[m]z Km = U (z K )

V (z) =

Frequency Spectrum:

V (ej ) = U (ejK )
Frequency spectrum is horizontally shrunk and replicated K times.
Upsampling normally followed by a LP filter to remove images.
Example:
Asymmetric real spectrum ( complex signal)
K = 3: three images of the original spectrum in all.
Energy unchanged:

1
2

DSP and Digital Filters (2014-4464)

1
2

0.5


R
U (ej ) 2 d =


R
V (ej ) 2 d

0.5

-2

-2

Multirate: 11 7 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Define cK [n] = K|n [n]

DSP and Digital Filters (2014-4464)

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e

DSP and Digital Filters (2014-4464)

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e

Now define xK [n] =

DSP and Digital Filters (2014-4464)

x[n] K | n
0
Kn

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e

Now define xK [n] =

DSP and Digital Filters (2014-4464)

x[n] K | n
= cK [n]x[n]
0
Kn

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e

Now define xK [n] =

XK (z) =

DSP and Digital Filters (2014-4464)

x[n] K | n
= cK [n]x[n]
0
Kn

xK [n]z n

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e
(

x[n] K | n
= cK [n]x[n]
0
Kn
P PK1 j2kn
P
1
n
XK (z) = n xK [n]z = K n k=0 e K x[n]z n

Now define xK [n] =

DSP and Digital Filters (2014-4464)

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e
(

x[n] K | n
= cK [n]x[n]
0
Kn
P PK1 j2kn
P
1
n
XK (z) = n xK [n]z = K n k=0 e K x[n]z n
 j2k n
P
P
K1
1
K
=K
z
k=0
n x[n] e

Now define xK [n] =

DSP and Digital Filters (2014-4464)

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e
(

x[n] K | n
= cK [n]x[n]
0
Kn
P PK1 j2kn
P
1
n
XK (z) = n xK [n]z = K n k=0 e K x[n]z n
 j2k n
P
PK1
P
j2k
K1
1
1
K
= K k=0
z
= K k=0 X(e K z)
n x[n] e

Now define xK [n] =

DSP and Digital Filters (2014-4464)

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e
(

x[n] K | n
= cK [n]x[n]
0
Kn
P PK1 j2kn
P
1
n
XK (z) = n xK [n]z = K n k=0 e K x[n]z n
 j2k n
P
PK1
P
j2k
K1
1
1
K
= K k=0
z
= K k=0 X(e K z)
n x[n] e

Now define xK [n] =

From previous slide:

XK (z) = Y (z K )

DSP and Digital Filters (2014-4464)

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e
(

x[n] K | n
= cK [n]x[n]
0
Kn
P PK1 j2kn
P
1
n
XK (z) = n xK [n]z = K n k=0 e K x[n]z n
 j2k n
P
PK1
P
j2k
K1
1
1
K
= K k=0
z
= K k=0 X(e K z)
n x[n] e

Now define xK [n] =

From previous slide:

XK (z) = Y (z K )
1
Y (z) = XK (z K )

DSP and Digital Filters (2014-4464)

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e
(

x[n] K | n
= cK [n]x[n]
0
Kn
P PK1 j2kn
P
1
n
XK (z) = n xK [n]z = K n k=0 e K x[n]z n
 j2k n
P
PK1
P
j2k
K1
1
1
K
= K k=0
z
= K k=0 X(e K z)
n x[n] e

Now define xK [n] =

From previous slide:

XK (z) = Y (z K )
1
Y (z) = XK (z K ) =

DSP and Digital Filters (2014-4464)

1
K

PK1
k=0

X(e

j2k
K

zK)

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e
(

x[n] K | n
= cK [n]x[n]
0
Kn
P PK1 j2kn
P
1
n
XK (z) = n xK [n]z = K n k=0 e K x[n]z n
 j2k n
P
PK1
P
j2k
K1
1
1
K
= K k=0
z
= K k=0 X(e K z)
n x[n] e

Now define xK [n] =

From previous slide:

XK (z) = Y (z K )
1
Y (z) = XK (z K ) =

1
K

Frequency Spectrum:

Y (ej ) =

DSP and Digital Filters (2014-4464)

1
K

PK1
k=0

X(e

PK1
k=0

j(2k)
K

X(e

j2k
K

zK)

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e
(

x[n] K | n
= cK [n]x[n]
0
Kn
P PK1 j2kn
P
1
n
XK (z) = n xK [n]z = K n k=0 e K x[n]z n
 j2k n
P
PK1
P
j2k
K1
1
1
K
= K k=0
z
= K k=0 X(e K z)
n x[n] e

Now define xK [n] =

From previous slide:

XK (z) = Y (z K )
1
Y (z) = XK (z K ) =
Frequency Spectrum:

Y (ej ) =
=

DSP and Digital Filters (2014-4464)

1
K
1
K

1
K

PK1
k=0

X(e

j2k
K

zK)

PK1
j(2k)
K
)
X(e

 k=0j
j
j
2
4
X(e K ) + X(e K K ) + X(e K K ) +

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e
(

x[n] K | n
= cK [n]x[n]
0
Kn
P PK1 j2kn
P
1
n
XK (z) = n xK [n]z = K n k=0 e K x[n]z n
 j2k n
P
PK1
P
j2k
K1
1
1
K
= K k=0
z
= K k=0 X(e K z)
n x[n] e

Now define xK [n] =

From previous slide:

XK (z) = Y (z K )
1
Y (z) = XK (z K ) =
Frequency Spectrum:

1
K

PK1
k=0

X(e

j2k
K

zK)

PK1
j(2k)
K
)
X(e

 k=0j
j
j
2
4
=
X(e K ) + X(e K K ) + X(e K K ) +
Horizontally expanded by a factor of K , average of K aliased versions.
Y (ej ) =

DSP and Digital Filters (2014-4464)

1
K
1
K

Multirate: 11 8 / 13

Downsampled z-transform
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

PK1 j2kn
1
K
Define cK [n] = K|n [n] = K
k=0 e
(

x[n] K | n
= cK [n]x[n]
0
Kn
P PK1 j2kn
P
1
n
XK (z) = n xK [n]z = K n k=0 e K x[n]z n
 j2k n
P
PK1
P
j2k
K1
1
1
K
= K k=0
z
= K k=0 X(e K z)
n x[n] e

Now define xK [n] =

From previous slide:

XK (z) = Y (z K )
1
Y (z) = XK (z K ) =
Frequency Spectrum:

1
K

PK1
k=0

X(e

j2k
K

zK)

PK1
j(2k)
K
)
X(e

 k=0j
j
j
2
4
=
X(e K ) + X(e K K ) + X(e K K ) +
Horizontally expanded by a factor of K , average of K aliased versions.
Y (ej ) =

1
K
1
K

Downsampling is normally preceded by a LP filter to prevent aliasing.


DSP and Digital Filters (2014-4464)

Multirate: 11 8 / 13

Downsampled Spectrum
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Y (e ) =

DSP and Digital Filters (2014-4464)

1
K

PK1
k=0

X(e

j(2k)
K

Multirate: 11 9 / 13

Downsampled Spectrum
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Y (e ) =
Example 1:

1
K

PK1
k=0

X(e

K=3

Not quite limited to K

DSP and Digital Filters (2014-4464)

j(2k)
K

0.5

-2

Multirate: 11 9 / 13

Downsampled Spectrum
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Y (e ) =
Example 1:

1
K

PK1
k=0

X(e

j(2k)
K

K=3

Not quite limited to K


Shaded region shows aliasing

DSP and Digital Filters (2014-4464)

0.5

0.5

-2

-2

Multirate: 11 9 / 13

Downsampled Spectrum
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Y (e ) =
Example 1:

1
K

PK1
k=0

X(e

j(2k)
K

K=3

Not quite limited to K


Shaded region shows aliasing

Energy decreases:

DSP and Digital Filters (2014-4464)

1
2

0.5

0.5

-2


R
Y (ej ) 2 d

1
2K

-2


R
X(ej ) 2 d

Multirate: 11 9 / 13

Downsampled Spectrum
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Y (e ) =
Example 1:

1
K

PK1
k=0

X(e

j(2k)
K

K=3

Not quite limited to K


Shaded region shows aliasing

Energy decreases:
Example 2:

K=3

1
2

0.5

0.5


R
Y (ej ) 2 d

|| 2 K
Limited to K

1
2K

-2


R
X(ej ) 2 d

0.5

DSP and Digital Filters (2014-4464)

-2

-2

Multirate: 11 9 / 13

Downsampled Spectrum
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Y (e ) =
Example 1:

1
K

PK1
k=0

X(e

j(2k)
K

K=3

Not quite limited to K


Shaded region shows aliasing

Energy decreases:
Example 2:

K=3

1
2

0.5

0.5

-2


R
Y (ej ) 2 d

|| 2 K
Limited to K
No aliasing: ,

DSP and Digital Filters (2014-4464)

1
2K

-2


R
X(ej ) 2 d
1

0.5

0.5

-2

-2

Multirate: 11 9 / 13

Downsampled Spectrum
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Y (e ) =
Example 1:

1
K

PK1
k=0

X(e

j(2k)
K

K=3

Not quite limited to K


Shaded region shows aliasing

Energy decreases:

1
2

Example 2:

K=3

0.5

0.5

-2


R
Y (ej ) 2 d

|| 2 K
Limited to K
No aliasing: ,

1
2K

-2


R
X(ej ) 2 d
1

0.5

0.5

-2

-2

Criterion for no aliasing:

Normally quoted Nyquist criterion is || K

DSP and Digital Filters (2014-4464)

Multirate: 11 9 / 13

Downsampled Spectrum
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Y (e ) =
Example 1:

1
K

PK1
k=0

X(e

j(2k)
K

K=3

Not quite limited to K


Shaded region shows aliasing

Energy decreases:

1
2

Example 2:

K=3

0.5

0.5

-2


R
Y (ej ) 2 d

|| 2 K
Limited to K
No aliasing: ,

1
2K

-2


R
X(ej ) 2 d
1

0.5

0.5

-2

-2

Criterion for no aliasing:

Normally quoted Nyquist criterion is || K

|| (r + 1) K
Actually OK if spectral energy is restricted to r K

DSP and Digital Filters (2014-4464)

Multirate: 11 9 / 13

Perfect Reconstruction
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]

DSP and Digital Filters (2014-4464)

cdefghijklmn

Multirate: 11 10 / 13

Perfect Reconstruction
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]

DSP and Digital Filters (2014-4464)

cdefghijklmn
c f i l

Multirate: 11 10 / 13

Perfect Reconstruction
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
p[n]

DSP and Digital Filters (2014-4464)

cdefghijklmn
c f i l
-c--f--i--l

Multirate: 11 10 / 13

Perfect Reconstruction
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
p[n]
v[m]

DSP and Digital Filters (2014-4464)

cdefghijklmn
c f i l
-c--f--i--l
b e h k

Multirate: 11 10 / 13

Perfect Reconstruction
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
p[n]
v[m]
q[n]

DSP and Digital Filters (2014-4464)

cdefghijklmn
c f i l
-c--f--i--l
b e h k
-bc-ef-hi-kl

Multirate: 11 10 / 13

Perfect Reconstruction
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
p[n]
v[m]
q[n]
w[m]

DSP and Digital Filters (2014-4464)

cdefghijklmn
c f i l
-c--f--i--l
b e h k
-bc-ef-hi-kl
a d g j

Multirate: 11 10 / 13

Perfect Reconstruction
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
p[n]
v[m]
q[n]
w[m]
y[n]

DSP and Digital Filters (2014-4464)

cdefghijklmn
c f i l
-c--f--i--l
b e h k
-bc-ef-hi-kl
a d g j
abcdefghijkl

Multirate: 11 10 / 13

Perfect Reconstruction
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
p[n]
v[m]
q[n]
w[m]
y[n]

cdefghijklmn
c f i l
-c--f--i--l
b e h k
-bc-ef-hi-kl
a d g j
abcdefghijkl

Input sequence x[n] is split into three streams:

u[m] = x[3m], v[m] = x[3m 1], w[m] = x[3m 2]

DSP and Digital Filters (2014-4464)

Multirate: 11 10 / 13

Perfect Reconstruction
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
p[n]
v[m]
q[n]
w[m]
y[n]

cdefghijklmn
c f i l
-c--f--i--l
b e h k
-bc-ef-hi-kl
a d g j
abcdefghijkl

Input sequence x[n] is split into three streams:

u[m] = x[3m], v[m] = x[3m 1], w[m] = x[3m 2]


Following upsampling, the streams are aligned by the delays and then
added to give:

y[n] = x[n 2]

DSP and Digital Filters (2014-4464)

Multirate: 11 10 / 13

Perfect Reconstruction
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
p[n]
v[m]
q[n]
w[m]
y[n]

cdefghijklmn
c f i l
-c--f--i--l
b e h k
-bc-ef-hi-kl
a d g j
abcdefghijkl

Input sequence x[n] is split into three streams:

u[m] = x[3m], v[m] = x[3m 1], w[m] = x[3m 2]


Following upsampling, the streams are aligned by the delays and then
added to give:

y[n] = x[n 2]
Perfect Reconstruction: output is a delayed scaled replica of the input

DSP and Digital Filters (2014-4464)

Multirate: 11 10 / 13

Commutators
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

DSP and Digital Filters (2014-4464)

x[n]
u[m]
v[m]
w[m]

cdefghijklmn
c f i l
b e h k
a d g j

y[n]

abcdefghijkl

Multirate: 11 11 / 13

Commutators
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
v[m]
w[m]

cdefghijklmn
c f i l
b e h k
a d g j

y[n]

abcdefghijkl

The combination of delays and downsamplers can be regarded as a


commutator that distributes values in sequence to u, w and v .

DSP and Digital Filters (2014-4464)

Multirate: 11 11 / 13

Commutators
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
v[m]
w[m]

cdefghijklmn
c f i l
b e h k
a d g j

y[n]

abcdefghijkl

The combination of delays and downsamplers can be regarded as a


commutator that distributes values in sequence to u, w and v .
2
1
Fractional delays, z 3 and z 3 are needed to synchronize the streams.

DSP and Digital Filters (2014-4464)

Multirate: 11 11 / 13

Commutators
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
v[m]
w[m]

cdefghijklmn
c f i l
b e h k
a d g j

y[n]

abcdefghijkl

The combination of delays and downsamplers can be regarded as a


commutator that distributes values in sequence to u, w and v .
2
1
Fractional delays, z 3 and z 3 are needed to synchronize the streams.
The output commutator takes values from the streams in sequence.

DSP and Digital Filters (2014-4464)

Multirate: 11 11 / 13

Commutators
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
v[m]
w[m]
v[m + 13 ]
w[m + 32 ]
y[n]

cdefghijklmn
c f i l
b e h k
a d g j
e h k l
d g j m
abcdefghijkl

The combination of delays and downsamplers can be regarded as a


commutator that distributes values in sequence to u, w and v .
2
1
Fractional delays, z 3 and z 3 are needed to synchronize the streams.
The output commutator takes values from the streams in sequence.
For clarity, we omit the fractional delays and regard each terminal, , as
holding its value until needed.

DSP and Digital Filters (2014-4464)

Multirate: 11 11 / 13

Commutators
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
v[m]
w[m]
v[m + 13 ]
w[m + 32 ]
y[n]

cdefghijklmn
c f i l
b e h k
a d g j
e h k l
d g j m
abcdefghijkl

The combination of delays and downsamplers can be regarded as a


commutator that distributes values in sequence to u, w and v .
2
1
Fractional delays, z 3 and z 3 are needed to synchronize the streams.
The output commutator takes values from the streams in sequence.
For clarity, we omit the fractional delays and regard each terminal, , as
holding its value until needed. Initial commutator position has zero delay.

DSP and Digital Filters (2014-4464)

Multirate: 11 11 / 13

Commutators
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

x[n]
u[m]
v[m]
w[m]
v[m + 13 ]
w[m + 32 ]
y[n]

cdefghijklmn
c f i l
b e h k
a d g j
e h k l
d g j m
abcdefghijkl

The combination of delays and downsamplers can be regarded as a


commutator that distributes values in sequence to u, w and v .
2
1
Fractional delays, z 3 and z 3 are needed to synchronize the streams.
The output commutator takes values from the streams in sequence.
For clarity, we omit the fractional delays and regard each terminal, , as
holding its value until needed. Initial commutator position has zero delay.

The commutator direction is against the direction of the z 1 delays.


DSP and Digital Filters (2014-4464)

Multirate: 11 11 / 13

Summary
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Multirate Building Blocks


1:K
Upsample: X(z) X(z K )
Invertible, Inserts K 1 zeros between samples

DSP and Digital Filters (2014-4464)

Shrinks and replicates spectrum


Follow by LP filter to remove images

Multirate: 11 12 / 13

Summary
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Multirate Building Blocks


1:K
Upsample: X(z) X(z K )
Invertible, Inserts K 1 zeros between samples
Shrinks and replicates spectrum
Follow by LP filter to remove images

Downsample: X(z)

K:1 1
K

PK1

j2k
K

1
K

z )
Destroys information and energy, keeps every K th sample
k=0

X(e

Expands and aliasses spectrum


Precede by LP filter to prevent aliases

DSP and Digital Filters (2014-4464)

Multirate: 11 12 / 13

Summary
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Multirate Building Blocks


1:K
Upsample: X(z) X(z K )
Invertible, Inserts K 1 zeros between samples
Shrinks and replicates spectrum
Follow by LP filter to remove images

Downsample: X(z)

K:1 1
K

PK1

j2k
K

1
K

z )
Destroys information and energy, keeps every K th sample
k=0

X(e

Expands and aliasses spectrum


Precede by LP filter to prevent aliases

Equivalences
Noble Identities: H(z) H(z K )
Interchange P : 1 and 1 : Q iff P and Q coprime

DSP and Digital Filters (2014-4464)

Multirate: 11 12 / 13

Summary
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Multirate Building Blocks


1:K
Upsample: X(z) X(z K )
Invertible, Inserts K 1 zeros between samples
Shrinks and replicates spectrum
Follow by LP filter to remove images

Downsample: X(z)

K:1 1
K

PK1

j2k
K

1
K

z )
Destroys information and energy, keeps every K th sample
k=0

X(e

Expands and aliasses spectrum


Precede by LP filter to prevent aliases

Equivalences
Noble Identities: H(z) H(z K )
Interchange P : 1 and 1 : Q iff P and Q coprime
Commutators
Combine delays and down/up sampling

DSP and Digital Filters (2014-4464)

Multirate: 11 12 / 13

Summary
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

Multirate Building Blocks


1:K
Upsample: X(z) X(z K )
Invertible, Inserts K 1 zeros between samples
Shrinks and replicates spectrum
Follow by LP filter to remove images

Downsample: X(z)

K:1 1
K

PK1

j2k
K

1
K

z )
Destroys information and energy, keeps every K th sample
k=0

X(e

Expands and aliasses spectrum


Precede by LP filter to prevent aliases

Equivalences
Noble Identities: H(z) H(z K )
Interchange P : 1 and 1 : Q iff P and Q coprime
Commutators
Combine delays and down/up sampling
For further details see Mitra: 13.

DSP and Digital Filters (2014-4464)

Multirate: 11 12 / 13

MATLAB routines
11: Multirate Systems

Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Perfect Reconstruction
Commutators
Summary
MATLAB routines

resample

DSP and Digital Filters (2014-4464)

change sampling rate

Multirate: 11 13 / 13

You might also like