Vous êtes sur la page 1sur 11

Multirate Digital Signal Processing: Part I

Dr. Deepa Kundur


University of Toronto
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 1 / 42
Chapter 11: Multirate Digital Signal Processing
Discrete-Time Signals and Systems
Reference:
Sections 11.1-11.3 of
John G. Proakis and Dimitris G. Manolakis, Digital Signal Processing:
Principles, Algorithms, and Applications, 4th edition, 2007.
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 2 / 42
Chapter 11: Multirate Digital Signal Processing
Multirate DSP
sampling rate conversion: process of converting a given
discrete-time signal at a given rate to a dierent rate
multirate digital signal processing systems: systems that employ
multiple sampling rates
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 3 / 42
Chapter 11: Multirate Digital Signal Processing
Sampling vs. Sampling Rate Conversion
Sampling:
conversion from cts-time to dst-time by taking samples at
discrete time instants
E.g., uniform sampling: x(n) = x
a
(nT) where T is the sampling
period
Sampling rate conversion approaches:
convert original samples to analog domain and then resample to
generate new samples
lter original samples with a discrete-time linear time-varying
system to generate new samples
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 4 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Sampling Rate Conversion
0
n
original/bandlimited
interpolated signal
x(n)
y(n)
x(t)
1
x(n): original samples at sampling rate F
x
y(n): new samples at sampling rate F
y
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 5 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Ideal Sampling Rate Conversion
x(n): original samples at sampling rate F
x
=
1
Tx
y(n): new samples at sampling rate F
y
=
1
Ty
0
n
original/bandlimited
interpolated signal x(n)
y(n)
x(t)
1
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 6 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Parameter Relationships
SAMPLING RATE
CONVERSION
Parameter/Variable x(n) x(nT
x
) y(m) y(mT
y
)
Rate F
x
F
y
Period T
x
T
y
Dst-time Frequency
x

y
Cts-time Frequency F F
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 7 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Bridging the Parameter Relationships
related to the ratio:
Ty
Tx
F
y
=
T
x
T
y
F
x

x
= 2f
x
=
2F
F
y

y
= 2f
y
=
2F
F
y

x
=
F
y
F
x

y
=
T
x
T
y

y
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 8 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Implementation of Sampling Rate Conversion
We relate the original samples x(nT
x
) to the new samples y(mT
y
) by
assuming we convert the signal to analog and resample. Using the
interpolation formula
y(t) =

