Multi Rate
Multi Rate
Multirate Systems
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary 11: Multirate Systems
MATLAB routines
0 0
0 0 0
0 0 0
0 0 0
0 0 0
Corrollary
n
11: Multirate Systems
P
Multirate Systems
V (z) = n v[n]z
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary
MATLAB routines
n n n
11: Multirate Systems
P P
Multirate Systems
V (z) = n v[n]z = n s.t. K|n u[ K ]z
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary
MATLAB routines
n n n
11: Multirate Systems
P P
Multirate Systems
V (z) = n v[n]z = n s.t. K|n u[ K ]z
Building blocks
= m u[m]z Km
Resampling Cascades
P
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary
MATLAB routines
n n n
11: Multirate Systems
P P
Multirate Systems
V (z) = n v[n]z = n s.t. K|n u[ K ]z
Building blocks
= m u[m]z Km = U (z K )
Resampling Cascades
P
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary
MATLAB routines
n n n
11: Multirate Systems
P P
Multirate Systems
V (z) = n v[n]z = n s.t. K|n u[ K ]z
Building blocks
= m u[m]z Km = U (z K )
Resampling Cascades
P
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum Spectrum: V (ej ) = U (ejK )
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary
MATLAB routines
n n n
11: Multirate Systems
P P
Multirate Systems
V (z) = n v[n]z = n s.t. K|n u[ K ]z
Building blocks
= m u[m]z Km = U (z K )
Resampling Cascades
P
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum Spectrum: V (ej ) = U (ejK )
Power Spectral Density +
Perfect Reconstruction
Spectrum is horizontally shrunk and replicated K times.
Commutators
Summary
MATLAB routines
n n n
11: Multirate Systems
P P
Multirate Systems
V (z) = n v[n]z = n s.t. K|n u[ K ]z
Building blocks
= m u[m]z Km = U (z K )
Resampling Cascades
P
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum Spectrum: V (ej ) = U (ejK )
Power Spectral Density +
Perfect Reconstruction
Spectrum is horizontally shrunk and replicated K times.
Commutators
Summary
MATLAB routines
Example:
0.5
0
-2 0 2
n n n
11: Multirate Systems
P P
Multirate Systems
V (z) = n v[n]z = n s.t. K|n u[ K ]z
Building blocks
= m u[m]z Km = U (z K )
Resampling Cascades
P
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum Spectrum: V (ej ) = U (ejK )
Power Spectral Density +
Perfect Reconstruction
Spectrum is horizontally shrunk and replicated K times.
Commutators
Summary
MATLAB routines
Example:
K = 3: three images of the original spectrum in all.
1 1
0.5 0.5
0 0
-2 0 2 -2 0 2
n n n
11: Multirate Systems
P P
Multirate Systems
V (z) = n v[n]z = n s.t. K|n u[ K ]z
Building blocks
= m u[m]z Km = U (z K )
Resampling Cascades
P
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum Spectrum: V (ej ) = U (ejK )
Power Spectral Density +
Perfect Reconstruction
Spectrum is horizontally shrunk and replicated K times.
1
Commutators Total energy unchanged; power (= energy/sample) multiplied by K
Summary
MATLAB routines
Example:
K = 3: three images of the original spectrum in all.
1 1
0.5 0.5
0 0
-2 0 2 -2 0 2
n n n
11: Multirate Systems
P P
Multirate Systems
V (z) = n v[n]z = n s.t. K|n u[ K ]z
Building blocks
= m u[m]z Km = U (z K )
Resampling Cascades
P
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum Spectrum: V (ej ) = U (ejK )
Power Spectral Density +
Perfect Reconstruction
Spectrum is horizontally shrunk and replicated K times.
1
Commutators Total energy unchanged; power (= energy/sample) multiplied by K
Summary
MATLAB routines
Example:
K = 3: three images of the original spectrum in all.
1 j 2 1 j 2
R R
Energy unchanged: 2 U (e ) d = 2 V (e ) d
1 1
0.5 0.5
0 0
-2 0 2 -2 0 2
n n n
11: Multirate Systems
P P
Multirate Systems
V (z) = n v[n]z = n s.t. K|n u[ K ]z
Building blocks
= m u[m]z Km = U (z K )
Resampling Cascades
P
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum Spectrum: V (ej ) = U (ejK )
Power Spectral Density +
Perfect Reconstruction
Spectrum is horizontally shrunk and replicated K times.
1
Commutators Total energy unchanged; power (= energy/sample) multiplied by K
Summary
MATLAB routines Upsampling normally followed by a LP filter to remove images.
Example:
K = 3: three images of the original spectrum in all.
1 j 2 1 j 2
R R
Energy unchanged: 2 U (e ) d = 2 V (e ) d
1 1
0.5 0.5
0 0
-2 0 2 -2 0 2
XK (z) = Y (z K )
XK (z) = Y (z K )
1
Y (z) = XK (z K )
XK (z) = Y (z K )
1 1
PK1 j2k 1
Y (z) = XK (z K ) = K k=0 X(e K zK)
XK (z) = Y (z K )
1 1
PK1 j2k 1
Y (z) = XK (z K ) = K k=0 X(e K zK)
Frequency Spectrum:
PK1 j(2k)
1
Y (ej ) = K k=0 X(e K )
XK (z) = Y (z K )
1 1
PK1 j2k 1
Y (z) = XK (z K ) = K k=0 X(e K zK)
Frequency Spectrum:
PK1 j(2k)
1
Y (ej ) = K k=0jX(e K )
j 2 j 4
1
= K X(e K ) + X(e K K ) + X(e K K ) +
XK (z) = Y (z K )
1 1
PK1 j2k 1
Y (z) = XK (z K ) = K k=0 X(e K zK)
Frequency Spectrum:
PK1 j(2k)
1
Y (ej ) = k=0j
K X(e K )
j 2 j 4
1
= KX(e K ) + X(e K K ) + X(e K K ) +
Average of K aliased versions, each expanded in by a factor of K .
XK (z) = Y (z K )
1 1
PK1 j2k 1
Y (z) = XK (z K ) = K k=0 X(e K zK)
Frequency Spectrum:
PK1 j(2k)
1
Y (ej ) = k=0j
K X(e K )
j 2 j 4
1
= KX(e K ) + X(e K K ) + X(e K K ) +
Average of K aliased versions, each expanded in by a factor of K .
Downsampling is normally preceded by a LP filter to prevent aliasing.
Perfect Reconstruction 0
-2 0 2
Commutators
Summary
MATLAB routines
Summary
MATLAB routines
1 Y (ej )2 d 1 1 X(ej )2 d
Summary
R R
MATLAB routines Energy decreases: 2 K 2
1 Y (ej )2 d 1 1 X(ej )2 d
Summary
R R
MATLAB routines Energy decreases: 2 K 2
Example 2:
1
K=3
Energy all in K || < 2 K 0.5
0
-2 0 2
1 Y (ej )2 d 1 1 X(ej )2 d
Summary
R R
MATLAB routines Energy decreases: 2 K 2
Example 2:
1 1
K=3
Energy all in K || < 2 K 0.5 0.5
No aliasing: , 0
-2 0 2
0
-2 0 2
1 Y (ej )2 d 1 1 X(ej )2 d
Summary
R R
MATLAB routines Energy decreases: 2 K 2
Example 2:
1 1
K=3
Energy all in K || < 2 K 0.5 0.5
No aliasing: , 0
-2 0 2
0
-2 0 2
No aliasing: If all energy is in r K || < (r + 1) K for some integer r
1 Y (ej )2 d 1 1 X(ej )2 d
Summary
R R
MATLAB routines Energy decreases: 2 K 2
Example 2:
1 1
K=3
Energy all in K || < 2 K 0.5 0.5
No aliasing: , 0
-2 0 2
0
-2 0 2
No aliasing: If all energy is in r K || < (r + 1) K for some integer r
Normal case (r = 0): If all energy in 0 || K
1 Y (ej )2 d 1 1 X(ej )2 d
Summary
R R
MATLAB routines Energy decreases: 2 K 2
Example 2:
1 1
K=3
Energy all in K || < 2 K 0.5 0.5
No aliasing: , 0
-2 0 2
0
-2 0 2
No aliasing: If all energy is in r K || < (r + 1) K for some integer r
Normal case (r = 0): If all energy in 0 || K
1 1
Downsampling: Total energy multiplied by K (= K if no aliasing)
Average power unchanged (= energy/sample)
DSP and Digital Filters (2017-9045) Multirate: 11 9 / 14
Power Spectral Density +
Downsampled z-transform
Downsampled Spectrum 0
Power Spectral Density + -3 -2 -1 0 1 2 3
Frequency (rad/samp)
Perfect Reconstruction
Commutators
Summary
MATLAB routines
Downsampled z-transform
Downsampled Spectrum 0
Power Spectral Density + -3 -2 -1 0 1 2 3
Frequency (rad/samp)
Perfect Reconstruction
Commutators
Summary
MATLAB routines
Perfect Reconstruction
Commutators
Summary
MATLAB routines
Perfect Reconstruction
Commutators
Summary Upsampling:
MATLAB routines upsample 2
Perfect Reconstruction
Commutators
Summary Upsampling:
MATLAB routines upsample 2 upsample 3
0 0
-3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3
Frequency (rad/samp) Frequency (rad/samp)
Perfect Reconstruction
Commutators
Summary Upsampling:
MATLAB routines upsample 2 upsample 3
0 0
-3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3
Frequency (rad/samp) Frequency (rad/samp)
Downsampling:
downsample 2
PSD , = 0.5 + 0.1 = 0.6
is unchanged. 0.4
0.2
0
-3 -2 -1 0 1 2 3
Frequency (rad/samp)
Perfect Reconstruction
Commutators
Summary Upsampling:
MATLAB routines upsample 2 upsample 3
0 0
-3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3
Frequency (rad/samp) Frequency (rad/samp)
Downsampling:
downsample 2 downsample 3
0 0
the 3 case. -3 -2 -1 0 1
Frequency (rad/samp)
2 3 -3 -2 -1 0 1
Frequency (rad/samp)
2 3
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary
MATLAB routines
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary
MATLAB routines
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities p[n] -
--f--i--l
Noble Identities Proof
Upsampled z-transform
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary
MATLAB routines
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities p[n] -
--f--i--l
Noble Identities Proof
Upsampled z-transform
v[m] b e h k
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary
MATLAB routines
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities p[n] -
--f--i--l
Noble Identities Proof
Upsampled z-transform
v[m] b e h k
Downsampled z-transform q[n] -b
-ef-hi-kl
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
Summary
MATLAB routines
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities p[n] -
--f--i--l
Noble Identities Proof
Upsampled z-transform
v[m] b e h k
Downsampled z-transform q[n] -b
-ef-hi-kl
a d g j
Downsampled Spectrum
Power Spectral Density + w[m]
Perfect Reconstruction
Commutators
Summary
MATLAB routines
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities p[n] -
--f--i--l
Noble Identities Proof
Upsampled z-transform
v[m] b e h k
Downsampled z-transform q[n] -b
-ef-hi-kl
a d g j
Downsampled Spectrum
Power Spectral Density + w[m]
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities p[n] -
--f--i--l
Noble Identities Proof
Upsampled z-transform
v[m] b e h k
Downsampled z-transform q[n] -b
-ef-hi-kl
a d g j
Downsampled Spectrum
Power Spectral Density + w[m]
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
Input sequence x[n] is split into three streams at 13 the sample rate:
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities p[n] -
--f--i--l
Noble Identities Proof
Upsampled z-transform
v[m] b e h k
Downsampled z-transform q[n] -b
-ef-hi-kl
a d g j
Downsampled Spectrum
Power Spectral Density + w[m]
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
Input sequence x[n] is split into three streams at 13 the sample rate:
y[n] = x[n 2]
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities p[n] -
--f--i--l
Noble Identities Proof
Upsampled z-transform
v[m] b e h k
Downsampled z-transform q[n] -b
-ef-hi-kl
a d g j
Downsampled Spectrum
Power Spectral Density + w[m]
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
Input sequence x[n] is split into three streams at 13 the sample rate:
y[n] = x[n 2]
Perfect Reconstruction: output is a delayed scaled replica of the input
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities v[m] b e h k
Noble Identities Proof
Upsampled z-transform
w[m] a d g j
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities v[m] b e h k
Noble Identities Proof
Upsampled z-transform
w[m] a d g j
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
The combination of delays and downsamplers can be regarded as a
commutator that distributes values in sequence to u, w and v .
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities v[m] b e h k
Noble Identities Proof
Upsampled z-transform
w[m] a d g j
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
The combination of delays and downsamplers can be regarded as a
commutator that distributes values in sequence to u, w and v .
1 2
Fractional delays, z 3 and z 3 are needed to synchronize the streams.
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities v[m] b e h k
Noble Identities Proof
Upsampled z-transform
w[m] a d g j
Downsampled z-transform
Downsampled Spectrum
Power Spectral Density +
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
The combination of delays and downsamplers can be regarded as a
commutator that distributes values in sequence to u, w and v .
1 2
Fractional delays, z 3 and z 3 are needed to synchronize the streams.
The output commutator takes values from the streams in sequence.
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities v[m] b e h k
Noble Identities Proof
Upsampled z-transform
w[m] a d g j
Downsampled z-transform v[m + 13 ] e h k l
d g j m
Downsampled Spectrum
Power Spectral Density + w[m + 23 ]
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
The combination of delays and downsamplers can be regarded as a
commutator that distributes values in sequence to u, w and v .
1 2
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.
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities v[m] b e h k
Noble Identities Proof
Upsampled z-transform
w[m] a d g j
Downsampled z-transform v[m + 13 ] e h k l
d g j m
Downsampled Spectrum
Power Spectral Density + w[m + 23 ]
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
The combination of delays and downsamplers can be regarded as a
commutator that distributes values in sequence to u, w and v .
1 2
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.
defghijklmn
11: Multirate Systems
Multirate Systems x[n]
Building blocks
Resampling Cascades
u[m]
f i l
Noble Identities v[m] b e h k
Noble Identities Proof
Upsampled z-transform
w[m] a d g j
Downsampled z-transform v[m + 13 ] e h k l
d g j m
Downsampled Spectrum
Power Spectral Density + w[m + 23 ]
Perfect Reconstruction
Commutators
y[n] ab
defghijkl
Summary
MATLAB routines
The combination of delays and downsamplers can be regarded as a
commutator that distributes values in sequence to u, w and v .
1 2
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.
Equivalences
Noble Identities: H(z) H(z K )
Interchange P : 1 and 1 : Q iff P and Q coprime
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
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.