11.14 Conversion of Continuous-Time to Discrete

Digital Filters
745
FIGURE 11.12 Linear phase FIR filter of odd order.
1/z2
z5
z2
1/z1
z4
z1
z3
z2
z5
1/z2
FIGURE 11.13 Sets of zeros of linear phase FIR filter.
As shown in the figure, a zero on the unit circle has its conjugate as its inverse. The system
function H(z) can thus be factored into first, second and fourth order components.
11.14
Conversion of Continuous-Time to Discrete-Time Filter
To derive a digital filter from a corresponding continuous-time analog filter either of two
approaches are commonly used, namely, the impulse invariance approach, and the bilinear
transform approach.
11.15
Impulse Invariance Approach
Important Note: After the first printing of this book the author discovered that the approach to impulse invariance, as found in the present literature and as is presently evaluated
by MATLABr , has an inherent error. In a paper [16], which was submitted for publication
after the first printing of this book, a correction is proposed which produces a superior dig-
746
Signals, Systems, Transforms and Digital Signal Processing with MATLABr
ital filter. It is shown that the correction results in a considerable reduction of the aliasing
error that is produced by the common present day approach. The correction is based on
the caution that should be applied when sampling discontinuous signals, as was remarked
in Sec. 7.1 and as revealed by the Mittag-Leffler expansion. In the following the impulse
invariance approach is presented first as it is given in the present day literature and as
it has been the norm for several decades. The correct superior approach is summarized
subsequently in Sec. 11.16.
Let Hc (s) be the transfer function of the continuous-time filter. Our objective is to evaluate a transfer function H(z) of the digital filter that is the discrete-time domain counterpart.
The approach of impulse invariance consists of sampling the impulse response hc (t) of
the continuous-time filter. The result is taken to be the impulse response (the unit-sample
response) h [n] of the digital filter. With h [n] evaluated the system function H(z) can be
deduced. An infinite impulse response IIR or an FIR filter can therefore be constructed. We
have
hc (t) = L−1 [Hc (s)] .
(11.32)
The impulse response of the digital filter is given by
h [n] = T hc (nT )
(11.33)
Multiplication by T is arbitrary, applied for scaling. The system function is given by
H (z) = Z [h [n]] .
(11.34)
Using partial fractions, assuming simple poles we can write
Hc (s) =
M
X
Ak
s − sk
(11.35)
Ak esk t u (t)
(11.36)
Ak esk nT u [n]
(11.37)
T Ak
.
1 − esk T z −1
(11.38)
k=1
hc (t) =
M
X
k=1
h [n] = T
M
X
k=1
H (z) =
M
X
k=1
Such sampling leads to the frequency domain relation, as found in Chapter 7,
∞
∞
X
1 X
Ω − 2πn
Ω − 2πn
H ejΩ = T
Hc j
=
Hc j
.
T n=−∞
T
T
n=−∞
(11.39)
We note that aliasing would occur if the filter bandwidth exceeds half the sampling frequency
fs = 1/T . In the absence of aliasing, on the other hand, we have
H e
jΩ
Ω
= Hc j
, |Ω| < π.
T
(11.40)
Digital Filters
11.16
747
Impulse Invariance Approach Corrected
As stated above, in a paper [16], which was submitted for publication after the first printing
of this book, a correction is proposed which produces a superior digital filter. The paper
shows a common error committed in the literature when signals containing discontinuities
are sampled. As seen earlier in Chapter 7 Sec. 7.1, sampling and evaluating the spectra
of causal signals require special attention. By following the same approach given there in
sampling causal signals we note that a slight correction to the impulse invariance as applied
in the literature is in order. In fact, as noted in Sec. 7.1, for the Mittag-Leffler expansion to
be satisfied we should modify the above to read
"M
#
X
sk nT
h [n] = T
Ak e
u [n] − 0.5Ak δ[n]
(11.41)
k=1
H (z) =
M
X
k=1
Only then can we write
H e
jΩ
M
T Ak
T X 1 + esk T z −1
−
0.5T
A
=
Ak .
k
1 − esk T z −1
2
1 − esk T z −1
(11.42)
k=1
∞
∞
X
1 X
Ω − 2πn
Ω − 2πn
Hc j
Hc j
=T
=
.
T n=−∞
T
T
n=−∞
(11.43)
As shown in [16], the common literature approach produces aliasing errors that are several
hundred percent greater than the proposed modified approach. In the following example we
apply first the common literature approach followed by the approach proposed in [16].
Example 11.2 Let
Hc (s) =
s + c0
s2 + b 1 s + b 0
and let p and p∗ be the poles of Hc (s) and let p = −α + jβ. We have
Hc (s) =
s + c0
A
A∗
=
+
∗
(s − p) (s − p )
s − p s − p∗
with A = (p + c0 )/(p − p∗ ), wherefrom
∗
hc (t) = (Aept + A∗ ep t )u(t) = 2 |A| e−αt cos(βt + arg[A])u(t)
∗
h [n] = T AepnT + A∗ ep nT u[n] = 2T |A| e−αnT cos(βnT + arg[A])u[n]
A
A∗
+
.
H (z) = T
1 − epT z −1
1 − ep∗ T z −1
Writing a = epT = e(−α+jβ)T we obtain
H (z) =
T [2Ar − 2 |A| |a| cos(arg[A] − arg[a])z −1 ]
1 − 2ar z −1 + |a|2 z −2
where Ar = ℜ [A], and ar = ℜ [a] = e−αT cos βT , |a| = e−αT , arg[a] = βT
H (z) =
2 |A| T cos (arg[A]) − 2 |A| T e−αT cos(arg[A] − βT )z −1
.
1 − 2e−αT cos βT z −1 + e−2αT z −2
(11.44)
748
Signals, Systems, Transforms and Digital Signal Processing with MATLABr
Following the approach given by Equations (11.41) and (11.42) above we obtain
∗
T A(1 + epT z −1 ) A∗ (1 + ep T z −1 )
H (z) =
+
.
2
1 − epT z −1
1 − ep∗ T z −1
With A = |A|ejφ we obtain
H (z) = T |A|
cos φ − 2e−αT sin βT sin φz −1 − e−2αT cos φz −2
1 − 2e−αT cos βT z −1 + e−2αT z −2
(11.45)
(11.46)
We note that if the transfer function of the lowpass normalized (prototype) filter is Hc (s)
and if the required cut-off (pass-band edge) frequency is ωc we can denormalize the filter
by writing
Hc,denorm (s) = Hc (s)|s−→s/ωc .
(11.47)
The impulse response is then
hc,denorm (t) = L−1 [Hc,denorm (s)] = L−1 [Hc (s/ωc )] .
(11.48)
The digital filter impulse response is then
h [n] = T hc,denorm (nT )
(11.49)
Assuming that the prototype filter transfer function is given by Equation (11.35), we have
Hc,denorm (s) =
M
X
i=1
M
X Ai ωc
Ai
=
s/ωc − si
s − ω c si
i=1
hc,denorm (t) =
M
X
Ai ωc eωc si t u [t]
(11.50)
(11.51)
i=1
In the present day impulse invariance approach we write
h [n] = T
M
X
Ai ωc eωc si nT u [n]
(11.52)
i=1
H (z) =
M
X
i=1
Ai Ωc
.
1 − eΩc si z −1
(11.53)
In the approach given in Equations (11.41) and (11.42) we obtain
H (z) =
M
Ωc X 1 + eΩc si z −1
Ai
.
2 i=1 1 − eΩc si z −1
(11.54)
We can alternatively implement the impulse invariance approach by normalizing the prototype lowpass filter directly to Ωc . we write
Hc,denorm (s) = Hc (s)|s−→s/Ωc =
M
X
i=1
hc,denorm (t) =
M
X
M
X Ai Ωc
Ai
=
s/Ωc − si
s − Ωc s i
i=1
Ai Ωc eΩc si t u (t) .
(11.55)
(11.56)
i=1
H (z) =
as obtained above.
M
Ωc X 1 + eΩc si z −1
Ai
.
2 i=1 1 − eΩc si z −1
(11.57)