n=
x(nT
x
)g(t nT
x
)
where
g(t) =
sin(t/T
x
)
t/T
x
F
G(F) =
_
T
x
[F[ F
x
< 2
0 otherwise
Note: y(t) = x(t) if x(t) is sampled above Nyquist.
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 9 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Implementation of Sampling Rate Conversion
y(t) =

n=
x(nT
x
)g(t nT
x
)
y(mT
y
)
. .
desired samples
=

n=
x(nT
x
)
. .
original samples
g(mT
y
nT
x
)
. .
samples of g(t)
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 10 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Implementation of Sampling Rate Conversion
y(t) =

n=
x(nT
x
)g(t nT
x
)
y(mT
y
) =

n=
x(nT
x
)g(mT
y
nT
x
)
=

n=
x(nT
x
)g
_
T
x
_
mT
y
T
x
n
__
mT
y
T
x
= k
m
+
m
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 11 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Implementation of Sampling Rate Conversion
mT
y
T
x
= k
m
..
integer
+
m
..
remainder
k
m
=
_
mT
y
T
x
_

m
=
mT
y
T
x

_
mT
y
T
x
_
[0, 1)
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 12 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Implementation of Sampling Rate Conversion
y(mT
y
) =

n=
x(nT
x
)g
_
T
x
_
mT
y
T
x
n
__
=

n=
x(nT
x
)g (T
x
(k
m
+
m
n))
let k = k
m
n
=

k=
x((k
m
k)T
x
)g (T
x
(k +
m
))
=

k=
g((k +
m
)T
x
)x((k
m
k)T
x
)
. .
weighted linear combination of orig samples
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 13 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Implementation of Sampling Rate Conversion
y(mT
y
) =

k=
g((k +
m
)T
x
)x((k
m
k)T
x
)

m
: determines the set of weights
k
m
: species the set of input samples
represents a discrete-time linear time-varying system

every output sample m requires use of a dierent impulse


response/ceocient set:
g
m
(nT
x
) = g((n +
m
)T
x
)

m
=
mT
y
T
x

_
mT
y
T
x
_
[0, 1)
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 14 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Implementation of Sampling Rate Conversion
y(mT
y
) =

k=
g((k +
m
)T
x
)x((k
m
k)T
x
)
=

k=
g((k +
m
)T
x
)x((k
m
k)T
x
)
g
m
(nT
x
) may have to be retrieved or computed
in general, there are as many weights/coecients required as
input samples output values to compute
in general, no simplication is possible making computation of
y(mT
y
) from x(nT
x
) impractical
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 15 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Linear Periodically Time-Varying Implementation
signicant simplication possible for
Ty
Tx
=
Fx
Fy
=
D
I
where D, I Z
+
and GCD(D, I ) = 1

m
=
mT
y
T
x

_
mT
y
T
x
_
=
mD
I

_
mD
I
_
=
1
I
_
mD
_
mD
I
_
I
_
=
1
I
(mD) mod I
=
1
I
(mD)
I
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 16 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Linear Periodically Time-Varying Implementation
Note:
(mD)
I
0, 1, 2, . . . , I 1

m
=
1
I
(mD)
I
0, 1/I , 2/I , . . . , (I 1)/I
g
m
(nT
x
) = g((n +
m
)T
x
) consists only of I distinct sets of
coecients!
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 17 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Linear Periodically Time-Varying Implementation
Furthermore, for r Z:

m+rI
=
1
I
((m + rI )D)
I
=
1
I
(mD + rlD)
I
=
1
I
(mD)
I
=
m
g
m+r I
(nT
x
) = g
m
(nT
x
), r Z
g
m
(nT
x
) = g
m+rI
(nT
x
) represents a discrete-time periodically
time-varying system!
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 18 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Linear Periodically Time-Varying Implementation
SAMPLING RATE
CONVERSION
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 19 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Decimation/Downsampling
0
n
original/bandlimited
interpolated signal
1
T
y
= DT
x
=
T
y
T
x
= D, D Z
+
k
m
=
_
mT
y
T
x
_
= mD| = mD mD Z

m
=
mT
y
T
x

_
mT
y
T
x
_
= mD mD| = mD mD = 0
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 20 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
0
n
original/bandlimited
interpolated signal
1
y(mT
y
) =

n=
g((n +
m
)T
x
)x((k
m
n)T
x
)
=

n=
g((n + 0)T
x
)x((mD n)T
x
)
=

n=
g(nT
x
)x((mD n)T
x
)
. .
dst-time convolution
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 21 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
0
n
original/bandlimited
interpolated signal
1
y(mT
y
) =

n=
g(nT
x
)x((mD n)T
x
)
=

n=
sin(n)
n
x((mD n)T
x
)
=

n=
(n)x((mD n)T
x
) = x(mDT
x
)
See
Figure 11.1.3 of text
.
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 22 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Interpolation/Upsampling
0
n
original/bandlimited
interpolated signal
1
T
x
= IT
y
=
T
y
T
x
=
1
I
, I Z
+
k
m
=
_
mT
y
T
x
_
=
_
m
I
_

m
=
mT
y
T
x

_
mT
y
T
x
_
=
m
I

_
m
I
_
0, 1/I , 2/I , . . . , (I 1)/I
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 23 / 42
Chapter 11: Multirate Digital Signal Processing 11.1 Introduction
Interpolation/Upsampling
y(mT
y
) =

n=
x(nT
x
)g(mT
y
nT
x
)
=

n=
x(nT
x
)g(m
T
x
I
nT
x
)
=

n=
x(nT
x
)
sin(
m
I
n)

m
I
n
=

n=
x(nT
x
)
sin(

I
(m nI ))

I
(m nI )
. .
sinc centered at n = m/I
See
Figure 11.1.4 of text
.
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 24 / 42
Chapter 11: Multirate Digital Signal Processing 11.2 Decimation by a Factor D
Downsampling with Anti-Alaising Filter
Upsampler LTI Filter LTI Filter Downsampler
Interpolator Decimator
LTI Filter Downsampler
Decimator
Downsampling alone may cause aliasing, therefore, it is desirable
to introduce an anti-aliasing lter H
d
(
x
)
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 25 / 42
Chapter 11: Multirate Digital Signal Processing 11.2 Decimation by a Factor D
Upsampler LTI Filter LTI Filter Downsampler
Interpolator Decimator
LTI Filter Downsampler
Decimator
v(n) =

k=
h(k)x(n k)
y(m) = v(mD) =

k=
h(k)x(mD k)
. .
linear time-varying system
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 26 / 42
Chapter 11: Multirate Digital Signal Processing 11.2 Decimation by a Factor D
Downsampling: Frequency Domain Perspective
Goal: determine relationship between input-output spectra
Create an intermediate signal v(n) at rate F
x
but with the equivalent
information as y(m).
v(n) =
_
v(n) n = 0, D, 2D, . . .
0 otherwise
= v(n) p(n) where p(n) =

k=
(n kD)
Note: y(m) = v(mD) 1 = v(mD) p(mD) = v(mD)
y(m) v(n) (equiv info)
See
Figure 11.2.2 of text
.
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 27 / 42
Chapter 11: Multirate Digital Signal Processing 11.2 Decimation by a Factor D
Aside: Impulse Train p(n)
p(n) =

l =
(n lD) (periodic with period D)
c
k
=
1
D
D1

n=0
p(n)e
j 2kn/D
=
D1

n=0

l =
(n lD)
. .
zero for l = 0
e
j 2kn/D
=
1
D
D1

n=0
(n)e
j 2kn/D
=
1
D
p(n) =
D1

k=0
c
k
e
j 2km/D
=
1
D
D1

k=0
e
j 2km/D
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 28 / 42
Chapter 11: Multirate Digital Signal Processing 11.2 Decimation by a Factor D
Downsampling: Frequency Domain Perspective
Y(z) =

m=
y(m)z
m
=

m=
v(mD)z
m
= + v(D)z
1
+ v(0)z
0
+ v(D)z
1
+
=

=
v(m

)z
m

/D
since v(m) = 0 for m , 0, D, 2D, . . .
=

=
v(m)p(m)z
m/D
=

m=
v(m)
1
D
D1

k=0
e
j 2km/D
z
m

/D
=
1
D
D1

k=0

m=
v(m)(e
j 2k/D
z
1/D
)
m
. .
V(e
j 2k/D
z
1/D
)=Hd (e
j 2k/D
z
1/D
)X(e
j 2k/D
)
=
1
D
D1

k=0
H
d
(e
j 2k/D
z
1/D
)X(e
j 2k/D
z
1/D
)
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 29 / 42
Chapter 11: Multirate Digital Signal Processing 11.2 Decimation by a Factor D
Upsampler LTI Filter LTI Filter Downsampler
Interpolator Decimator
LTI Filter Downsampler
Decimator
In the preceding analysis, we employed:
v(n)
Z
V(z)
h
d
(n)
Z
H
d
(z)
x(n)
Z
X(z)
V(z) =

m=
v(m)z
m
V(z) = H
d
(z) X(z)
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 30 / 42
Chapter 11: Multirate Digital Signal Processing 11.2 Decimation by a Factor D
Let z = e
j y
:
Y(z) =
1
D
D1

k=0
H
d
(e
j 2k/D
z
1/D
)X(e
j 2k/D
z
1/D
)
Y(e
j y
) =
1
D
D1

k=0
H
d
(e
j 2k/D
e
j y 1/D
)X(e
j 2k/D
e
j y 1/D
)
=
1
D
D1

k=0
H
d
(e
j (y 2k)/D
)X(e
j (y 2k)/D
)
Y(
y
) =
1
D
D1

k=0
H
d
_

y
2k
D
_
X
_

y
2k
D
_
Upsampler LTI Filter LTI Filter Downsampler
Interpolator Decimator
LTI Filter Downsampler
Decimator
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 31 / 42
Chapter 11: Multirate Digital Signal Processing 11.2 Decimation by a Factor D
Y(
y
) =
1
D
D1

k=0
H
d
_

y
2k
D
_
X
_

y
2k
D
_
For
y
,

D

y 2k
D


D
for k = 0

3
D

y 2k
D

D
for k = 1
.
.
.
.
.
.
2 +

D

y 2k
D
2 +
3
D
for k = D 1
Note: For
y
,
H
d
_

y
2k
D
_
=
_
1 for k = 0
0 for k = 1, 2, . . . , D 1
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 32 / 42
Chapter 11: Multirate Digital Signal Processing 11.2 Decimation by a Factor D
Therefore, for
y
,
Y(
y
) =
1
D
D1

k=0
H
d
_

y
2k
D
_
X
_

y
2k
D
_
=
1
D
H
d
_

y
D
_
. .
=1
X
_

y
D
_
+
1
D
D1

k=1
H
d
_

y
2k
D
_
. .
=0
X
_

y
2k
D
_
Y(
y
) =
1
D
X
_
y
D
_
Note:
y
=
Ty
Tx

x
= D
x
.

D

x


D
of X(
x
) is stretched into
y
for Y(
y
).
See
Figure 11.2.3 of text
.
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 33 / 42
Chapter 11: Multirate Digital Signal Processing 11.3 Interpolation by a Factor I
Interpolation by a Factor I
Upsampler
LTI Filter LTI Filter LTI Filter Downsampler
Interpolator Decimator
Interpolator
LTI Filter
Interpolation only increases the visible resolution of the signal.
No information gain is achieved. At best H
u
(
y
) maintains the
same information in y(n) as exists in x(n).
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 34 / 42
Chapter 11: Multirate Digital Signal Processing 11.3 Interpolation by a Factor I
Goal: determine relationship between input-output spectra
Consider an intermediate signal v(n) at rate F
y
but with the equivalent
information as x(m).
v(m) =
_
x(m/I ) m = 0, I , 2I , . . .
0 otherwise
V(z) =

m=
v(m)z
m
= + v(I )z
I
+ v(0)z
0
+ v(I )z
I
+
=

m=
x(m)z
mI
=

m=
x(m)(z
I
)
m
= X(z
I
)
V(e
j y
) = X(e
j y I
) = V(
y
) = X(
y
I )
Upsampler
LTI Filter LTI Filter LTI Filter Downsampler
Interpolator Decimator
Interpolator
LTI Filter
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 35 / 42
Chapter 11: Multirate Digital Signal Processing 11.3 Interpolation by a Factor I
V(
y
) = X(
y
I )
See
Figure 11.3.1 of text
.
H
u
(
y
) =
_
I 0 [
y
[ /I
0 otherwise
Y(
y
) = H
u
(
y
)V(
y
) =
_
IX(
y
I ) 0 [
y
[ /I
0 otherwise
Y(
y
) =
_
I X(
y
I ) 0 [
y
[ /I
0 otherwise
Note:
y
=
Ty
Tx
=
x
I
.

x
is compressed into /I
y
/I
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 36 / 42
Chapter 11: Multirate Digital Signal Processing 11.3 Interpolation by a Factor I
Upsampler
LTI Filter LTI Filter LTI Filter Downsampler
Interpolator Decimator
Interpolator
LTI Filter
y(m) =

k=
h
u
(m k)v(k)
v(m) =
_
x(m/I ) m = 0, I , 2I , . . .
0 otherwise
v(k) = 0 for (k)
I
,= 0
y(m) =

k=
h
u
(m kI ) v(kI )
. .
=x(k)
=

k=
h
u
(m kI )x(k)
. .
linear time-varying system

Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 37 / 42
Chapter 11: Multirate Digital Signal Processing 11.3 Interpolation by a Factor I
Return
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 38 / 42
Chapter 11: Multirate Digital Signal Processing 11.3 Interpolation by a Factor I
Return
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 39 / 42
Chapter 11: Multirate Digital Signal Processing 11.3 Interpolation by a Factor I
Return
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 40 / 42
Chapter 11: Multirate Digital Signal Processing 11.3 Interpolation by a Factor I
Return
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 41 / 42
Chapter 11: Multirate Digital Signal Processing 11.3 Interpolation by a Factor I
Return
Dr. Deepa Kundur (University of Toronto) Multirate Digital Signal Processing: Part I 42 / 42

Vous aimerez peut-être aussi