Digital Signal Processing by John G. Pro Part13
Digital Signal Processing by John G. Pro Part13
11
Multirate Digital Signal
Processing
In many practical applications of digital signal processing, one is faced with the
problem of changing the sampling rate of a signal, either increasing it or decreasing
it by some amount. For example, in telecommunication systems that transmit and
receive different types of signals (e.g., teletype, facsimile, speech, video, etc.), there
is a requirement to process the various signals at different rates commensurate with
the corresponding bandwidths of the signals. The process of converting a signal from
a given rate to a different rate is called sampling rate conversion. In turn, systems
that employ multiple sampling rates in the processing of digital signals are called
multirate digital signal processing systems.
Sampling rate conversion of a digital signal can be accomplished in one of two
general methods. One method is to pass the digital signal through a DIA converter,
filter it if necessary, and then to resample the resulting analog signal at the desired
rate (i.e., to pass the analog signal through an AID converter). The second method
is to perform the sampling rate conversion entirely in the digital domain.
One apparent advantage of the first method is that the new sampling rate can be
arbitrarily selected and need not have any special relationship to the old sampling
rate. A major disadvantage, however, is the signal distortion, introduced by the D/A
converter in the signal reconstruction, and by the quantization effects in the AID
conversion. Sampling rate conversion performed in the digital domain avoids this
major disadvantage.
In this chapter we describe sampling rate conversion and multirate signal pro-
cessing in the digital domain. First we describe sampling rate conversion by a rational
factor and present several methods for implementing the rate converter, including
single-stage and multistage implementations. Then, we describe a method for sam-
pling rate conversion by an arbitrary factor and discuss its implementation. We
750
11.1 Introduction 751
11.1 Introduction
The process of sampling rate conversion can be developed and understood using the
idea of "resampling after reconstruction." In this theoretical approach, a discrete-
time signal is ideally reconstructed and the resulting continuous-time signal is resam-
pled at a different sampling rate. This idea leads to a mathematical formulation that
enables the realization of the entire process by means of digital signal processing.
Let x(t) be a continuous-time signal that is sampled at a rate Fx = I/Tx to
generate a discrete-time signal x (n Tx). From the samples x (n Tx) we can generate a
continuous-time signal using the interpolation formula
00
If the bandwidth of x(t) is less than Fx/2 and the interpolation function is given by
(11.1.4)
752 Chapter 11 Multirate Digital Signal Processing
The term mTy/Tx can be decomposed into an integer part km and a fractional part
t!.m, 0 ~ t!.m < 1, as
(11.1.5)
where
(11.1.6)
and
t!.m = mTy _lmTyJ (11.1.7)
Tx Tx
The symbol LaJ denotes the largest integer contained in a. The quantity t!.m specifies
the position of the current sample within the sample period Tx. Substituting (11.1.5)
into (11.1.4) we obtain
00
00
(11.1.9)
= L g(kTx + t!.mTx)x«km - k)Tx)
k=-oo
Equation (11.1.9) provides the fundamental equation for the discrete-time imple-
mentation of sampling rate conversion. This process is illustrated in Figure 11.1.1.
We note that (a) given Tx and Ty the input and output sampling times are fixed,
(b) the function g(t) is shifted for each m such that the value g(t!.m Tx) is positioned
at t = mTy , and (c) the required values of g(t) are determined at the input sampling
times. For each value of m, the fractional interval t!.m determines the impulse re-
sponse coefficients whereas the index km specifies the corresponding input samples
g(AmTx)
Input sampling
times (km-I)Tx kmTx \ ; (km+I)Tx (km+2)Tx
,,
,,
,,
Output sampling (m-I) Ty : m:Ty (m+ I) Ty
times
- :,AmTx i-
, Fractional interval
Figure 11.1.1 Illustration of timing relations for sampling rate conversion.
11.1 Introduction 753
Figure 11.1.2
x(n7;) y(m'Ty)
Discrete-time linear g(nTx + tlmTx)
time-varying system for gm(n) y(m)
x(n)
sampling rate conversion.
needed to compute the sample y(m Ty). Since for any given value of m the index km is
an integer number, y(m Ty) is the convolution between the input sequence x (n Tx) and
an impulse response g «n + ~m) Tx). The difference between (11.1.8) and (11.1.9)
is that the first shifts a "changing" reconstruction function whereas the second shifts
the "fixed" input sequence.
The sampling rate conversion process defined by (11.1.9) is a discrete-time linear
and time-varying system, because it requires a different impulse response
(11.1.10)
for each output sample y(mTy). Therefore, a new set of coefficients should be com-
puted or retrieved from storage for the computation of every output sample (see
Figure 11.1.2). This procedure may be inefficient when the function g(t) is compli-
cated and the number of required values is large. This dependence on m prohibits the
use of recursive structures because the required past output values must be computed
using an impulse response for the present value of ~m.
A significant simplification results when the ratio Ty/Tx is constrained to be a
rational number, that is,
Ty Fx D
(11.1.11)
Tx Fy 1
where D and 1 are relatively prime integers. To this end, we express the offset ~m as
where (k)] denotes the value of k modulo I. From (11.1.12) it is clear that ~m can
take on only 1 unique values 0, 1//, ... , (J - 1)//, so that there are only 1 distinct
impulse responses possible. Since gm(nTx) can take on 1 distinct sets of values, it is
periodic in m; that is,
(11.1.13)
Thus the system gm (n Tx) is a linear and periodically time-varying discrete-time sys-
tem. Such systems have been widely studied for a wide range of applications (Meyers
and Burrus, 1975). This is a great simplification compared to the continuously time-
varying discrete-time system in (11.1.10).
To illustrate these concepts we consider two important special cases. We start
with the process of reducing the sampling rate by an integer factor D, which is known
as decimation or downsampling. If we set Ty = DTx in (11.1.3), we have
00
We note that the input signal and the impulse response are sampled with a period
Tx. However, the impulse response is shifted at increments of Ty = DTx because we
need to compute only one out of every D samples. Since I = 1, we have flm = 0
and therefore there is only one impulse response g(nTx), for all m. This process is
illustrated in Figure 11.1.3 for D = 2.
We consider now the process of increasing the sampling rate by an integer factor
I , which is called upsampling or interpolation. If we set Ty = Tx / I in (11.1.3), we
have
00
We note that both x(t) and g(t) are sampled with a period Tx; however, the impulse
response is shifted at increments of Ty = Tx / I for the computation of each output
sample. This is required to "fill-in" an additional number of (I - 1) samples within
each period Tx. This is illustrated in Figure 11.1.4(a )-(b) for I = 2. Each "frac-
tional shifting" requires that we resample g(t), resulting in a new impulse response
gm(nTx) = g(nTx+mTx/ I), for m = 0,1, ... , I-lin agreement with (11.1.14). Care-
ful inspection of Figure 11.1.4(a )-(b) shows that if we determine an impulse response
sequence g(nTy) and create a new sequence v(nTy) by inserting (1-1) zero samples
between successive samples of x(nTx), we can compute y(mTy) as the convolution
of the sequences g(nTy) and x(nTy). This idea is illustrated in Figure 11.1.4(c) for
1=2.
In the next few sections we discuss in more detail the properties, design, and
structures for the implementation of sampling rate conversion entirely in the discrete-
time domain. For convenience, we usually drop the sampling periods Tx and Ty from
the argument of discrete-time signals. However, occasionally, it will be beneficial to
the reader to reintroduce and think in terms of continuous-time quantities and units.
x(t)
(a)
(m - 1) Ty (m + 1) Ty
mTy
mTy (m + 2)Ty
Figure 11.1.4 Illustration of timing relations for sampling rate increase
by an integer factor I = 2. The approach in (a) requires one impulse
response for the even-numbered and one for the odd-numbered output
samples. The approach in (c) requires only one impulse response, ob-
tained by interleaving the impulse responses in (a).
= { ~:
levi:::: n/ D (11.2.1)
HD(ev) otherwise
Thus the filter eliminates the spectrum of X (ev) in the range n / D < ev < n. Of
course, the implication is that only the frequency components of x(n) in the range
levi :::: n / D are of interest in further processing of the signal.
756 Chapter 11 Multirate Digital Signal Processing
00
y(m) = v(mD)
00
(11.2.3)
= Lh(k)x(mD - k)
k=O
Although the filtering operation on x(n) is linear and time invariant, the down-
sampling operation in combination with the filtering results in a time-variant system.
This is easily verified. Given the fact that x(n) produces y(m), we note that x(n - no)
does not imply y(n -no) unless no is a multiple of D. Consequently, the overall linear
operation (linear filtering followed by downsampling) on x(n) is not time invariant.
The frequency-domain characteristics of the output sequence y(m) can be ob-
tained by relating the spectrum of y(m) to the spectrum of the input sequence x(n).
First, it is convenient to define a sequence v(n) as
Clearly, v(n) can be viewed as a sequence obtained by multiplying v(n) with a periodic
train of impulses p(n), with period D, as illustrated in Fig. 11.2.2. The discrete Fourier
series representation of p(n) is
1 D-l
p(n) = D L ej2lrkn/D (11.2.5)
k=O
Hence
v(n) = v(n)p(n) (11.2.6)
and
y(m) = v(mD) = v(mD)p(mD) = v(mD) (11.2.7)
11.2 Decimation by a Factor D 757
yen)
.1 .. 1.. 1.. 1..1.. 1.. 1o.. 13.. 16 .. 1.. 1.. 1.. 1.n
Ii(n) =v(n)p(n)
Figure 11.2.2
I I I
· ·····1··1··.·· ··0··3·····1··1·····
I 6 I
·n
Steps required to facilitate
the mathematical yen) =V(nD) =venD)
description of
downsampling by a factor
D, using a sinusoidal
II, ,II III 3 II, ,II
sequence for illustration.
Y(z) = L y(m)z-m
m=-oo
00
= L v(mD)z-m (11.2.8)
m=-OO
00
Y(z) = L v(m)z-m/D
m=-oo
where the last step follows from the fact that v(m) = 0, except at mUltiples of D. By
making use of the relations in (11.2.5) and (11.2.6) in (11.2.8), we obtain
Y(z) =
00
m~oo v(m)
[1D
D-l. ]
~ eJ21rmk/D z-m/D
1 D-l
L L
00
= D v(m)(e-i21rk/Dzl/D)-m
k=O m=-oo
(11.2.9)
1 D-l
= D L HD(e-i21rk/Dzl/D)X(e-i21rk/Dzl/D)
k=O
where the last step follows from the fact that V(z) = HD(Z)X(Z).
758 Chapter 11 Multirate Digital Signal Processing
By evaluating Y (z) in the unit circle, we obtain the spectrum of the output signal
y(m). Since the rate of y(m) is Fy = l/Ty, the frequency variable, which we denote
as w y , is in radians and is relative to the sampling rate F y ,
2rrF
Wy = - - = 2rr FTy (11.2.10)
Fy
Fx
Fy = - (11.2.11)
D
2rrF
Wx = - - = 2rr FTx (11.2.12)
Fx
are related by
(11.2.13)
Thus, as expected, the frequency range 0 ~ Iwx I ~ rr / D is stretched into the corre-
sponding frequency range 0 ~ Iwy I ~ rr by the downsampling process.
We conclude that the spectrum Y(Wy) , which is obtained by evaluating (11.2.9)
on the unit circle, can be expressed as
With a properly designed filter HD(W) , the aliasing is eliminated and, consequently,
all but the first term in (11.2.14) vanish. Hence
(11.2.15)
for 0 ~ IWyl ~ rr. The spectra for the sequences x(n), v(n), and y(m) are illustrated
in Fig. 11.2.3.
EXAMPLE 11.2.1
Design a decimator that downsamples an input signal x(n) by a factor D = 2. Use the Remez
algorithm to determine the coefficients of the FIR filter that has a O.l-dB ripple in the passband
and is down by at least 30 dB in the stopband.
Solution. A filter length M = 30 achieves the design specifications given above. The
frequency response is illustrated in Fig. 11.2.4. Note that the cutoff frequency is We =](/2.
11.2 Decimation by a Factor D 759
-7T
-7T
o
-lr lr
D
o
Figure 11.2.3
Spectra of signals in the
decimation of x(n) by a -lr
factor D. o
10
0
-10
-20
~ -30
S -40
.~
0 -SO
-60
-70
-80
-90
-100
0 .1 .2 .3 .4 .s I
Relative frequency
V(z) = L v(m)z-m
m=-OO
00
(11.3.2)
= L x(m)z-ml
m=-oo
O::::;lwyl::::;rr/1
(11.3.6)
otherwise
11.3 Interpolation by a Factor I 761
I'H'(W,)I
I
Figure 11.3.1
-7r 11:
--
£)1 I
o 7r
I
7r Wy
The scale factor C is selected so that the output y(m) = x(m/ I) for m = 0, ±I,
+21, .... For mathematical convenience, we select the point m = o. Thus
1 17r Y(wy)dwy
y(O) = -2
7r -7r
(11.3.7)
=
C
-2
111:1/ X (Wyl)dwy
7r -1fI/
y(O)
C 1 111:
= -2- X (wx)dw x
1 7r -11: (11.3.8)
10
0
-10
-20
-30
~.,
" . -40
-SO
" -60
-70
-80
-90
-100 .s I
0 .1 .2 .4
Relative frequency
EXAMPLE 11.3.1
Design a interpolator that increases the input sampling rate by a factor of l = 5. Use the
Remez algorithm to determine the coefficients of the FIR filter that has a O.l-dB ripple in the
passband and is down by at least 30 dB in the stopband.
Solution. A filter length M = 30 achieves the design specifications given above. The
frequency response of the FIR filter is illustrated in Fig. 11.3.2. Note that the cutoff frequency
is We = rr/5.
,, Interpolator
-----------------------
Rate = 1Fx I
Rate = -Fx = Fy
D
must incorporate the filtering operations for both interpolation and decimation, and
hence it should ideally possess the frequency response characteristic
00
=L h(l - kl)x(k)
k=-oo
Finally, the output of the sampling rate converter is the sequence {y(m)}, which is
Rate = Fx tI .\.D
I
L.._ _ _ _--' Rate = - Fx= F v
D -
Rate = 1Fx = Fv
Figure 11.4.2 Method for sampling rate conversion by a factor 1/ D.
764 Chapter 11 Multirate Digital Signal Processing
y(m) = w(mD)
00
(11.4.4)
= L h(mD - k/)x(k)
k=-oo
where the notation Lr J denotes the largest integer contained in r. With this change
in variable, (11.4.4) becomes
(11.4.6)
We note that
mD -l mID JI = mD, modulo I
= (mD)[
where h(k) is the impulse response of the time-invariant lowpass filter operating at
the sampling rate I Fx. We further observe that for any integer k,
(11.4.11)
where Wy = Dwv • Since the linear filter prevents aliasing as implied by (11.4.10), the
spectrum of the output sequence given by (11.4.11) reduces to
EXAMPLE 11.4.1
Design a sample rate converter that increases the sampling rate by a factor of 2.5. Use the
Remez algorithm to determine the coefficients of the FIR filter that has a O.l-dB ripple in
the passband and is down by at least 30 dB in the stopband. Specify the sets of time-varying
coefficients g(n, m) used in the realization of the sampling rate converter.
Solution. The FIR filter that meets the specifications of this problem is exactly the same as
the filter designed in Example 11.3.1. Its bandwidth is rr/5.
The coefficients of the FIR filter are given by (l1.4.S) as
g(n, m) = h(nI + (mD)])
=h(nI+mD-LmIDjI)
where
00
x(n) y(n)
Relation (11.5.1) is called the M-component polyphase decomposition and Pi (z) the
polyphase components of H (z). Each subsequence
Y(z) = H(z)X(z)
Equation (11.5.4) leads to the polyphase structure of Figure 11.5.1. Similarly, (11.5.5)
yields the polyphase structure shown in Figure 11.5.2. This is known as transpose
polyphase structure because it is similar to the transpose FIR filter realization. The
obtained polyphase structures are valid for any filter, FIR or IIR, and any finite value
of M and are sufficient for our needs. Additional structures and details can be found
in Vaidyanathan (1993).
x(n) y(n)
To prove the first identity (see Figure 11.5.3), we recall that the input/output
description of a downsampler is
1 D-l
y(n) = x(nD) ~ Y(z) = D L X(ZI/DWb) (11.5.6)
;=0
where WD = e- j27r/ D. The output of the system in Figure 11.5.3(a) can be written as
1 D-l 1 D-l
Y(z) = D L VI (ZI/DWb) = D L H(zWbD)X(Zl/DWb) (11.5.7)
;=0 ;=0
x(n) -I tD ,,(m;1
(a)
H(z)
•
y(m)
Figure 11.5.3
Tho equivalent
downsampling systems (first
noble identity).
x(n) -I H(ZD)
,,(nt 1 t D
(b)
•
y(m)
11.5 Implementation of Sampling Rate Conversion 769
x(n) -I H(z)
1 "lnt 1
tI •
y(m)
(a)
Figure 11.5.4
Two equivalent upsampling
systems (second noble
x(n) -I tI
'im~
(b)
1
H(ZI)
•
y(m)
identity).
A similar identity can be shown to hold for upsampling. To start, we recall that
the input/output description of an upsampler is
(11.5.10)
because VI (z) = X (Zl). The output of the system in Figure 11.5.4(b) is given by
(11.5.11)
which is equal to (11.5.10). This shows that the two systems in Figure 11.5.4 are
identical.
In conclusion, we have shown that it is possible to interchange the operation of
linear filtering and downsampling or upsampling if we properly modify the system
function of the filter.
This system can be implemented by cascading either the "integrator" 1/ (1- C 1) with
the comb filter (1 - Z-M) or vice versa. This leads to the name cascaded integrator
comb (CIC) filter structure. The CIC structure does not require any multiplications
or storage for the filter coefficients.
To obtain an efficient decimation structure, we start with an integrator-comb
CIC filter followed by the downsampler and then we apply the first noble identity,
as shown in Figure 11.5.5. For the interpolation case, we use an upsampler followed
770 Chapter 11 Multirate Digital Signal Processing
1-z-1
1-z-D lD ~
x(n) -I 1 -I 1 -I y(m)
(a)
1-z-1
lD 1-z-1 ~
x(n) -I 1 ·1 1 -I y(m)
(b)
Figure 11.5.5 Using the first noble identity to obtain an efficient CIC
filter structure for decimation.
by a comb-integrator CIC filter and then we use the second noble identity, as shown
in Figure 11.5.6. To improve the lowpass frequency response required for sampling
rate conversion, we can cascade K CIC filters. In this case, we order all integra-
tors on one side of the filter and the comb filters on the other side, and then we
apply the noble identities as in the single-stage case. The integrator 1/(1 - z-l) is
an unstable system. Therefore, its output may grow without limits, resulting in over-
flow when the integrator section comes first, as in the decimation structure shown in
Figure 11.5.5(b). However, this overflow can be tolerated if the entire filter is im-
plemented using two's-complement fixed-point arithmetic. If D 1= M or I 1= M, the
comb filter 1-z-1 in Figures 11.5.5(a) and 11.5.6(b) should be replaced by 1-z- MID
or 1 - Z-MII, respectively. A detailed treatment of CIC filters for decimation and
interpolation can be found in Hogenauer (1981). Finally, we note that CIC filters are
special cases of the frequency sampling structure discussed in Section 10.2.3.
If the CIC filter order is a power of 2, that is, M = 2K , we can decompose the
system function (11.5.12) as follows:
tl 1- Z-l
1- Z-I
~
x(n) -I 1 -I 1 ·1 y(m)
(a)
l-z-I tl 1-z-1
~
x(n) -I 1 -I 1 -I y(m)
(b)
Figure 11.5.6 Using the second noble identity to obtain an efficient CIC
filter structure for interpolation.
11.5 Implementation of Sampling Rate Conversion 771
Figure 11.5.7 Efficient filter structure for decimation by D =8 using comb filters.
-------+1.1
x(n)
H(,j
L.._ _
1 ·1 i 1
---I v(n)
D •
y(m) = v(mD)
(a)
x(n)
filtering the resulting sequence (see Figure 11.5.11). The major problem with this
structure is that the filter computations are performed at the high sampling rate I Fx .
The desired simplification is achieved by first replacing the filterin Figure 11.5.11 with
the transpose polyphase structure in Figure 11.5.2, as illustrated in Figure l1.5.12(a).
y(m)
~.I
x(n) .
jf y(m)
x(n) y(m)
(a)
x(n) y(m)
(b)
Figure 11.5.12 Implementation of an interpolation system using a polyphase
structure before (a) and after (b) the use of the second noble identity.
774 Chapter 11 Multirate Digital Signal Processing
Then, we use the second noble identity (see Figure 11.5.4) to obtain the structure in
Figure 11.5.12(b). Thus, all the filtering multiplications are performed at the low rate
Fx. It is interesting to note that the structure for an interpolator can be obtained
by transposing the structure of a decimator, and vice versa (Crochiere and Rabiner,
1981).
For every input sample, the polyphase filters produce I output samples yo(n),
Yl(n), ... , YI-l (n). Because the output Yi(n) of the ith filter is followed by (I - 1)
zeros and it is delayed by i th samples, the polyphase filters contribute nonzero sam-
ples at different time slots. In practice, we can implement the part of the structure
including the 1-to- I expanders, delays, and adders using the commutator model
shown in Figure 11.5.13. The commutator rotates counterclockwise starting at time
n = 0 at branch i = o. For each input sample x(n) the commutator reads the output
of every polyphase filter to obtain I samples of the output (interpolated) signal y(m).
The operation of this realization can be also understood by a careful inspection of
Figure 11.1.4. Each polyphase filter in Figure 11.5.13 operates on the same input
data using its unique set of coefficients. Therefore, we can obtain the same results
using a single filter by sequentially loading a different set of coefficients.
x(n)
Commutator rate =I Fx
y(m)
,
~.--------------------~.~:, --":T:""-
, ,
,;
,,
,,
,
"
:: :: JY
oI "Cf ,I
_o-Q---
.1 .0_0
"
• Input
.t(
V .0-0" : ,,: o Interpolated
,,, V Output
n 0 2 3 4 5
k 012345678910 15 20 25
m 0 2 3 4 5 6 7 8 9
o 2 3 3 4 4 5
3 4 2 o 3 4 2
Figure 11.5.14 Illustration of index computation for polyphase implementation of
sampling rate conversion for a rational ratio J / D = 5/3.
which contain L output samples or I input samples. The relative time positions
of the various sequences and a block of data are illustrated in Figure 11.5.14. The
input sequence x(nTx) is interpolated to produce a sequence v(kT), which is then
decimated to yield y(mTy). If we use an FIR filter with M = K I coefficients, the
polyphase subfilters are given by Pi(n) = h(nl + i), i = 0,1, ... , 1- 1, where n =
0,1, ... , K -1. To compute the output sample y(m), we use the polyphase subfilter
with index im which requires the input samples x(km), x(km -1), ... , x(km - K + 1).
From relation (11.1.9) and Figure 11.5.14, we can easily deduce that
For D = 3 and I = 5 the first data block includes D = 3 input samples and
1=5 output samples. To compute the samples (y(O), y(l), y(2), y(3), y(4)}, we use
the polyphase subfilter specified by the index im = to, 3,1,4, 2}, respectively. The
samples in the filter memory are updated only when k m changes value. This discussion
provides the basic ideas for the efficient software implementation of rational sampling
rate conversion using FIR filters.
,--------------------,
1 ___________________ I
1/ D = 130/63. Although, in theory, this rate alteration can be achieved exactly, the
implementation would require a bank of 130 polyphase filters and may be compu-
tationally inefficient. In this section we consider methods for performing sampling
rate conversion for either D » 1 and/or I » 1 in multiple stages.
First, let us consider interpolation by a factor I » 1 and let us assume that I
can be factored into a product of positive integers as
(11.6.1)
(11.6.2)
i = 1, 2, ... , J (11.6.3)
,--------------------,
:~'y(m)
... - : h/n) ,l-DJ :
, ,
: ___________________ : Fx
Stage 1 Stage 2 F" Stage) D
DID2
To ensure that no aliasing occurs in the overall decimation process, we can design
each filter stage to avoid aliasing within the frequency band of interest. To elaborate,
let us define the desired passband and the transition band in the overall decimator as
Passband: 0 ::: F ::: Fpc
(11.6.4)
Thansition band: Fpc ::: F ::: Fsc
where Fsc ::: Fx /2D. Then, aliasing in the band 0::: F ::: Fsc is avoided by selecting
the frequency bands of each filter stage as follows:
Passband: 0 ::: F ::: Fpc
Transition band: Fpc::: F ::: Fi - Fsc (11.6.5)
Fi-l
Stop band : Fi - Fsc ::: F ::: 2
For example, in the first filter stage we have Fl = Fx / Dl , and the filter is designed
to have the following frequency bands:
Passband: 0 ::: F ::: Fpc
Transition band: Fpc ::: F ::: Fl - F.~c
(11.6.6)
EXAMPLE 11.6.1
Consider an audio-band signal with a nominal bandwidth of 4 kHz that has been sampled
at a rate of 8 kHz. Suppose that we wish to isolate the frequency components below 80 Hz
with a filter that has a passband 0 ::::: F ::::: 75 and a transition band 75 ::::: F ::::: 80. Hence
Fpc = 75 Hz and Fse = 80. The signal in the band 0 ::::: F ::::: 80 may be decimated by the factor
D = Fx/2Fsc = 50. We also specify that the filter have a passband ripple .51 = 10-2 and a
stopband ripple of .52 = 10-4 •
The length of the linear phase FIR filter required to satisfy these specifications can be
estimated from one of the well-known formulas given in the Section 10.2.7. Recall that a
particularly simple formula for approximating the length M, attributed to Kaiser, is
Now a single FIR filter followed by a decimator would require (using the Kaiser formula)
a filter of (approximate) length
t!.f = 165
8000
81
811 = -,
2
Note that we have reduced the passband ripple 81 by a factor of 2, so that the total passband
ripple in the cascade of the two filters does not exceed 81' On the other hand, the stopband
ripple is maintained at 82 in both stages. Now the Kaiser formula yields an estimate of Ml as
5
t!.f=-
320
81
812 = 2'
Hence the estimate of the length M2 of the second filter is
M2 ~220
Therefore, the total length of the two FIR filters is approximately M! + M2 = 387. This
represents a reduction in the filter length by a factor of more than 13.
The reader is encouraged to repeat the computation above with Dl = 10 and D2 = 5.
11.7 Sampling Rate Conversion of Bandpass Signals 779
It is apparent from the computations in Example 11.6.1 that the reduction in the
filter length results from increasing the factor Ilf, which appears in the denominator
in (11.6.7) and (11.6.8). By decimating in mUltiple stages, we are able to increase the
width of the transition region through a reduction in the sampling rate.
In the case of a multistage interpolator, the sampling rate at the output of the
ith stage is
Fi-l = IjFi, i = J, J - 1, ... , 1
and the output rate is Fo = I FJ when the input sampling rate is FJ. The correspond-
ing frequency band specifications are
Passband: 0 ~ F ~ Fp
EXAMPLE 11.6.2
Let us reverse the filtering problem described in Example 11.6.1 by beginning with a signal
having a passband 0 ::::: F ::::: 75 and a transition band of 75 ::::: F ::::: 80. We wish to interpolate
by a factor of 50. By selecting It = 2 and lz = 25, we have basically a transposed form
of the decimation problem considered in Example 11.6.1. Thus we can simply transpose the
two-stage decimator to achieve the two-stage interpolator with II = 2, lz = 25, Ml ~ 220,
and M2 ~ 167.
H
BP
(w) = {1,0, (k -1)f>
otherWise
< Iwl < k!f5 (11.7.2)
would normally be used to eliminate signal frequency components outside the desired
frequency range. Then direct decimation of the filtered signal v(n) by the factor D
780 Chapter 11 Multirate Digital Signal Processing
results in a periodic replication of the bandpass spectrum V (w) every 21r / D radians
according to (11.2.14). The spectrum of the decimated signal y(m) is obtained by
scaling the frequency axis by Wy = Dwx • This process is illustrated in Figure 11.7.1
for bandpass signal with odd band positioning (k = 3) and in Figure 11.7.2 for signals
with even band positioning (k = 4). In the case where k is odd, there is an inversion
of the spectrum of the signal as in the continuous-time case (see Figure 6.4.1(b».
The inversion can be undone by the simple process y'(m) = (-I)my(m). Note that
violation of the bandwidth constraint given by (11.7.1) results in signal aliasing.
The process of bandpass interpolation by an integer factor I is the inverse of that
of bandpass decimation and can be accomplished in a similar manner. The process
of upsampling by inserting zeros between the samples of x(n) produces I images
in the band 0 :s w :s 1r. The desired image can be selected by bandpass filtering.
This can be seen by "reversing" the process shown in Figure 11.7.1. Note that the
process of interpolation also provides us with the opportunity to achieve frequency
translation of the spectrum.
Finally, sampling rate conversion for a bandpass signal by a rational factor 1/ D
can be accomplished by cascading a decimator with an interpolator in a manner that
depends on the choice of the parameters D and I. A bandpass filter preceding
the sampling converter is usually required to isolate the signal frequency band of
---;·~I
xCn) .
HBP(z) ~v(n)1 __
IvWlL. ~ D I '
-I y(m) = v(mD)
(a)
D=4
V(w)
oci;.i~D='
-3rr1D -2rrlD o 2rrlD 3rrlD
(c)
D=4
37rID
I _
47rID Wx
(a) /
D=4
Yew)
-27r -7r o
(b)
Figure 11.7.2 Spectral interpretation of bandpass decimation for integer-
band positioning (even integer positioning).
interest. Note that this approach provides us with a modulation-free method for
achieving frequency translation of a signal by selecting D = I.
K2
This requires the computation of a new impulse response pm (k) = g (kTx + 11m Tx) for
each output sample. However, if 11m is measured with finite accuracy, there is only a
finite set of impulse responses, which may be precomputed and loaded from memory
782 Chapter 11 Multirate Digital Signal Processing
as needed. We next discuss two practical approaches for sampling rate conversion
by an arbitrary factor.
The performance of these interpolation techniques has been discussed in Section 6.5
by analyzing their frequency-domain characteristics. Additional practical details can
be found in Ramstad (1984).
The polyphase filters Pi(n) are used to compute samples at 1 equidistant locations
t = n Tx + i (Tx / I), i = 0, 1, ... , 1 -1 covering each input sampling interval. Suppose
now that we wish to compute a sample at t = n Tx + fl Tx , where fl =1= i / 1 and
o : : ; fl ::::; 1. This requires a nonexisting polyphase subfilter, denoted as ptJ.(k),
which would "fall" between two existing subfilters, say, PiCk) and Pi+l(k). This set
of coefficients would create a row between the rows with indexes i and i + 1. We
note that each column of (11.8.4) consists of a segment of 1 consecutive samples of
11.8 Sampling Rate Conversion by an Arbitrary Factor 783
the impulse response h(n) and covers one sampling interval Tx. Suppose next that
we can approximate the coefficient set in each column by an L -degree polynomial
L
Bk(l1) = L>~k) 111, k = 0, 1, ... , K - 1 (11.8.5)
l=O
L K-l
= L 111 L bt)x«n - k)Tx)
l=O k=O
The most efficient computation of polynomial (11.8.7) can be done using the nested
Horner's rule, which is illustrated next for L = 4:
y(l1) = Co +Cll1 +c2112 +C3113 +c4114
(11.8.10)
= Co + I1(Cl + I1(C2 + I1(C3 + I1q)))
784 Chapter 11 Multirate Digital Signal Processing
Figure 11.8.1 Block diagram of the Farrow structure for sampling rate change by an
arbitrary factor.
This approach leads to the block diagram realization shown in Figure 11.8.1, which is
known as Farrow structure (Farrow 1988). Basically, the Farrow structure performs
interpolation between signal values by interpolating between filter coefficients. More
details can be found in Gardner (1993), Erup et al. (1993), Ramstad (1984), Har-
ris (1997), and Laakso et al. (1996).
x(n)
po(n)
PI(n)
pin)
Ou tput
.,---.:
Figure 11.9.2
Polyphase filter structure
for implementing the
system shown in Fig. 11.9.1. PI_I(n)
System x(n)
tl If'x Digital sample- IF, ,l.D x(m) System
A r---- Interpolation
-r-- and-hold
~
Decimator r---- B
Fx DFy Fy
Figure 11.9.3 Interfacing of two digital systems with different sampling rates.
In the special case where D = I and the two clock rates are comparable but not
identical, some samples at the output of the sample-and-hold may be repeated or
dropped at times. The amount of signal distortion resulting from this method can be
kept small if the interpolator/decimator factor is large. By using linear interpolation
in place of the digital sample-and-hold we can further reduce the distortion and thus
reduce the size of the interpolator factor.
EXAMPLE 11.9.1
Design a linear-phase FIR filter that satisfies the following specifications:
if ~ 5152
11.9 Applications of Multirate Signal Processing 787
Now, suppose that we employ a multirate implementation of the lowpass filter based on
a decimation and interpolation factor of D = I = 100. A single-stage implementation of the
decimator-interpolator requires an FIR filter of length
Thus we obtain a reduction in the overall filter length of 2(5480)/2(177 + 233) ~ 13.36. In
addition, we obtain further reduction in the multiplication rate by using polyphase filters. For
the first stage of decimation, the reduction in multiplication rate is 50, while for the second stage
the reduction in multiplication rate is 100. Further reductions can be obtained by increasing
the number of stages of decimation and interpolation.
To
channel
To
channel
Speech
signal--
Encoder ~ch~:nel
(a)
J
I 2 3
~~--~------~----------~--.
0 1r 1r 1r
4
w
8 4 2
(b)
o
Brickwall filters
(aJ
HO<I»)
o~--------~--~~~--------~~---------I»
Figure 11.9.5
Filter characteristics for QMF
subband coding. (bJ
B9
I---------------------------------y----'+ Output
Filter banks are generally categorized as two types, analysis filter banks and synthesis
filter banks. An analysis filter bank consists of a set of filters, with system functions
{Hk(Z)}, arranged in a parallel bank as illustrated in Fig. 11.1O.I(a). The frequency
response characteristics of this filter bank split the signal into a corresponding number
of subbands. On the other hand, a synthesis filter bank consists of a set of filters with
system functions {Gk(Z)}, arranged as shown in Fig. 11.1O.I(b), with corresponding
inputs {Yk(n)}. The outputs of the filters are summed to form the synthesized signal
{x(n)}.
Filter banks are often used for performing spectrum analysis and signal synthesis.
When a filter bank is employed in the computation of the discrete Fourier transform
(DFT) of a sequence {x(n)}, the filter bank is called a DFT filter bank. An analysis
filter bank consisting of N filters {Hk(Z), k = 0, 1, ... , N - I} is called a uniform
DFT filter bank if Hk(Z), k = 1, 2, ... , N - 1, are derived from a prototype filter
Ho(z)
HN_,(z)
Go(z)
x(n)
Ho(z) , where
Hk(W) = Ho ( W - 2rrk)
Ii" ' k = 1,2, ... , N - 1 (11.10.1)
k = 0, 1, ... , N - 1 (11.10.2)
where ho(n) is the impulse response of the prototype filter, which in general may be
either an FIR or an IIR filter. If Ho(z) denotes the transfer function of the prototype
filter, the transfer function of the kth filter is
(11.10.3)
k = 0, 1, ... , N - 1
(11.10.4)
m =0,1, .. .
n
I---~- X.(m)
x(n) - - - - I
Yo(m)
tD
tD go(n) v(n)
tD
2:n:k
Synthesis Wk=/i"
(b)
The corresponding synthesis filter for each element in the filter bank can be
viewed as shown in Fig. 11.1O.3(b), where the input signal sequences (Yk(m), k = 0,
1, ... , N - I} are upsampled by a factor of I = D, filtered to remove the im-
ages, and translated in frequency by multiplication by the complex exponentials
(exp(j2rrnk/N), k = 0, 1, ... , N - I}. The resulting frequency-translated signals
from the N filters are then summed. Thus we obtain the sequence
1 N-l [ ]
v(n) = N L e j2:n: nk /N LYk(m)go(n - mI)
k=O m
1 N-l ] (11.10.5)
= Lgo(n - mI) [ N LYk(m)ej2:n:nk/N
m k=O
m
11.10 Digital Filter Banks 793
where the factor 1/ N is a normalization factor, {Yn (m)} represent samples of the
inverse DFf sequence corresponding to (Yk(m)}, (go(n)} is the impulse response of
the interpolation filter, and I = D.
The relationship between the output (Xk(n)} of the analysis filter bank and the
input (Yk(m)} to the synthesis filter bank depends on the application. Usually, {Yk(m)}
is a modified version of {Xk(m)}, where the specific modification is determined by
the application.
An alternative realization of the analysis and synthesis filter banks is illustrated
in Fig. 11.10.4. The filters are realized as bandpass filters with impulse responses
k = 0, 1, ... , N - 1 (11.10.6)
e-jWQmD
e-j""mD
x(n)
e-jwN-lmD
Analysis
(a)
ejWQmD
Yo(m)
tD go(n)
Y.(m)
·0~ tD gl(n) v(n)
·1 ·1 ~ +
~
ejwN-lmD
YN_1(m)
tD gN_I(n)
Synthesis
(b)
The corresponding filter bank synthesizer can be realized as shown in Fig. 11.10.4-
(b), where the input sequences are first multiplied by the exponential factors [exp(j2n
kmD/N)], upsampled by the factor I = D, and the resulting sequences are filtered
by the bandpass interpolation filters with impulse responses
(11.10.8)
where (go(n)} is the impulse response of the prototype filter. The outputs of these
filters are then summed to yield
(11.10.9)
where I = D.
In the implementation of digital filter banks, computational efficiency can be
achieved by use of polyphase filters for decimation and interpolation. Of particular
interest is the case where the decimation factor D is selected to be equal to the
number N of frequency bands. When D = N, we say that the filter bank is critically
sampled.
k = 0, 1, ... , D - 1 (11.10.12)
where N = D. Note that the inner summation represents the convolution of {Pn (I)}
with {xn (I)}. The outer summation represents the N -point DFf of the filter outputs.
The filter structure corresponding to this computation is illustrated in Fig. 11.10.5.
Each sweep of the commutator results in N outputs, denoted as (r,,(m), n = 0,
1, ... , N -I} from the N polyphase filters. The N -point DFf of this sequence yields
the spectral samples (Xk(m)}. For large values of N, the FFf algorithm provides an
efficient means for computing the DFf.
11.10 Digital Filter Banks 795
xo(m)
( I p,;.m) • r()(m)
I
0
Xl(m)
•
I Pl(m) • Tl(m)
I
N-Point
DFf
xn(m)
0 • Pn(m) rll(m)
XN_l(m)
PN-l(m) TN_l(m)
Now suppose that the spectral samples (Xk(m)} are modified in some manner,
prescribed by the application, to produce (Yk (m) }. A filter bank synthesis filter based
on a polyphase filter structure can be realized in a similar manner. First, we define
the impulse response of the N (D = I = N) polyphase filters for the interpolation
filter as
k = 0, 1, ... , N - 1 (11.10.13)
and the corresponding set of output signals as
Note that this definition of (qk(n)} implies that the commutator for the interpolator
rotates counterclockwise.
By substituting (11.10.13) into (11.10.5), we can express the output vt(n) of the
I th polyphase filter as
I = 0, 1, ... , N - 1 (11.10.15)
The term in brackets is the N-point inverse Off of (Yk(m)} , which we denote as
{Yt (m)}. Hence
m=Q
Y1(m) YI(m) vl(m)
• ql(m)
v(n)
Inverse
DFI'
Yk(m) y/(m) v/(m)
q/(m)
11.10.2 Transmultiplexers
An application of digital filter banks is in the design and implementation of digital
transmultiplexers, which are devices for converting between time-division-multiplexed
(TOM) signals and frequency-division-multiplexed (FDM) signals.
In a transmultiplexer for TDM-to-FOM conversion, the input signal (x(n)} is
a time-division-multiplexed signal consisting of L signals, which are separated by a
commutator switch. Each of these L signals is then modulated on a different carrier
frequency to obtain an FOM signal for transmission. In a transmultiplexer for FDM-
to-TOM conversion, the composite signal is separated by filtering into the L signal
components which are then time-division multiplexed.
In telephony, single-sideband transmission is used with channels spaced at a nom-
inal 4-kHz bandwidth. Twelve channels are usually stacked in frequency to form a
basic group channel, with a bandwidth of 48 kHz. Larger-bandwidth FDM signals are
formed by frequency translation of multiple groups into adjacent frequency bands.
We shall confine our discussion to digital transmultiplexers for 12-channel FOM and
TOM signals.
Let us first consider FOM-to-TDM conversion. The analog FDM signal is passed
through an AID converter as shown in Fig. 11.1O.7(a). The digital signal is then
11.10 Digital Filter Banks 797
...... SSB
demodulator - Decimator
sl(n)
r---:---
r-- SSB
demodulator - Decimator
s2(n)
.....::.--.
TOM TOM
I---:---
Multiplexer sign aI
FDM AID
r--
signal converter
SSB sN(n)
"""- demodulator r--- Decimator r--
(a)
LPF .j.D
x(n)
h(n)
·1
-sin Will
LPF .j.D
h(n)
·1
(b)
TDM
signal
FOM signal for transmission. As in the case of FOM-to-TOM conversion, the inter-
polator and the modulator filter are combined and efficiently implemented by use of
a polyphase filter. The frequency translation can be accomplished by the Off. Con-
sequently, the TDM-to-FDM converter encompasses the basic principles introduced
previously in our discussion of DFf filter bank synthesis.
x(n)
If Xso(w) and Xsl (w) represent the two inputs to the synthesis section, the output is
simply
(11.11.2)
Now, suppose that we connect the analysis filter to the corresponding synthesis filter,
so that XaO(w) = Xso(w) and Xal(W) = X sl(W). Then, by substituting from (11.11.1)
into (11.11.2), we obtain
~ 1
X(w) = 2 [Ho(w)Go(w) + HI (w)G 1(w)] X(w)
(11.11.3)
1
+ 2 [Ho(w - rr)Go(w) + HI (w - rr)Gl (w)] X (w - rr)
The first term in (11.11.3) is the desired signal output from the QMF bank. The
second term represents the effect of aliasing, which we would like to eliminate.
In the z-transform domain (11.11.3) is expressed as
~ 1
X(z) = 2 [Ho(z)Go(z) + Hl(Z)Gl(Z)]X(z)
1 (11.11.4)
+ 2 [Ho(-z)Go(z) + Hl(-Z)Gl(Z)] X(-z)
= Q(z)X(z) + A(z)X(-z)
where, by definition,
1
Q(z) = 2 [Ho(z)Go(z) + HI (Z)Gl (z)]
(11.11.5)
1
A(z) = 2 [Ho(-z)Go(z) + Hl(-Z)Gl(Z)]
(11.11.6)
(11.11.7)
(11.11.8)
Thus, the second term in (11.11.3) vanishes and the filter bank is alias-free.
800 Chapter 11 Multirate Digital Signal Processing
IHo(w) I
o 17:
2
Figure 11.11.2 Mirror image characteristics of the analysis filters
Ho(w) and Hj(w).
To elaborate, let us assume that Ho(w) is a lowpass filter and Hl(W) is a mirror-
image highpass filter as shown in Fig. 11.11.2. Then we can express Ho(w) and
Hl(W) as
Ho(w) = H(w)
(11.11.9)
Hl(W) = H(w-11:)
where H(w) is the frequency response of a lowpass filter. In the time domain, the
corresponding relations are
ho(n) = h(n)
(11.11.10)
hl(n) = (-l)nh(n)
As a consequence, Ho(w) and Hl(W) have mirror-image symmetry about the fre-
quency w = 11:/2, as shown in Fig.11.11.2. To be consistent with the constraint in
(11.11.8), we select the lowpass filter Go(w) as
Go(w) = H(w) (11.11.11)
and the highpass filter Gl(W) as
Gl(W) = -H(w -11:) (11.11.12)
In the time domain, these relations become
go(n) = h(n)
(11.11.13)
gl(n) = (-l)nh(n)
In the z-transform domain, the relations for the elimination of aliasing are:
Ho(z) = H(z)
Hl(Z) = H(-z)
(11.11.14)
Go(z) = H(z)
G 1 (z) = -H(-z)
11.11 Two-Channel Quadrature Mirror Filter Bank 801
1
Q(z) = 2 [Ho(z)Go(z) + HI(Z)Gl(Z)] = Z-k (11.11.15)
By making use of the relations in (11.11.14), the condition for perfect reconstruc-
tion may be expressed as
(11.11.16)
or, equivalently,
(11.11.17)
Therefore, for perfect reconstruction, the frequency response H(w) of the lowpass
filter in the two-channel QMF bank must satisfy the magnitude condition
(11.11.18)
Thus, we obtain the polyphase realization of the QMF bank as shown in Figure
11.11.3(a). The corresponding computationally efficient polyphase realization is
shown in Figure 11.11.3(b).
802 Chapter 11 Multirate Digital Signal Processing
(a)
(b)
H2(W) = H;(w)e-.iW(N-l)
(11.11.22)
= IH(w)1 2e- jw (N-l)
and
H2(W - rr) = H;(w - rr)e-j(w-:rr)(N-l)
(11.11.23)
= (-1)N- 1 IH(w _ rr)1 2e- jw (N-l)
Therefore, the overall transfer function of the two-channel QMF which employs
linear-phase FIR illters is
(11.11.24)
Note that the overall filter has a delay of N -1 samples and a magnitude characteristic
(11.11.25)
We also note that when N is odd, M(rr/2) = 0, because IH(rr/2)1 = IH(3rr/2)1. This
is an undesirable property for a QMF design. On the other hand, when N is even,
which avoids the problem of a zero at It) = rr/2. For N even, the ideal two-channel
QMF should satisfy the condition
which follows from (11.11.25). Unfortunately, the only filter frequency response
function that satisfies (11.11.27) is the trivial function 1H (It)) 12 = cos2alt). Con-
sequently, any nontrivial linear-phase FIR filter H(lt)) introduces some amplitude
distortion.
The amount of amplitude distortion introduced by a nontrivial linear phase FIR
filter in the QMF can be minimized by optimizing the FIR illter coefficients. A
particularly effective method is to select the filter coefficients of H(lt)) such that
M(lt)) is made as flat as possible while simultaneously minimizing (or constraining)
the stopband energy of H (It)). This approach leads to the minimization of the integral
squared error
J = W 17r
Ws
IH(lt))1 2dlt) + (1 - w) r [M(lt)) -
Jo
1fdlt) (11.11.28)
where w is a weighting factor in the range 0 < w < 1. In performing the optimiza-
tion, the filter impulse response is constrained to be symmetric (linear phase). This
optimization is easily done numerically on a digital computer. This approach has
been used by Johnston (1980) and Jain and Crochiere (1984) to design two-channel
QMFs. Tables of optimum filter coefficients have been tabulated by Johnston (1980).
As an alternative to linear-phase FIR filters, we can design an IIR filter that satisfies
the all-pass constraint given by (11.11.18). For this purpose, elliptic filters provide
especially efficient designs. Since the QMF would introduce some phase distortion,
the signal at the output of the QMF can be passed through an all-pass phase equalizer
designed to minimize phase distortion.
O~---------------L~~-+--1---~~r---------
-8 2
Hence all the even-numbered samples are zero except at n = O. The zero-phase
requirement implies that b(n) = b( -n). The frequency response of such a filter is
K
B(w) = L b(n)e- jwn (11.11.30)
n=-K
where K is odd. Furthermore, B(w) satisfies the condition that B(w) + B(rr - w) is
equal to a constant for all frequencies. The typical frequency response characteristic
of a half-band filter is shown in Fig. 11.11.4. We note that the filter response is
symmetric with respect to rr /2, the band edges frequencies wp and Ws are symmetric
about w = rr /2, and the peak passband and stopband errors are equal. We also note
that the filter can be made causal by introducing a delay of K samples.
Now, suppose that we design an FIR half-band filter oflength 2N -1, where N is
even, with frequency response as shown in Fig. 11.11.5(a). From B(w) we construct
another half-band filter with frequency response
as shown in Fig. 11.11.5(b). Note that B+(w) is nonnegative and hence it has the
spectral factorization
(11.11.32)
or, equivalently,
(11.11.33)
where H(w) is the frequency response of an FIR filter of length N with real co-
efficients. Due to the symmetry of B+(w) with respect to w = rr/2, we also have
11.11 Two-Channel Quadrature Mirror Filter Bank 805
B(w)
amplitude
response of
G(z)
B+(w)
amplitude
response of
B+(z)
OL-----------~~~~L_ __~~__~__~w
wp ~ ws
2
(b)
Magnitude
responses of
analysis
filters
L---~----~~~~~----~----~ ____ ~w
tm
(c)
Figure 11.11.5 Frequency response characteristic of FIR half-band filters
B(w) and B+(w). (From Vaidyanathan (1987»
(11.11.34)
or, equivalently,
(11.11.35)
(11.11.36)
806 Chapter 11 Multirate Digital Signal Processing
Since H(z) satisfies (11.11.36) and since aliasing is eliminated when we have Go(z) =
HI (-z) and Gl(Z) = -Ho( -z), it follows that these conditions are satisfied by choos-
ing Hl(Z), Go(z), and Gl(Z) as
Ho(z) = H(z)
HI (z)= _Z-(N-l) Ho( -z-l)
Go(z) = Z-(N-l) HO(Z-I) (11.11.37)
Gl(Z) = Z-(N-l)Hl(Z-I) =
-Ho(-z)
Thus aliasing distortion is eliminated and, since X(w)/ X (w) is a constant, the QMF
performs perfect reconstruction so that x(n) = ax(n - N + 1). However, we note
that H(z) is not a linear-phase filter. The FIR filters Ho(z), Hl(Z), Go(z), and Gl(Z)
in the two-channel QMF bank are efficiently realized as polyphase filters as shown
previously.
Synthesis
QMF
Synthesis Output
QMF signal
i(n)
(a)
Figure 11.11.6 System for subband coding using two-channel QMF banks.
11.12 M-Channel QMF Bank 807
1 M-l
X~a)(z) = M L Hk (Zl/MWZ) X (zl/M WZ) , 0::: k::: M-1 (11.12.1)
m=O
M-l
X(z) =L XiS) (ZM) Gk(z) (11.12.2)
k=O
As in the case of the two-channel QMF bank, we set xi a ) (z) = X~,) (z). Then, if we
substitute (11.12.1) into (11.12.2), we obtain
M-l
X(z) = { ; GkCz)
[1 E
M
M-l
Hk (zWZ) X (zWZ)
]
=E
[1
M-l M-l
M { ; Gk(z)Hk
]
(zW~) X (zWZ)
(11.12.3)
x(~(n) x<;i(n)
,- Ho(z) r-- .j..M tM r-- Go(z)
x<a(n) x(;)(n)
r-- H1(z) r-- .j..M ~I • tM r-- G1(z)
- HM_1(z)
--- .j..M
x~':}I(n) xi;~I(n)
""'::':"""i tM r-- GM_1(Z)
1 M-l
Rm(z) = M L Gk(z)Hk(ZW:;), 0 ~ m ~ M-1 (11.12.4)
k=O
M-l
X(z) =L Rm(z)X(ZW~)
m=O
(11.12.5)
M-l
= Ro(z)X(z) +L Rm(z)X (zW:;)
m=l
We note the first term in (11.12.5) is the alias-free component of the QMF bank and
the second term is the aliasing component.
Rm (z) = 0, 1~ m ~ M - 1 (11.12.6)
With the elimination of the alias terms, the M -channel QMF bank becomes a linear
time-invariant system that satisfies the input-output relation
where
1 M-l
Ro(z) = M L Hk(Z)Gk(Z) (11.12.8)
k=O
Then, the condition for a perfect reconstruction M -channel QMF bank becomes
M-l
Hk(z) = L z-m Pkm(z), 0~k~M-1 (11.12.10)
m=O
11.12 M -Channel QMF Bank 809
We may express the equations for the M polyphase filter in matrix form as
H(z) = P(zM)a(z) (11.12.11)
where
H(z) = [Ho(z) HI(Z) ... HM_I(Z)]t
and
Poo(z) POI (z)
POM-I(Z)]
[ PlO(Z) Pn (z) PIM-I(Z)
P(z) = . (11.12.13)
(a) (b)
x(n)
(a) (b)
Figure 11.12.3 Polyphase structure of the synthesis section of an M-channel QMF
bank (a) before and (b) after applying the first noble identity.
Therefore, the synthesis section of the M -channel QMF bank is realized as shown
in Figure 11.11.3. By combining Figures 11.12.2(b) and 11.12.3(b), we obtain the
polyphase structure of the complete M -channel QMF bank shown in Figure 11.12.4.
From the structure of the M -channel QMF bank shown in Figure 11.12.4, we
observe that the perfect reconstruction condition can be restated as
where I is the M x M identity matrix. Hence, if the polyphase matrix P(z) is known,
then the polyphase synthesis matrix Q(z) is
(11.12.18)
x(n)
Figure 11.12.4
Polyphase cb
realization of the
M -channel QMF
bank
0-0--- x(n)
11.12 M -Channel QMF Bank 811
EXAMPLE 11.12.1
Suppose the polyphase matrix for a three-channel perfect reconstruction FIR QMF bank is
p(Z3) = [11 2]
2 3 1
1 2 1
Determine the analysis and the synthesis filters in the QMF bank.
HO(Z)]
[ HI (z) = [12 31 2]
1 [ Z-I
1 ]
H2(Z) 1 2 1 Z-2
Hence,
Hence,
Figure 11.12.5
Magnitude response for
analysis filters in an M = 3
QMF bank.
It can be shown (see Vaidyanathan et al. (1989» that any causal L th-degree FIR
paraunitary matrix P(z) can be expressed in a product form as
where U is a unitary matrix and {Vm (z)} are paraunitary matrices that have the form
(11.12.22)
where Um is an M -dimensional vector of unit norm. Then, the design of the synthesis
filters reduces to the optimization of the components of Um and Uj by minimizing an
objective function, which may be a generalization of the two-channel QMF objective
function given by (11.11.28). In particular, we may minimize the objective function
(11.12.23)
-10
Figure 11.12.6
Magnitude response of -20
optimized analysis filters
for an M = 3 FIR perfect 19-30
reconstruction QMF bank.
(From Multirate Systems -40
and Filter Banks, by -50
p.p. Vaidyanathan, ©1993
by Prentice Hall. Reprinted -60-+-----~------~----_.------._----~
with permission of the 0.0 0.1 0.2 0.3 0.4 0.5
publisher.) Normalized frequency (W/2rr)
Chapter 11 Problems 813
Problems
11.1 An analog signal Xa (t) is bandlimited to the range 900 ::s F ::s 1100 Hz. It is used as
an input to the system shown in Fig. Pll.l. In this system, H(w) is an ideallowpass
filter with cutoff frequency Fe = 125 Hz.
.po ~
I
Fx= - = 2500
cos(0.8rrn) Fy= T.1 =250
y
Tx
Figure Pll.1
814 Chapter 11 Multirate Digital Signal Processing
(a) Determine and sketch the spectra for the signals x(n), w(n), v(n), and y(n).
(b) Show that it is possible to obtain y(n) by sampling xa(t) with period T = 4
milliseconds.
11.2 Consider the signal x(n) = anu(n), lal < l.
(a) Determine the spectrum X(w).
(b) The signal x(n) is applied to a decimator that reduces the rate by a factor of 2.
Determine the output spectrum.
(c) Show that the spectrum in part (b) is simply the Fourier transform of x(2n).
11.3 The sequence x(n) is obtained by sampling an analog signal with period T. From
this signal a new signal is derived having the sampling period T /2 by use of a linear
interpolation method described by the equation
x(n/2), n even
y(n) = ~ [x (n;
{
1) +x (n; 1)l n odd
(a) Show that this linear interpolation scheme can be realized by basic digital signal
processing elements.
(b) Determine the spectrum of y(n) when the spectrum of x(n) is
where
h sin(2rrfen) fm < fe < fs - fm
r(n) = 2 ' Wm < We < Ws - Wm
rrn
(c) Show that the bandlimited interpolation in part (b) can be thought of as a two-
step process, first, increasing the sampling rate by a factor of D by inserting
(D -1) zero samples between successive samples of the decimated signal Xa (n) =
x(nD), and second, filtering the resulting signal using an ideallowpass filter with
cutoff frequency We.
Chapter 11 Problems 815
11.5 In this problem we illustrate the concepts of sampling and decimation for discrete-
time signals. To this end consider a signal x(n) with Fourier transform X(w) as in
Fig. PIl.S.
x(n) X(w)
···1111111111
o
-2 -1
I
I 2 ...
•
n -7t:
1
7t:
3
0 !!
3
I
7t:
III
W
Figure Pll.S
n = 0, ±2, ±4, .. .
Xs ( n ) -_ {x(n),
0, n = ±I, ±3, ±S, .. .
Compute and sketch the signal xs(n) and its Fourier transform X"s(w). Can we
reconstruct x(n) from xs(n)? How?
(b) Decimating x(n) by a factor of D = 2 produces the signal
Show that Xd(W) = Xs(w/2). Plot the signal xd(n) and its transform Xd(W). Do
we lose any information when we decimate the sampled signal Xs (n)?
11.6 Design a decimator that downsamples an input signal x(n) by a factor D = S. Use
the Remez algorithm to determine the coefficients of the FIR filter that has a O.I-dB
ripple in the passband (0 ~ W ~ 'Jr /S) and is down by at least 30 dB in the stopband.
Also determine the corresponding polyphase filter structure for implementing the
decimator.
11.7 Design an interpolator that increases the input sampling rate by a factor of 1= 2. Use
the Remez algorithm to determine the coefficients of the FIR filter that has a O.I-dB
ripple in the passband (0 ~ W ~ 'Jr /2) and is down by at least 30 dB in the stopband.
Also, determine the corresponding polyphase filter structure for implementing the
interpolator.
11.8 Design a sample rate converter that reduces the sampling rate by a factor ~. Use
the Remez algorithm to determine the coefficients of the FIR filter that has a O.I-dB
ripple in the passband and is down by at least 30 dB in the stopband. Specify the
sets of time-variant coefficients g(n, m) and the corresponding coefficients in the
polyphase filter realization of the sample rate converter.
816 Chapter 11 Multirate Digital Signal Processing
11.9 Consider the two different ways of cascading a decimator with an interpolator shown
in Fig. P11.9.
x(n) - - - - . I tl
·1 1 ·1
(a)
x(n)----l .J,D
·1 ·1
(b)
Figure Pll.9
(a) If D = I, show that the outputs of the two configurations are different. Hence,
in general, the two systems are not identical.
(b) Show that the two systems are identical if and only if D and I are relatively
prime.
11.10 Prove the equivalence of the two decimator and interpolator configurations shown
in Fig. P11.1O (noble identities) (see Vaidyanathan, 1990).
·1 1 ·1 1 ·1
(b)
Figure Pll.10
00
H(z) = L h(n)z-n
n=-oo
(b) Generalize the result in part (a) by showing that H(z) can be decomposed into
a D-component polyphase filter structure with transfer function
D-l
H(z) = L Z-k Hk(ZD)
k=O
Determine Hk (z).
(c) For the IIR filter with transfer function
1
H(z) = 1
-az -1
determine Ho(z) and HI (z) for the two-component decomposition.
11.ll A sequence x(n) is upsampled by I = 2, it passes through an LTI system Hl(Z),
and then it is downsampled by D = 2. Can we replace this process with a single
LTI system H2(Z)? If the answer is positive, determine the system function of this
system.
11.13 Plot the signals and their corresponding spectra for rational sampling rate conversion
by (a) 1/ D = 5/3 and (b) 1/ D = 3/5. Assume that the spectrum of the input signal
x(n) occupies the entire range -Jr .:s Wx .:s Jr.
11.14 We wish to design an efficient nonrecursive decimator for D = 8 using the factoriza-
tion
(a) Derive an efficient implementation using filters with system function Hk(Z) =
(1 + Z-1)5.
(b) Show that each stage of the obtained decimator can be implemented more effi-
ciently using a polyphase decomposition.
11.15 Let us consider an alternative polyphase decomposition by defining new polyphase
filters Qm (ZN) as
N-l
H(z) = L z-(N-l-m) Qm(ZN)
m=O
(b) Sketch the polyphase filter structure for H(z) based in the polyphase filters
Qm(ZN) and, thus, show that this structure is an alternative transpose form.
818 Chapter 11 Multirate Digital Signal Processing
11.16 Use the result in Problem 11.15 to determine the type II form of the I = 3 interpolator
in Figure 11.5.9.
11.17 Design a two-stage decimator for the following specifications:
D = 100
1=20
Input sampling rate: 10,000 Hz
Passband: 0 .::: F .::: 90
Transition band: 90 .::: F .::: 100
Ripple: 81 = 10-2 , 82 = 10-3
11.21 By using (11.10.15) derive the equations corresponding to the structure for the poly-
phase synthesis section shown in Fig. 11.10.6.
11.22 Show that the transpose of an L-stage interpolator for increasing the sampling rate by
an integer factor I is equivalent to an L-stage decimator that decreases the sampling
rate by a factor D = I.
11.23 Sketch the polyphase filter structure for achieving a time advance of (k/ /)Tx in a
sequence x(n).
11.24 Prove the following expressions for an interpolator of order I.
(a) The impulse response h(n) can be expressed as
/-1
h(n) = L Pk(n - k)
k=O
Chapter 11 Problems 819
where
Pk(n) = { Pk(n/ /), n = 0, ±I, ±2/, ...
0, otherwise
(b) H(z) may be expressed as
1-1
H(z) = I>-kpk(z)
k=O
1 00 1-1
(c) Pk(Z) = 7 L L h(n)e j27rI {n-k)/1 z-{n-k)/I
n=-oo 1=0
2 I)
Pt{w) = 71 1-1
L H
(
w - -T- e j {w-27rI)k/1
1=0
11.25 Consider the interpolation of a signal by a factor I. The interpolation filter with
transfer function H (z) is implemented by a polyphase filter structure based on an
alternative (type II) decomposition, namely
1-1
H(z) = L z - U- 1- m)Qm(ZI)
m=O
Determine and sketch the structure of the interpolator that employs the polyphase
filters Qm (z), °: :
m :::: 1 - 1.
11.26 In the polyphase filter structures for a uniform DFT filter bank described in Sec-
tion 11.10.1, the polyphase filters in the analysis section were defined by equation
(11.10.10). Instead of this definition, suppose we define the N -band polyphase filters
for the lowpass prototype filter, Ho(z), as
N-l
Ho(z) = L z-; p;(ZN)
;=0
where
00
where WN = e- j27r / N .
(a) Show that the filters Hk (z), 1 :::: k :::: N - 1, can be expressed as
820 Chapter 11 Multirate Digital Signal Processing
[ Z~~~~ ]. =NW
-I [ z!:~:~1)
.
]
HN~I (Z) Z-(N-l) PN-t (ZN)
1 1 1 1
WI W(N-l)
1 N
w2
N N
W2 W4 W 2(N-l)
W= 1 N N N
(c) Sketch the analysis section of the uniform DFT filter bank.
(d) Determine and sketch the synthesis section of the uniform DFT filter bank.
11.27 The prototype filter in a four-channel uniform DFf filter bank is characterized by
the transfer function
Ho(z) = 1 + Z-l + 3z- 2 + 4z- 4
(a) Determine the transfer functions of the filters HI(Z), H2(Z) and H3(Z) in the
analysis section.
(b) Determine the transfer functions of the filters in the synthesis section.
(c) Sketch the analysis and synthesis sections of the uniform DFf filter bank.
11.28 Consider the following FIR filter transfer function:
Ho(z) = 1 + Z-l
(b) Determine the analysis filter HI (z) and sketch the two-channel analysis section
that employs polyphase filters.
(c) Determine the synthesis filters Go(z) and Gt (z) and sketch the entire two-
channel QMF based on polyphase filters.
(d) Show that the QMF bank results in perfect reconstruction.
Chapter 11 Problems 821
11.30 The analysis filters in a three-channel QMF bank have the transfer functions
(a) Determine the polyphase matrix p(Z3) and express the analysis filters in the form
(11.12.11).
(b) Determine the synthesis filters Go(z), Gl (z), and G2 (z) that result in perfect
reconstruction.
(c) Sketch the three-channel QMF bank that employs polyphase filters in the anal-
ysis and synthesis sections.
11.31 Zoom-frequency analysis Consider the system in Fig. P11.31(a).
LPF ~D
LPF ~D
(a)
X(w)
+-7T o Wo wo+&JJ 7T w
(b)
Figure Pll.31
(a) Sketch the spectrum of the signal y(n) = YR(n) + jy/(n) if the input signal x(n)
has the spectrum shown in Fig. P11.31(b).
(b) Suppose that we are interested in the analysis of the frequencies in the band
10 .::: 1 .::: 10 + l:ll, where 10 = 1/6 and l:ll = 1/3. Determine the cutoff of
a lowpass filter and the decimation factor D required to retain the information
contained in this band of frequencies.
822 Chapter 11 Multirate Digital Signal Processing