Professional Documents
Culture Documents
Series Editors
MONCEF GABBOUJ THANOS STOURAITIS
Tampere University of Technology University of Patras
Finland Greece
Indexing: All books published in this series are submitted to Thomson Reuters Book
Citation Index (BkCI), CrossRef and to Google Scholar.
The “River Publishers Series in Signal, Image and Speech Processing” is a series
of comprehensive academic and professional books which focus on all aspects of
the theory and practice of signal processing. Books published in the series include
research monographs, edited volumes, handbooks and textbooks. The books provide
professionals, researchers, educators, and advanced students in the field with an
invaluable insight into the latest research and developments.
Topics covered in the series include, but are by no means restricted to the
following:
Takao Hinamoto
Hiroshima University
Japan
Wu-Sheng Lu
University of Victoria
Canada
Published, sold and distributed by:
River Publishers
Alsbjergvej 10
9260 Gistrup
Denmark
River Publishers
Lange Geer 44
2611 PW Delft
The Netherlands
Tel.: +45369953197
www.riverpublishers.com
Preface xvii
1 Introduction 1
1.1 Preview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Terminology for Signal Analysis and Typical Signals . . . . 1
1.2.1 Terminology for Signal Analysis . . . . . . . . . . . 1
1.2.2 Examples of Typical Signals . . . . . . . . . . . . . 3
1.3 Digital Signal Processing . . . . . . . . . . . . . . . . . . . 4
1.3.1 General Framework for Digital Signal Processing . . 4
1.3.2 Advantages of Digital Signal Processing . . . . . . . 5
1.3.3 Disadvantages of Digital Signal Processing . . . . . 5
1.4 Analysis of Analog Signals . . . . . . . . . . . . . . . . . . 6
1.4.1 The Fourier Series Expansion of Periodic Signals . . 6
1.4.2 The Fourier Transform . . . . . . . . . . . . . . . . 7
1.4.3 The Laplace Transform . . . . . . . . . . . . . . . . 8
1.5 Analysis of Discrete-Time Signals . . . . . . . . . . . . . . 10
1.5.1 Sampling an Analog Signal . . . . . . . . . . . . . . 10
1.5.2 The Discrete-Time Fourier Transform . . . . . . . . 11
1.5.3 The Discrete Fourier Transform (DFT) . . . . . . . 13
1.5.4 The z-Transform . . . . . . . . . . . . . . . . . . . 13
1.6 Sampling of Continuous-Time Sinusoidal Signals . . . . . . 14
1.7 Aliasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.8 Sampling Theorem . . . . . . . . . . . . . . . . . . . . . . 17
1.9 Recovery of an Analog Signal . . . . . . . . . . . . . . . . 20
1.10 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
References . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
v
vi Contents
4 State-Space Models 67
4.1 Preview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.2 Controllability and Observability . . . . . . . . . . . . . . . 67
4.3 Transfer Function . . . . . . . . . . . . . . . . . . . . . . . 70
4.3.1 Impulse Response . . . . . . . . . . . . . . . . . . 70
4.3.2 Faddeev’s Formula . . . . . . . . . . . . . . . . . . 71
4.3.3 Cayley-Hamilton’s Theorem . . . . . . . . . . . . . 73
4.4 Equivalent Systems . . . . . . . . . . . . . . . . . . . . . . 73
4.4.1 Equivalent Transformation . . . . . . . . . . . . . . 73
4.4.2 Canonical Forms . . . . . . . . . . . . . . . . . . . 74
4.4.3 Balanced, Input-Normal, and Output-Normal
State-Space Models . . . . . . . . . . . . . . . . . . 79
4.5 Kalman’s Canonical Structure Theorem . . . . . . . . . . . 81
4.6 Hankel Matrix and Realization . . . . . . . . . . . . . . . . 85
4.6.1 Minimal Realization . . . . . . . . . . . . . . . . . 85
4.6.2 Minimal Partial Realization . . . . . . . . . . . . . 87
4.6.3 Balanced Realization . . . . . . . . . . . . . . . . . 89
4.7 Discrete-Time Lossless Bounded-Real Lemma . . . . . . . 91
4.8 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
References . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Index 445
xvii
xviii Preface
Figure 1.1 Four types of signals: (a) Analog signal, (b) Sampled-data
signal, (c) Quantized boxcar signal, (d) 3-bit quantized
digital signal. . . . . . . . . . . . . . . . . . . . . . . . . 2
Figure 1.2 General framework for the digital processing of an analog
signal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Figure 1.3 Periodic sampling of an analog signal: (a) Sampler,
(b) Analog signal, (c) Sampled-data signal. . . . . . . . . 10
Figure 1.4 Relationship between the continuous-time and discrete-
time frequency variables in periodic sampling. . . . . . . 17
Figure 1.5 Illustration of aliasing. . . . . . . . . . . . . . . . . . . . 17
Figure 1.6 Aliasing of spectral components: (a) Spectrum of a band-
limited analog signal, (b) Spectrum of the discrete-time
signal, (c) (d) Spectrum of the discrete-time signal
with spectral overlap. . . . . . . . . . . . . . . . . . . . . 19
Figure 1.7 Ideal band-limited reconstruction by interpolation. . . . . 22
Figure 2.1 Several fundamental sequences. (a) Unit pulse. (b) Unit
step. (c) Unit ramp. (d) Exponential. (e) Sinusoidal. . . . . 25
Figure 2.2 Typical linear time-invariant systems with identical unit-
pulse responses. (a) Cascade forms. (b) Parallel forms. . . 36
Figure 2.3 Block-diagram symbols for digital filters. (a) Drawer point.
(b) Adder. (c) Constant multiplier. (d) Unit delay. . . . . . 37
Figure 2.4 Direct form II structure of IIR digital filters. . . . . . . . . 38
Figure 2.5 FIR digital filters. . . . . . . . . . . . . . . . . . . . . . . 38
Figure 2.6 Transposed direct form II structure of IIR digital filters. . . 39
Figure 2.7 Transposed form of FIR digital filters. . . . . . . . . . . . 39
Figure 2.8 Transformation of IIR digital filters. . . . . . . . . . . . . 40
Figure 2.9 Transformation of the transposed form of IIR digital
filters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Figure 2.10 Two multiplier lattice two-pair for all-pass digital
filter implementation. . . . . . . . . . . . . . . . . . . . . 46
Figure 2.11 Cascaded lattice realization of an nth-order all-pass digital
filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Figure 2.12 Single multiplier lattice two-pair. . . . . . . . . . . . . . . 47
Figure 2.13 Normalized lattice two-pair. . . . . . . . . . . . . . . . . 48
xix
xx List of Figures
Figure 12.4 Profiles of S(Pk ) and tr[Kc P−1 k ] during the first
267 iterations. . . . . . . . . . . . . . . . . . . . . . . . . 295
Figure 13.1 Profile of Iγ (P, ξ) during the first 8 iterations
with γ = 1. . . . . . . . . . . . . . . . . . . . . . . . . . 320
Figure 13.2 Profile of Jγ (T ) during the first 19 iterations
with γ = 1. . . . . . . . . . . . . . . . . . . . . . . . . . 322
Figure 14.1 A quantizer with N th-order error feedback. . . . . . . . . 328
Figure 14.2 A state-space model with high-order error feedback. . . . . 339
Figure 15.1 Block diagram of a state-space digital filter. . . . . . . . . 358
Figure 15.2 Block diagram of an actual state-space digital filter
with several noise sources. . . . . . . . . . . . . . . . . . 359
Figure 15.3 Block diagram of a state-space model for noise
propagation. . . . . . . . . . . . . . . . . . . . . . . . . . 359
Figure 15.4 Block diagram of an equivalent state-space digital
filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
Figure 15.5 Block diagram of an actual state-space digital
filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
Figure 15.6 State-space model with N th-order error feedback
and error feedforward. . . . . . . . . . . . . . . . . . . . 365
Figure 15.7 Profile of Je3 (D, T̂ ) during the first 64 iterations. . . . . . . 376
Figure 15.8 Profile of Je3 (D, T̂ ) during the first 36 iterations. . . . . . . 378
Figure 16.1 Implementation of δ −1 (z). . . . . . . . . . . . . . . . . . 383
Figure 16.2 Transposed direct-form II structure of a ρ operator-based
IIR digital filter. . . . . . . . . . . . . . . . . . . . . . . . 387
Figure 16.3 Implementation of ρ−1 i (z). . . . . . . . . . . . . . . . . . 387
Figure 16.4 Transposed direct-form II structure of a ρ operator-based
IIR digital filter. . . . . . . . . . . . . . . . . . . . . . . . 390
Figure 16.5 Implementation of ρ−1 i (z) in case Δi = 1. . . . . . . . . . 390
Figure 17.1 A state-space model. . . . . . . . . . . . . . . . . . . . . 413
Figure 17.2 Block-state realization using serial-in/parallel-out
and parallel-in/serial-out registers. . . . . . . . . . . . . . 415
Figure 17.3 Flow graph structure of a block-state realization for block
length of three. . . . . . . . . . . . . . . . . . . . . . . . 416
Figure 17.4 Profiles of Si (P)ave and tr[Kc P−1 ] during the first
84 iterations. . . . . . . . . . . . . . . . . . . . . . . . . 439
Figure 17.5 Profile of Jo (x) during the first 22 iterations. . . . . . . . . 440
Figure 17.6 Profile of Si (P)ave during the first 13 iterations. . . . . . 442
List of Tables
xxv
List of Abbreviations
1-D One-dimensional
2-D Two-dimensional
A/D Analog-to-digital
BFGS Broyden-Fletcher-Goldfarb-Shanno
BP Bandpass
BS Bandstop
CCF Complementary comb filter
CCP Convex-concave procedure
C-filter Composite filter
D/A Digital-to-analog
DFT Discrete Fourier transform
DSP Digital signal processor
ECG Electrocardiograph
EEG Electroencephalogram
EPLSS Equiripple passbands and least-squares stopbands
FIR Finite Impulse Response
FRM Frequency response masking
FWL Finite-word-length
HP Highpass
IDFT Inverse discrete Fourier transform
IFIR Interpolated FIR
IIR Infinite Impulse Response
KKT Karush-Kuhn-Tucker
LBR Lossless bounded real
(L, L) system L-input/L-output state-space model
LP Lowpass
M-D Multidimensional
P-M filter Parks-McClellan filter
P-wave Primary wave
QP Quadratic programming
RGB Red, green, and blue
SDP Semidefinite programming
S/H Sample-and-hold
SISO Single-input/single-output
SOCP Second-order cone programming
S-wave Secondary wave
VLSI Very large scale integrated
xxvii
1
Introduction
1.1 Preview
This is a book that is primarily concerned with basic concepts and methods
in digital filter design and realization. The recent advances in the theory
and practice of digital signal processing have made it possible to design
sophisticated high-order digital filters and to carry out the large amounts
of computations required for their design and realization. In addition, these
advances in design and realization capability can be achieved at low cost due
to the widespread availability of inexpensive, powerful digital computers and
related hardware. Briefly put, therefore, the focus of this book is the design
and realization of digital filters.
To begin with, we introduce basic terminology for signal analysis and
present an overview of digital signal processing, explaining its advantages and
disadvantages. We then examine the sampling of an analog signal and that of
a continuous-time sinusoidal signal in connection with aliasing. Finally, the
sampling theorem is presented and also the method to recover an analog signal
from its discrete-time samples is explained. It is shown that if the bandwidth
of an analog signal is finite, in principle the analog signal can be reconstructed
from the samples, provided that the sampling rate is sufficiently high to avoid
aliasing.
1
2 Introduction
fa (t)
fa (kT)
t 0 2T 4T 6T 8T kT
(a) (b)
fq (t)
f (kT)
t 0 2T 4T 6T 8T kT
(c) (d)
Figure 1.1 Four types of signals: (a) Analog signal, (b) Sampled-data signal, (c) Quantized
boxcar signal, (d) 3-bit quantized digital signal.
1.2 Terminology for Signal Analysis and Typical Signals 3
three 3-D signals representing the three primary colors, namely, red, green,
and blue (RGB). In this book, our focus will be on the processing of 1-D
signals.
the yearly average number of sunspots, daily stock prices, the value of total
monthly exports of a country, the yearly population of animal species in a
certain geographical area, the annual yields per acre of crops in a country, and
the monthly totals of international airline passengers over certain periods.
H. Images and Video Signals
An image is a 2-D signal whose intensity is a function of two spatial variables.
Typical examples are still images, photographs, radar and sonar images, and
medical X-rays. An image sequence such as that seen in a television, is a 3-D
signal whose image intensity at any point is a function of three variables, i.e.,
two spatial variables and time.
Figure 1.2 General framework for the digital processing of an analog signal.
1.3 Digital Signal Processing 5
where Ω0 = 2π/T0 with T0 the period of the signal is called the fundamental
frequency, and the expansion coefficients an and bn are given by
T0 /2
2
an = f (t) cos nΩ0 t dt for n = 0, 1, 2, · · ·
T0 −T0 /2
T0 /2
2
bn = f (t) sin nΩ0 t dt for n = 1, 2, 3, · · ·
T0 −T0 /2
where
1 1
cn = an − jbn , c−n = an + jbn
2 2
By substituting (1.2) into (1.1), we obtain
∞
f (t) = c0 + cn ejnΩ0 t + c−n e−jnΩ0 t
n=1
∞
(1.3)
= cn ejnΩ0 t
n=−∞
This expression is called the complex form of the Fourier series. From (1.1)
and (1.2), it follows that
T0 /2
1
cn = f (t)e−jnΩ0 t dt for n = 0, ±1, ±2, · · · (1.4)
T0 −T0 /2
1.4 Analysis of Analog Signals 7
The magnitude |cn | and phase angle ∠cn = − tan−1 (bn /an ) of cn are called
the magnitude spectrum and phase spectrum, respectively. In the sequel, we
shall use a two-way arrow to represent a Fourier series pair, for instance
f (t) ←→ {cn } (1.5)
and ∞
−1 1
f (t) = F [F (Ω)] = F (Ω)ejΩt dΩ (1.7)
2π −∞
Equations (1.6) and (1.7) are called the Fourier transform and inverse Fourier
transform, respectively. The magnitude and phase angle of F (Ω), namely,
−1 Im{F (Ω)}
|F (Ω)| and ∠F (Ω) = tan
Re{F (Ω)}
are called the magnitude spectrum and phase spectrum, respectively. In the
sequel, we shall use a two-way arrow to represent a Fourier transform pair,
for instance
f (t) ←→ F (Ω) (1.8)
We now consider the energy contained in a signal and then relate that energy
to the Fourier transform of the signal.
The total energy contained in a continuous-time signal f (t) is given by
∞
E= |f (t)|2 dt (1.9)
−∞
and ∞
1
f (t) = Fσ (Ω)e(σ+jΩ)t dΩ (1.12)
2π −∞
where the factor e−σt has been moved from the left side of (1.12) to the right.
By defining
s = σ + jΩ (1.13)
we obtain
ds
=j (1.14)
dΩ
provided that σ is constant. Substituting (1.13) and (1.14) into (1.11) and
(1.12) yields ∞
F (s) = L[f (t)] = f (t)e−st dt (1.15)
0
and σ+j∞
−1 1
f (t) = L [F (s)] = F (s)est ds (1.16)
2πj σ−j∞
respectively. Function F (s) is called the Laplace transform of f (t) and,
conversely, f (t) is called the inverse Laplace transform of F (s). In the sequel,
we shall use a two-way arrow to represent a Laplace transform pair, for instance
f (t) ←→ F (s) (1.17)
Final-value theorem:
The final-value theorem can be stated as follows [7]: If f (t) and df (t)/dt are
both Laplace transformable, if F (s) is the Laplace transform of f (t), and if
limt→∞ f (t) exists, then
1.4 Analysis of Analog Signals 9
Initial-value theorem:
The initial-value theorem can be stated as follows [7]: If f (t) and df (t)/dt
are both Laplace transformable and if lims→∞ sF (s) exists, then
e−at f (t) F (s + a)
t
f1 (τ )f2 (t − τ )dτ F1 (s)F2 (s)
0
10 Introduction
where the subscript a of fa (t) in (1.21) is used to indicate an analog signal. The
modulating function ΔT (t) is a train of uniformly spaced impulse functions
given by
fa(t) fa(kT)
Analog Discrete-time
Signal Signal
T
Sampler
(a)
fa (t)
fa (kT)
f a (t)
f a (kT)
t
0 T 3T 5T 7T 9T kT
(b) (c)
Figure 1.3 Periodic sampling of an analog signal: (a) Sampler, (b)Analog signal, (c) Sampled-
data signal.
1.5 Analysis of Discrete-Time Signals 11
∞
ΔT (t) = δa (t − kT ) (1.22)
k=−∞
where δa (t) is the Dirac delta function or simply the impulse function
defined by
∞
∞, t=0
δa (t) = δa (t)dt = 1
0, t = 0 −∞
∞
fa (t)δa (t − t0 )dt = fa (t0 )
−∞
∞
∞
= fa (t)δa (t − kT ) e−jΩt dt
k=−∞ −∞
We now derive Parseval’s theorem for discrete-time signals. The total energy
contained in a discrete-time signal f (k) is given by
∞
E= |f (k)|2 (1.29)
k=−∞
where |F (ω)|2 is the power spectrum of the signal f (k). This is the discrete-
time version of Parseval’s theorem.
1.5 Analysis of Discrete-Time Signals 13
We now examine Parseval’s theorem for an N -point sequence f (n) and its
N -point DFT F (k). The total energy contained in an N -point sequence f (n)
is given by
N
−1
E= |f (n)|2 (1.34)
n=0
From (1.31) and (1.32), it follows that
N
−1 N −1
1
|f (n)|2 = |F (k)|2 (1.35)
N
n=0 k=0
The reader is referred to Sections 2.3, 2.4 and 2.5 for further details.
where
F
ω = 2πf = 2πF T = ΩT, f = FT =
Fs
Here, f and Fs are called the normalized frequency and the sampling
frequency, respectively.
Assuming that
we have
xi (k) = A cos(kωi + θ) = A cos{k(ω0 + 2πi) + θ}
(1.43)
= A cos(kω0 + θ) = x0 (k)
Fs Fs
− ≤F ≤ (1.44)
2 2
Since the highest frequency in a discrete-time signal is ω = π, i.e. f = 12
with a sampling rate Fs = 1/T , the corresponding highest value of the
continuous-time frequency is given by
Fs 1
Fmax = = (1.45)
2 2T
16 Introduction
1.7 Aliasing
We now examine what happens to the frequencies {F } with F > Fmax =
Fs /2.
With sampling rate Fs = 1/T , the sampling of a continuous-time
sinusoidal signal
xa (t) = A cos(2πF0 t + θ) (1.46)
yields a discrete-time signal of the form
x(k) = xa (kT ) = A cos(2πF0 kT + θ) = A cos(2πf0 k + θ) (1.47)
1
2
F
Fs Fs 0 Fs Fs
2 2
1
2
Figure 1.4 Relationship between the continuous-time and discrete-time frequency variables
in periodic sampling.
Figure 1.5 where two sinusoids with frequencies F0 = 400 Hz and F−1 =
−1000 Hz yield identical samples when a sampling rate of Fs = 1400 Hz is
employed.
Hence, by using (1.50), the sampled output signal fˆa (t) in (1.21) can be
expressed as
∞
1 2π
fˆa (t) = fa (t) ΔT (t) = fa (t) ej T kt (1.53)
T
k=−∞
Taking the Laplace transform on the both sides of (1.53) then gives
∞
ˆ 1 ∞ 2π
F̂a (s) = L[fa (t)] = fa (t) ej T kt e−st dt
T 0
k=−∞
∞ ∞
1 2π
= fa (t) e−(s−j T k)t dt (1.54)
T 0
k=−∞
∞
1 2π
= Fa s − j k
T T
k=−∞
We now consider the case where the spectrum Fa (jΩ) of an analog signal
fa (t) is band-limited as shown in Figure 1.6(a) and the spectrum is zero
for |F | ≥ B. If the sampling frequency Fs is chosen as Fs > 2B, the
spectrum F̂a (jΩ) of the sampled discrete-time signal fa (kT ) appears as shown
in Figure 1.6(b). Therefore, if the sampling frequency Fs is chosen so that
Fs ≥ 2B, where the frequency Fs = 2B is usually referred as the Nyquist
frequency, then it follows that
Fa( )
F
-B 0 B
(a)
^ (
F )
a
FsFa[ j s
Fs FsFa ( ) FsFa[ j s
F
-Fs 0 Fs Fs
(b) 2
^ (
F )
a
Fs
F
-Fs 0 Fs Fs
(c) 2
^ (
F )
a
Fs
F
-Fs 0 Fs
(d)
Figure 1.6 Aliasing of spectral components: (a) Spectrum of a band-limited analog signal,
(b) Spectrum of the discrete-time signal, (c) (d) Spectrum of the discrete-time signal with
spectral overlap.
20 Introduction
Sampling Theorem:
If the highest frequency contained in an analog signal fa (t) is Fmax = B and
the signal is sampled at a rate Fs ≥ 2Fmax = 2B, then fa (t) can be exactly
recovered from its sample values {fa (kT )}.
∞ Ωs /2
T
= fa (kT ) ejΩ(t−kT ) dΩ
2π −Ωs /2
k=−∞
∞
Ωs /2 (1.61)
T ejΩ(t−kT )
= fa (kT )
2π j(t − kT )
k=−∞ −Ωs /2
∞
sin(π/T )(t − kT )
= fa (kT )
(π/T )(t − kT )
k=−∞
1.10 Summary
This chapter has introduced terminology for signal analysis and examples
of typical signals, and presented an overview of digital signal processing
with the explanation of its advantages and disadvantages. This chapter has
also analyzed analog and discrete-time signals, and examined the sampling
of analog signals and that of continuous-time sinusoidal signals in connection
22 Introduction
fa(t)
fa(kT)
to aliasing. Moreover, the sampling theorem has been presented with the
explanation of how to recover an analog signal from its discrete-time samples.
References
[1] A. V. Oppenheim and R. W. Schafer, Digital Signal Processing, NJ:
Prentice-Hall, 1975.
[2] S. K. Mitra, Digital Signal Processing, 3rd ed. NJ: McGraw-Hill, 2006.
[3] J. G. Proakis and D. J. Manolakis, Digital Signal Processing: Principles,
Algorithms, and Applications, 2nd ed. New York, Macmillan Publishing
Company, 1992.
[4] J. R. Johnson, Introduction to Digital Signal Processing, NJ: Prentice
Hall, 1989.
[5] T. Higuchi, Fundamentals of Digital Signal Processing, Tokyo, Japan,
Shokodo, 1986.
[6] P. M. Chirlian, Signals and Filters, New York: Van Nostrand Reinhold,
1994.
[7] K. Ogata, Modern Control Engineering, 3rd ed., New Jersey: Prentice-
Hall, Inc. 1997.
2
Discrete-Time Systems
and z-Transformation
2.1 Preview
This chapter covers fundamental concepts relating to discrete-time signals and
systems. In Section 2.2, we introduce common and important discrete-time
sequences such as unit pulse sequence, unit step sequence, unit ramp sequence,
exponential sequence, and cosine sequence. Most of these sequences consist
of evenly space samples of familiar continuous-time functions. In Section 2.3,
the one-side z-transform of a discrete-time sequence is defined, and then
fundamental z-transforms as well as z-transform properties are explained. In
Section 2.4, we present three methods for computing inverse z-transform using
partial fraction expansion, power series expansion, and contour integration,
respectively.
Several concepts that are most relevant to discrete-time systems, such as
linearity, time-invariance, stability, and causality, are studied in Section 2.5. In
Sections 2.6 and 2.7, linear time-invariant discrete-time systems are described
in terms of difference equations as well as state-space descriptions. The
block diagrams of digital filters and two methods for constructing state-space
descriptions from a difference equation are presented. In Section 2.8, transfer
functions in the frequency domain for causal linear time-invariant discrete-
time systems are introduced, and several analysis and design issues for all-pass,
notch, and doubly complementary digital filters are examined.
23
24 Discrete-Time Systems and z-Transformation
with a constant sampling frequency. Below are several special sequences that
are found useful in the analysis of discrete-time signals and systems.
1. Unit Pulse Sequence
The unit pulse sequence has a unit sample for k = 0 and all subsequent
samples are zero, i.e.,
1, k=0
δ(k) = (2.1)
0, otherwise
δ (k) uo(k)
1 1
...
−1 1 2 3 ... k −1 1 2 3 ... k
(a) (b)
(e)
Figure 2.1 Several fundamental sequences. (a) Unit pulse. (b) Unit step. (c) Unit ramp.
(d) Exponential. (e) Sinusoidal.
dF (z)
= −z
dz
5. Convolution
The z-transform of the convolution of two sequences h(k) and f (k) is
given by
∞
∞
∞
Z h(l)f (k − l) = h(l)f (k − l)z −k
l=0 k=0 l=0
∞
∞
−l
= h(l)z f (k − l)z −(k−l) = H(z)F (z)
l=0 k=0
(2.19)
where f (k) = 0 for k < 0.
2.4 Inversion of z-Transforms 29
6. Initial-Value Theorem
The initial value of a sequence f (k) is the value of the sequence at k = 0.
It can be found from the z-transform of the sequence as
f (0) = lim f (0) + f (1)z −1 + f (2)z −2 + · · · = lim F (z)
z→∞ z→∞
(2.20)
7. Final-Value Theorem
The Final value of a sequence f (k) is the value of the sequence at k = ∞.
By virtue of
N
f (k)z −k = f (0) + f (1)z −1 + · · · + f (N )z −N
k=0
N
f (k − 1)z −k = z −1 [f (0) + f (1)z −1 + · · · (2.21)
k=0
+ f (N − 1)z −(N −1) ]
N
−1
−1
=z f (k)z −k
k=0
it follows that
N
N
−1
f (N ) = lim f (k)z −k − z −1 f (k)z −k (2.22)
z→1
k=0 k=0
∞
1 i−1 1
F (z)z dz = f (k)z −k+i−1 dz
2πj C 2πj C k=0
∞ (2.25)
1 −k+i−1
= f (k) z dz
2πj C
k=0
−(1 + z −1 )
F (z) =
6(1 − z −1 )(1 − 12 z −1 )(1 − 1
3 z −1 )
c1 c2 c3
= + 1 +
1−z −1 1− 2z −1 1 − 13 z −1
and compute
1 −1
3
−1
c1 = (1 − z )F (z) = −1, c2 = 1 − z F (z) =
z=1 2 z=1/2 2
1 2
c3 = 1 − z −1 F (z) =−
3 z=1/3 3
which yields
3 1 k 2 1 k
f (k) = −1 + − for k = 0, 1, 2, · · ·
2 2 3 3
then the inverse z-transform f (k) of F (z) is readily obtained from (2.30).
Consider for example
2z 2 + z
F (z) = 2
z − 2z + 1
which admits a power series expansion as
Hence we obtain
{f (0), f (1), f (2), f (3), f (4), f (5), f (6), · · · } = {2, 5, 8, 11, 14, 17, 20, · · · }
32 Discrete-Time Systems and z-Transformation
k = 0, 1, 2, · · ·
In the case where z = a is a first-order pole, the residue of F (z)z k−1 becomes
Res(a) = (z − a)F (z)z k−1 (2.32)
z=a
As an example, consider
1 z3
F (z) =
8 (z − 1)(z − 12 )(z − 1
4 )
We now compute
1
Res(1) = (z − 1)F (z)z k−1 =
z=1 3
1 1 1 k
Res( 12 ) = z − F (z)z k−1 =−
2 z=1/2 4 2
1 1 1 k
Res( 14 ) = z − F (z)z k−1 =
4 z=1/4 24 4
which gives
1 1 1 k 1 1 k
f (k) = − + for k = 0, 1, 2, · · ·
3 4 2 24 4
2.5 Parseval’s Theorem 33
Proof
Define a sequence w(k) as
so that
∞
W (z) = f (k)g(k)z −k (2.36)
k=0
From (2.27), we can write
1
f (k) = F (v)v k−1 dv (2.37)
2πj C1
Note that
∞
w(k) = W (z) (2.39)
z=1
k=0
which in conjunction with (2.38) gives
∞
1
f (k)g(k) = F (v)G(1/v)v −1 dv (2.40)
2πj C
k=0
In particular, if f (k) and g(k) are two complex sequences, then (2.34) is
changed to
∞
1
f (k)g ∗ (k) = F (v)G∗ (1/v ∗ )v −1 dv (2.42)
2πj C
k=0
2. Time-Invariance
The system in (2.43) is said to be a time-invariant system provided that
Under the assumption that the system in (2.43) is linear and time-invariant,
(2.47) can be expressed as
∞
∞
y(k) = u(i)S δ(k − i) = u(i)h(k − i) (2.48)
i=−∞ i=−∞
4. Causality
A system is said to be causal if the output y(k) for any k = ko depends on
the input u(k) for k ≤ ko only. A linear time-invariant system is causal if
and only if the impulse response h(k) is zero for k < 0. Therefore, for linear
time-invariant causal systems, (2.50) becomes
∞
k
y(k) = h(i)u(k − i) = h(k − i)u(i) (2.52)
i=0 i=−∞
where u(k) is a scalar input, y(k) is a scalar output, ai ’s and bi ’s are scalar
coefficients, and the initial conditions are chosen as u(k) = y(k) = 0 for
k < 0. To illustrate the structure of a digital filter in a block diagram, we
introduce several basic block-diagram symbols for adder, constant multiplier,
and unit delay etc. as shown in Figure 2.3.
Using unit delay z −1 which is defined by
z −1 u(k) = u(k − 1), z −1 y(k) = y(k − 1) (2.56)
Equation (2.55) can be expressed as
n
n
−i
1+ ai z y(k) = bi z −i u(k) (2.57)
i=1 i=0
f(k) f2(k)
(a) (b)
A block diagram of the system in (2.59) is depicted in Figure 2.4. This figure
is referred to as the direct form II structure and has the minimum possible
number of delays [1]. Since feedback loops are involved in the filter structure,
systems with such a structure are called IIR (Infinite Impulse Response) or
recursive digital filters. In the case where feedback loop does not exist, i.e.,
ai = 0 for i = 1, 2, · · · , n, the difference equation in (2.55) becomes
The block diagram of the system in (2.60) is drawn in Figure 2.5. Since there
exist only feedforward paths in Figure 2.5, systems with such a structure are
called FIR (Finite Impulse Response), nonrecursive, or transversal digital
filters.
Using (2.56), (2.57) is transformed into
y(k)
b0 b1 b2 bn-1 bn
v(k) z -1 z -1 z -1
a1 a2 an-1 an
u(k)
u(k) z -1 z -1 z -1
b0 b1 b2 bn-1 bn
y(k)
Figure 2.5 FIR digital filters.
2.7 Difference Equations 39
y(k)
an an-1 a2 a1
z -1
z -1
z -1
bn bn-1 b2 b1 b0
u(k)
Figure 2.6 Transposed direct form II structure of IIR digital filters.
The block diagram of the system in (2.61) is illustrated in Figure 2.6. This
figure is referred to as the transposed direct form II structure [1] and is
generated by reversing the directions of all branches in the network of
Figure 2.4. Such a procedure is called flow-graph reversal or transposition,
that leads to a set of transposed filter structures. In addition, in the case where
feedback loop does not exist, i.e., ai = 0 for all i = 1, 2, · · · , n, (2.61)
becomes
y(k) = b0 u(k) + b1 u(k)z −1 + · · · + bn u(k)z −n
(2.62)
= b0 u(k) + b1 u(k − 1) + · · · + bn u(k − n)
The block diagram of the system in (2.62) is shown in Figure 2.7. The block
diagram in Figure 2.7 which is generated by reversing the directions of all
branches in thenetwork of Figure 2.5 is called the transposed form of an FIR
digital filter.
By taking the z-transform on the both sides of (2.55), we obtain
n
n
−i
1+ ai z Y (z) = bi z −i U (z) (2.63)
i=1 i=0
which leads to
Y (z) b0 + b1 z −1 + · · · + bn z −n
H(z) = = (2.64)
U (z) 1 + a1 z −1 + · · · + an z −n
u(k)
bn b n-1 b1 b0
z -1
z -1
z -1
y(k)
Figure 2.7 Transposed form of FIR digital filters.
40 Discrete-Time Systems and z-Transformation
2.8.1 Realization 1
By substituting the second equation into the first equation in (2.59), we obtain
y(k)
~ ~ ~ ~
b0 b1 b2 bn-1 bn
z -1 z -1 z -1
v(k)
a1 a2 an-1 an
u(k)
Figure 2.8 Transformation of IIR digital filters.
2.8 State-Space Descriptions 41
where
⎡ ⎤
0 1 0 ··· 0 ⎡ ⎤
⎢ ⎥ 0
⎢ 0 0 1 ··· 0 ⎥ ⎢ .. ⎥
⎢ .. .. .. .. .. ⎥ ⎢ ⎥
A=⎢ . . . . . ⎥, b=⎢ . ⎥
⎢ ⎥ ⎣ 0 ⎦
⎣ 0 0 0 ··· 1 ⎦
1
−an −an−1 −an−2 · · · −a1
c = b̃n · · · b̃2 b̃1 , d = b0
2.8.2 Realization 2
By decomposing (2.61) into two parts, we have
y(k) = b0 u(k) + v(k)
v(k) = [b1 u(k) − a1 y(k)]z −1 + [b2 u(k) − a2 y(k)]z −2 + · · · (2.68)
+ [bn u(k) − an y(k)]z −n
which is equivalent to
y(k) = b0 u(k) + v(k)
v(k) = [(b1 − a1 b0 )u(k) − a1 v(k)]z −1 + · · · (2.69)
+ [(bn − an b0 )u(k) − an v(k)]z −n
The block diagram of the system in (2.69) is illustrated in Figure 2.9 with
definition of
b̃i = bi − ai b0 for i = 1, 2, · · · , n
Defining the output of each unit delay z −1 by state variables x̃1 (k),
x̃2 (k), · · · , x̃n (k) in order from the left to the right in Figure 2.9, the difference
equation in (2.69) can be realized by a state-space model as
v(k) y(k)
an an -1 a2 a1
z -1 z -1 z -1
~ ~ ~ ~
bn bn -1 b2 b1 b0
u(k)
Figure 2.9 Transformation of the transposed form of IIR digital filters.
42 Discrete-Time Systems and z-Transformation
where
H(ejωT ) = Re{H(ejωT )}2 + Im{H(ejωT )}2
Im{H(ejωT )}
θ(ω) = tan−1
Re{H(ejωT )}
are called the amplitude characteristic and phase characteristic, respectively.
It is obvious that |H(ejωT )| is an even function and θ(ω) is an odd function,
that is,
H(ejωT ) = H(e−jωT ) , θ(−ω) = −θ(ω) (2.76)
This leads to
1 H(ejωT )
θ(ω) = ln (2.81)
2j H(e−jωT )
T 1 dH(z) 1 dH(z −1 )
=− z + z −1 (2.84)
2 H(z) dz H(z −1 ) dz −1 z=ejωT
1 dH(z)
= −T Re z
H(z) dz z=ejωT
From (2.88), it is seen that the amplitude response of all-pass digital filters
is equal to unity over the entire baseband. As a result, by connecting a discrete-
time system with a properly designed all-pass digital filter in cascade, the phase
response of the system can be altered in a desired manner without affecting
the amplitude response of the original discrete-time system. Moreover, as a
signal processing building block all-pass digital filter admits computationally
efficient implementation that renders it useful in many signal processing
applications [8]. To see this, we express H(z) in (2.87) as H(z) = Y (z)/U (z).
By applying the inverse z-transform to the equation, the following nth-
order difference equation is found as the time-domain representation of the
filter in (2.87)
n
y(k) = − ai [y(k − i) − u(k − n + i)] + u(k − n) (2.89)
i=1
which yields
Yi (z) z −1 Hi−1 (z) + ki
Hi (z) = = (2.91)
Ui (z) 1 + ki z −1 Hi−1 (z)
U i (z)
-ki Xi ( z)
Hi - 1 ( z)
ki
Yi (z) z -1
Figure 2.10 Two multiplier lattice two-pair for all-pass digital filter implementation.
2.9 Frequency Transfer Functions 47
where H0 (z) = 1 and ki = Hi (∞). For example, from (2.91) it follows that
z −1 H0 (z) + k1 z −1 + k1
H1 (z) = =
1 + k1 z −1 H0 (z) 1 + k1 z −1
(2.92)
z −1 H1 (z) + k2 z −2 + k1 (1 + k2 )z −1 + k2
H2 (z) = −1
=
1 + k2 z H1 (z) 1 + k1 (1 + k2 )z −1 + k2 z −2
which correspond to the transfer functions of first-order and second-order all-
pass digital filters, respectively. Cascaded lattice realization of an nth-order
all-pass digital filter using two multiplier lattice two-pair modules is depicted
in Figure 2.11 where Hn (z) = Yn (z)/Un (z). It is known [8] that the nth-order
all-pass digital filter is stable if |ki | < 1 for i = 1, 2, · · · , n.
Alternatively, two multiplier lattice two-pair in Figure 2.10 can also be
implemented as per Figures 2.12 or 2.13 without altering the overall transfer
function.
We remark that Figure 2.12 is the single multiplier lattice two-pair [9],
which requires the fewest number of multipliers. Figure 2.13 is the normalized
lattice two-pair [10] where all internal nodes are automatically scaled in
the l2 sense [11]. By employing single multiplier lattice two-pair in Fig-
ure 2.12, the lattice structure of Figure 2.11 can be transformed into that of
Figure 2.14.
Un (z)
-kn -k2 -k1
kn k2 k1
Yn (z) z -1 z -1 z -1
ki
Ui (z)
-
Hi - 1 ( z)
Yi (z) z -1
Figure 2.12 Single multiplier lattice two-pair.
48 Discrete-Time Systems and z-Transformation
1-ki2
Ui (z)
ki -ki Hi - 1 ( z)
Yi (z) z -1
1-ki2
Figure 2.13 Normalized lattice two-pair.
kn k2 k1
Un (z)
- - -
Yn (z) z -1 z -1 z -1
Figure 2.14 Another cascaded lattice realization of an nth-order all-pass digital filter.
where
k2 − k1 (1 + k2 )z −1 + z −2
H2 (z) = (2.94b)
1 − k1 (1 + k2 )z −1 + k2 z −2
is a second-order all-pass digital filter with
1 − tan B2
k1 = cos ωo , k2 = (2.94c)
1 + tan B2
1 + k2 1 − 2k1 z −1 + z −2
H(z) = ·
2 1 − k1 (1 + k2 )z −1 + k2 z −2
(2.95)
1 + k2 z − 2k1 + z −1
= ·
2 z − k1 (1 + k2 ) + k2 z −1
U(z) Y(z)
1
H2 ( z) 2
k2 -k1
U2 (z)
- -
Y2 (z) z -1 z -1
Figure 2.16 Lattice structure of a second-order all-pass digital filter in (2.94b).
50 Discrete-Time Systems and z-Transformation
j
|H(e )|
1
1
2
0 1 0 2
Figure 2.17 Notch frequency ωo , cutoff frequencies ω1 , ω2 and bandwidth B = ω2 − ω1 of
the magnitude response in (2.97).
2.9 Frequency Transfer Functions 51
or equivalently,
) *2 ) *2
sin ωi 1 + k2
= for i = 1, 2 (2.99b)
cos ωi − cos ωo 1 − k2
B 1 1 − k2 1 − tan B2
tan = = ⇐⇒ k2 = (2.102)
2 A 1 + k2 1 + tan B2
Hence, if k2 approaches unity, then we have
B B
tan and B 1 − k2 (2.103)
2 2
This reveals that if k2 1, then bandwidth B approaches zero, and (2.95)
approaches an ideal notch filter. For the sake of stability, |k1 | < 1 and |k2 | < 1
have been assumed in the above analysis.
There are some variants of a single-frequency notch filter in (2.95). By
employing an arithmetic-geometric mean inequality, we obtain
1 + k2 +
≥ k2 (2.104)
2
where equality holds provided that k2 = 1. Hence, if we assume k2 1 and
set k2 = ρ2 where 0 ρ < 1, then it follows from (2.95) that [12, 13]
1 − 2k1 z −1 + z −2
H(z) ρ
1 − 2k1 ρz −1 + ρ2 z −2
(2.105)
1 − 2k1 z −1 + z −2
1 − 2k1 ρz −1 + ρ2 z −2
52 Discrete-Time Systems and z-Transformation
or [14]
1 − 2k1 z −1 + ρ(2 − ρ)z −2
H(z) ρ (2.106)
1 − 2k1 ρz −1 + ρ2 z −2
The magnitude response of the notch digital filter in (2.106) is shown in
Figure 2.18 where ωo = 0.3π and ρ = 0.985.
The notch digital filter in (2.106) can be realized by a state-space model
as [14]
x(k + 1) = Ax(k) + bu(k)
(2.107)
y(k) = cx(k) + du(k)
where x(k) is a 2 × 1 state-variable vector, u(k) is a scalar input, y(k) is a
scalar output, and A, b, c and d are real constant matrices defined by
cos ωo − sin ωo
A=ρ , c=ρ 1 1
sin ωo cos ωo
cos ωo − sin ωo
b = (ρ − 1) , d=ρ
cos ωo + sin ωo
From (2.107), it is observed that AAT = AT A holds, i.e., matrix A is
normal [15]. Without loss of generality, the coefficient matrices A and b of
the state-space model in (2.107) can be written as [14]
ρ α −β ρ−1 α−β
A= + , b= +
α2 + β 2 β α α2 + β 2 α+β
(2.108)
where α and β are real numbers.
jω
|H(e )|
1
0 0.5π π ω
Figure 2.18 Magnitude response of a notch filter in (2.106) where ωo = 0.3π and ρ = 0.985.
2.9 Frequency Transfer Functions 53
are considered. Such transfer function pairs are termed doubly complemen-
tary [16].
We now examine a parallel structure of all-pass digital filters A1 (z) and
A2 (z), shown in Figure 2.19.
The frequency responses of transfer functions G(z) = Y1 (z)/U (z) and
H(z) = Y2 (z)/U (z) specified in Figure 2.19 can be expressed as
1
G(ejω ) = A1 (ejω ) + A2 (ejω )
2
1 jθ1 (ω)
= e + ejθ2 (ω) (2.111)
2
θ1 (ω)+θ2 (ω) θ1 (ω) − θ2 (ω)
= ej 2 cos
2
1
2
A1 (z) Y1 (z)
U(z) 1
2
A2 (z) - Y2 (z)
Figure 2.19 Implementation of the doubly complementary filter pair as the sum and difference
of all-pass digital filters.
54 Discrete-Time Systems and z-Transformation
1
H(ejω ) = A1 (ejω ) − A2 (ejω )
2
1
= ejθ1 (ω) − ejθ2 (ω) (2.112)
2
θ1 (ω)+θ2 (ω) θ1 (ω) − θ2 (ω)
= j ej 2 sin
2
respectively. Evidently, the transfer function G(z) in (2.111) is a lowpass filter
and the transfer function H(z) in (2.112) is a highpass filter provided that
θ2 (ω), for 0 ≤ |ω| ≤ ωp
θ1 (ω) = (2.113)
θ2 (ω) ± π, for ωs ≤ |ω| ≤ π
2.10 Summary
This chapter has covered fundamental concepts relating to discrete-time
signals and systems. First, the concepts of a discrete-time sequence, the
z-transformation, and z-transform inversion have been introduced. The prop-
erties of discrete-time systems have then been discussed, and discrete-time
systems have been described in terms of difference equations as well as state-
space descriptions. Frequency responses have also been induced from the
References 55
Magnitude
1
0 ωp ωs π ω
Phase
−(n−1)π
−nπ
References
[1] A. V. Oppenheim and R. W. Schafer, Digital Signal Processing, NJ:
Prentice-Hall, 1975.
[2] Y. Sakawa, Linear System Control Theory, Tokyo, Japan, Asakura
Publishing, 1979.
[3] H. Kogo and T. Mita, Introduction to System Control Theory, Tokyo,
Japan, Jikkyo Shuppan, 1979.
[4] T. Higuchi, Fundamentals of Digital Signal Processing, Tokyo, Japan,
Shokodo, 1986.
[5] M. S. Santina, A. R. Stubberud and G. H. Hostetter, Digital Control
System Design, 2nd ed. Orlando, FL, Saunders College Publishing,
Harcourt Brace College Publishers, 1994.
[6] S. Takahashi and M. Ikehara, Digital Filters, Tokyo, Japan, Baifukan,
1999.
[7] M. Hagiwara, Digital Signal Processing, Tokyo, Japan, Morikita Pub-
lishing, 2001.
[8] P. A. Regalia, S. K. Mitra and P. P. Vaidynathan, “The digital all-pass
filter: A versatile signal processing building block,” Proc. IEEE, vol. 76,
no. 1, pp. 19–37, Jan. 1988.
56 Discrete-Time Systems and z-Transformation
[9] A. H. Gray, Jr., and J. D. Markel, “Digital lattice and ladder filter synthe-
sis,” IEEE Trans. Audio Electroacoust., vol. AU-21, no. 6, pp. 491–500,
Dec. 1973.
[10] A. H. Gray, Jr., and J. D. Markel, “A normalized filter structure,”
IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-23, no. 3,
pp. 268–270, June 1975.
[11] A. H. Gray, Jr., “Passive cascaded lattice digital filters,” IEEE Trans.
Circuits Syst., vol. CAS-27, no. 5, pp. 337–344, May 1980.
[12] T. S. Ng, “Some aspects of an adaptive digital notch filter with con-
strained poles and zeros,” IEEE Trans. Acoust., speech, Signal Process.,
vol. ASSP-35, no. 2, pp. 158-161, Feb. 1987.
[13] M. V. Dragosevic and S. S. Stankovic, “An adaptive notch filter with
improved tracking properties,” IEEE Trans. Signal Process., vol. 43,
no. 9, pp. 2068–2078, Sep. 1995.
[14] Y. Hinamoto and S. Nishimura, “Normal-form state-space realization of
single frequency IIR notch filters and its application to adaptive notch
filters,” in Proc. APCCAS 2016, pp. 599–602, Oct. 2016.
[15] R. E. Skelton and D. A. Wagie, “Minimal root sensitivity in linear
systems,” J. Guidance Contr., vol. 7, pp. 570–574, Sep.–Oct. 1984.
[16] P. P. Vaidynathan, S. K. Mitra and Y. Neuvo, “A new method of
low sensitivity filter realization,” IEEE Trans. Acoust., Speech, Signal
Process., vol. ASSP-34, no. 2, pp. 350–361, Apr. 1986.
3
Stability and Coefficient Sensitivity
3.1 Preview
A dynamic system can hardly be useful in practice unless it is stable, meaning
that it always produces a reasonable output in response to a reasonable
input. For the sake of quantitative analysis of digital filters and algorithmic
development of their designs, it is of fundamental importance to understand the
notion of stability in rigorous terms and various criteria for verifying stability.
In Section 3.2, after defining the bounded-input bounded-output stability for
IIR digital filters, several stability criteria in terms of impulse response and
system poles are presented. These include Schur-Cohn criterion, Schur-Cohn-
Fujiwara criterion, Jury-Marden criterion, and Lyapunov criterion. Another
issue addressed in this chapter is coefficient sensitivity. When the coefficients
of an IIR digital filter are quantized for implementation purposes, the coeffi-
cient error may lead to substantial changes in the filter characteristics such as
frequency response and stability. In Section 3.3, these changes are evaluated
by examining the changes in the locations of poles due to the changes in the
filter’s coefficients.
3.2 Stability
3.2.1 Definition
An IIR digital filter is said to be stable if every bounded input produces a
bounded output. A necessary and sufficient condition on the impulse response
for stability is given in the following theorem.
Theorem 3.1
A necessary and sufficient condition for an IIR digital filter to be stable is that
its impulse response {h(n)} is absolutely summable, namely,
57
58 Stability and Coefficient Sensitivity
∞
|h(n)| < ∞ (3.1)
n=−∞
Proof
Assume that (3.1) does not hold, i.e., the sum on the left-hand side of (3.1) is
not bounded. Consider the sequence x(n) defined by
1 if h(−n) ≥ 0
x(n) =
−1 if h(−n) < 0
where M is a bound of x(n). Hence (3.1) is also a sufficient condition and the
proof is complete.
Theorem 3.2
The IIR filter in (3.2) is stable if and only if all its poles are located strictly
inside the unit circle of the z plane, namely,
Proof
We begin by writing the transfer function in terms of its impulse response as
∞
H(z) = h(n)z −n
n=−∞
Because the filter is causal, h(n) vanishes for every n < 0, hence we have
∞
H(z) = h(n)z −n
n=0
If the filter is stable, then (3.1) implies that for any z = rejω with r ≥ 1 we
have
∞ ∞ ∞
H(rejω ) ≤ h(n)r−n e−jnω = −n
r |h(n)| ≤ |h(n)| < ∞
n=0 n=0 n=0
which implies that any pole of H(z) cannot be in the region {z: |z| ≥ 1}, i.e.
(3.3) must hold. Next, assume that (3.3) is satisfied. For n > 0, the impulse
response h(n) can be expressed as
N
1
h(n) = H(z)z n−1 dz = pn−1
i resz=pi H(z)
2πj Γ i=1
the Schur-Cohn criterion [1] examines whether or not all its zeros are inside
the unit circle of the z plane by evaluating the determinants of N matrices
whose sizes vary from 2 × 2 to 2N × 2N .
min(i,j)
fij = bi−k bj−k − bN −i+k bN −j+k (3.5)
k=1
b2
1
−2 2 b1
−1
Thus the positive definite matrix P constructed above satisfies (3.9), which
completes the proof.
64 Stability and Coefficient Sensitivity
When the filter coefficients {ai } and {bi } are quantized for implementation
purposes, the coefficient error may lead to substantial changes in the filter
characteristics such as frequency response and stability. These changes can
be investigated by examining the changes in the locations of poles due to the
changes in the filter’s coefficients.
The transfer function in (3.2) can be expressed as
z N −M a0 z M + a1 z M −1 + · · · + aM Ã(z)
H(z) = = (3.15)
z N + b1 z N −1 + · · · + bN B̃(z)
and
N
N
B̃(z) = bk z N −k = (z − pi ) (3.17)
k=0 i=1
where {zi } and {pi } are the zeros and poles of the IIR filter, respectively.
To examine how changes in coefficients {bk } lead to change in pole pi , we
assume that the N poles are distinct and denote by dpi the infinitesimal change
in pi due to infinitesimal changes db1 , db2 , . . . , dbn in {bk }. The rule of total
differentiation gives
n
∂pi
dpi = dbk
∂bk z=pi
k=1
where
∂ B̃(z) ∂bk
∂pi pN
i
−k
= =−
∂bk z=pi ∂ B̃(z) ∂pi
N
z=pi (pi − pj )
j=1, j=i
3.4 Summary 65
Therefore, we have
n
1
dpi = − pN
i
−k
dbk (3.18)
N
(pi − pj ) k=1
j=1, j=i
3.4 Summary
This chapter presents several criteria that can be used to verify the stability of an
IIR digital filters. The Schur-Cohn criterion, Schur-Cohn-Fujiwara criterion,
and Jury-Marden criterion are of use when the transfer function of the IIR filter
is given. The stability triangle defined by (3.7) is particularly convenient when
the denominator of the IIR filter is given in terms of a product of second-order
sections. The Lyapunov criterion is suitable for IIR filters that are modeled in
state space. This chapter also presents a brief study on coefficient sensitivity.
This is done by examining the changes in the locations of poles due to the
changes in the filter’s coefficients.
66 Stability and Coefficient Sensitivity
References
[1] E. I. Jury, Theory and Application of the z-Transform Method,
John Wiley, New York, 1964.
[2] A. Antoniou, Digital Filters: Analysis, Design, and Applications, 2nd ed.,
McGraw-Hill, New York, 1993.
[3] R. A. Roberts and C. T. Mullis, Digital Signal Processing, Addison-
Wesley, Reading MA, 1987.
4
State-Space Models
4.1 Preview
We have introduced the external (input-output) description and state-space
description of dynamical linear systems in Chapter 2. Unlike the external
description, by adequately defining a state-variable vector and establishing
dynamical relations between the state variables and system’s input and
output, a state-space description reveals a great deal of internal structure
of a dynamical linear system. In this chapter, the state-space models of
dynamical linear systems are studied more systematically. In Section 4.2,
a necessary and sufficient condition for a state-space model to be controllable
and observable is described and proved. In Section 4.3, Faddeev’s formula
for deriving its transfer function from a given state-space model is presented.
In Section 4.5, equivalent transformation is defined with its application to
the derivation of various representations such as canonical form, balanced
form, input-normal form, output-normal form and so on. In Section 4.6,
Kalman’s canonical structure theorem is introduced. In Section 4.6, the
problems of minimal realization and minimal partial realization are addressed
by means of the Hankel matrix. Finally, a passivity property of discrete-
time linear systems, known as lossless bounded-real lemma, is examined in
Section 4.7.
67
68 State-Space Models
real constant matrices, respectively. The state space of the model in (4.1)
is an n-dimensional real vector space and is denoted by Σ. The first and
second equations in (4.1) are called the state equation and output equation,
respectively. A block-diagram of the state-space model in (4.1) is depicted in
Figure 4.1.
From (4.1), it follows that
Definition 4.1
The state equation in (4.1) is said to be controllable if for any initial state x(0)
in the state space Σ, and any state xd in Σ, there exist a finite step ko > 0
and an input sequence that will transfer the initial state x(0) to the state xd at
step ko . Otherwise, the state equation is said to be uncontrollable.
Definition 4.2
The state-space model (A, b, c, d)n in (4.1) is said to be observable if for any
initial state x(0) in the state space Σ, there exist a finite step ko > 0 such
that the knowledge of the input and output over the finite interval 0 ≤ k ≤ ko
suffices to determine the initial state x(0) uniquely. Otherwise, the state-space
model (A, b, c, d)n is said to be unobservable.
Definition 4.3
The state-space model (A, b, c, d)n in (4.1) is said to be minimal if it is
controllable and observable.
Theorem 4.1
The state equation in (4.1) is controllable if and only if
rank b Ab · · · An−1 b = n (4.4)
Theorem 4.2
The state-space model (A, b, c, d)n in (4.1) is observable if and only if
⎡ ⎤
c
⎢ cA ⎥
⎢ ⎥
rank ⎢ .. ⎥ = n (4.5)
⎣ . ⎦
cAn−1
T
The matrices V n = b Ab · · · An−1 b and U n = cT (cA)T · · · (cAn−1 )T
are called the controllability matrix and observability matrix, respectively.
Under the assumption that Ak converges to 0 as k goes to infinity (i.e., the
state-space model (A, b, c, d)n is stable), we define two symmetric matrices
K c and W o as
∞
Kc = Ak bbT (Ak )T
k=0
∞
(4.6)
k T T k
Wo = (A ) c cA
k=0
70 State-Space Models
K c = AK c AT + bbT
(4.7)
W o = AT W o A + cT c
Marices K c and W o are called the controllability Grammian and the observ-
ability Grammian, respectively. It can readily be shown that if the state-space
model in (4.1) is controllable and observable, then K c and W o are positive
definite.
where X(z), U (z) and Y (z) denote the z-transforms of state-variable vector
x(k), input u(k) and output y(k), respectively. From (4.8), we have
The first and second terms on the right-hand side of (4.9) represent the transient
response and steady state characteristic, respectively. By setting x(0) = 0,
the transfer function H(z) of the state-space model (A, b, c, d)n in (4.1) is
obtained as
Y (z)
H(z) = = c(zI n − A)−1 b + d (4.10)
U (z)
By noting that
(zI n − A)−1 = Iz −1 + Az −2 + A2 z −3 + · · ·
∞ (4.11)
= Ai−1 z −i
i=1
4.3 Transfer Function 71
where
h0 = d, hi = cAi−1 b for i = 1, 2, 3, · · ·
Sequence {h0 , h1 , h2 , · · · } is called the unit-pulse response or impulse
response of the state-space model (A, b, c, d)n in (4.1).
Proof
From (4.13a), it follows that
(zI n − A) adj(zI n − A) = det(zI n − A)I n (4.15)
72 State-Space Models
B 2 = AB 1 + a2 I n = A2 + a1 A + a2 I n
(4.23)
..
.
B n = AB n−1 + an I n = An + a1 An−1 + · · · + an I n
Since B n = 0, we readily obtain
An + a1 An−1 + · · · + an I n = 0 (4.24)
Definition 4.4
Let T be an n × n nonsingular real matrix, and let x(k) = T −1 x(k). Then
the state-space model (A, b, c, d)n described by
A = T −1 AT , b = T −1 b, c = cT
By taking the z-transform of both sides in (4.25), we obtain
z X(z) − x(0) = A X(z) + b U (z)
(4.26)
Y (z) = cX(z) + d U (z)
= H(z)
is applied to the state-space model (A, b, c, d)n in (4.1), the model can be
transformed into the following controllable canonical form:
⎡ ⎤ ⎡ ⎤
0 1 ··· 0 0
⎢ .. . . .. ⎥ ⎢ .. ⎥
⎢ . . . . . ⎥ ⎢ ⎥
x(k + 1) = ⎢ . ⎥ x(k) + ⎢ . ⎥ u(k)
⎣ 0 ··· 0 1 ⎦ ⎣0⎦
−an · · · −a2 −a1 1
n n−1
y(k) = an−i hi an−1−i hi · · · h1 x(k) + du(k)
i=1 i=1
(4.32)
76 State-Space Models
Moreover, we have
⎡ ⎤
1
⎢ ⎥ z
⎢ ⎥
adj zI n − T −1 AT T −1 b = ⎢ ⎥ .. (4.34)
⎣ ⎦ .
z n−1
is applied to the state-space model (A, b, c, d)n in (4.1), the model can be
transformed into the following observable canonical form:
⎡ n ⎤
⎡ ⎤ ⎢ an−i hi ⎥
0 · · · 0 −an ⎢ i=1 ⎥
⎢ ⎥
⎢ . . .. .. ⎥ ⎢n−1 ⎥
⎢1 . . . ⎥ ⎢ ⎥
x(k + 1) = ⎢ . . ⎥ x(k) + ⎢ an−1−i hi ⎥ u(k)
⎣ .. . . 0 −a ⎦ ⎢ ⎥ (4.40)
2 ⎢ i=1 ⎥
0 · · · 1 −a1 ⎢ .. ⎥
⎣ . ⎦
h1
y(k) = 0 · · · 0 1 x(k) + du(k)
We conclude this section by introducing the concept of duality for two discrete-
time dynamical linear systems. Two systems in (4.32) and (4.40) are said
to be dual, since the controllability of system in (4.32) is equivalent to the
observability of system in (4.40), and the observability of system in (4.32) is
equivalent to the controllability of system in (4.40). Notice that their transfer
functions are identical.
4.4 Equivalent Systems 79
K c = T −1 K c T −T , W o = T T W oT (4.42)
which lead to
K c W o = T −1 K c W o T (4.43)
Therefore, the eigenvalues of K c W o are invariant under the algebraic equiv-
alence. Since matrices K c and W o are symmetric and positive definite, it is
obvious that the eigenvalues of K c W o are all strictly positive. We thus denote
the ith eigenvalue of K c W o by σi2 for i = 1, 2, · · · , n with the ordering
σ1 ≥ σ2 ≥ · · · ≥ σn > 0 and define
Σ = diag{σ1 , σ2 , · · · , σn } (4.44)
Definition 4.5
K c = LLT (4.45)
LT W o L = SΣ2 S T (4.46)
where
Σ1 = diag{σ1 , σ2 , · · · , σr }, Σ2 = diag{σr+1 , · · · , σn }
σ1 ≥ σ2 ≥ · · · ≥ σn , σr σr+1 , 0<r<n
Since the rth-order subsystem (A11 , b1 , c1 , d)r is associated with the r largest
eigenvalues of K c W o , in a sense it is the closest to the original system
(A, b, c, d)n among all rth-order subsystems. Therefore it is natural to take
(A11 , b1 , c1 , d)r to be a r-order approximation of (A, b, c, d)n . We remark
that the reduced-order system (A11 , b1 , c1 , d)r is always stable for all r in
the range [1, n − 1] as long as the original system (A, b, c, d)n is stable. The
interested reader is referred to Section 8.5.3 for details.
Definition 4.6
Given a state-space model (A, b, c)n , the controllable state-space X c is
defined as
82 State-Space Models
X c = {x ∈ Rn | x ∈ Range [V n ]} (4.58)
where R and Rn denote the set of all real numbersand the set of all ordered
n-tuples of real numbers, respectively, and V n = b Ab · · · An−1 b is the
controllability matrix.
Definition 4.7
Given a state-space model (A, b, c)n , the uncontrollable state-space X u is
defined as
X u = {x ∈ Rn | x ∈ Null [U n ]} (4.59)
T
where U n = cT (cA)T · · · (cAn−1 )T is the observability matrix.
As is shown in (4.4) and (4.5), the system (A, b, c)n is controllable
(observable) if and only if rank V n = n (rank U n = n). From Definitions
4.6 and 4.7, we obtain
Lemma 4.1
The controllable state-space X c is invariant under matrix transformation A.
Proof
Using (4.60) and applying the Cayley-Hamilton theorem in (4.24) to the
controllability matrix U n , it follows that
Lemma 4.2
The unobservable state-space X u is invariant under matrix transformation A.
Proof
Making use of (4.60) and applying the Cayley-Hamilton theorem in (4.24) to
the observability matrix U n , we have
X1 = X c ∩ X u , X c = X1 ⊕ X2
(4.63)
Xu = X1 ⊕ X3 , Rn = X1 ⊕ X2 ⊕ X3 ⊕ X4
Proof
Let T i for i = 1, 2, 3, 4 be an n × ni real matrix whose columns consist of
the basis of the subspace Xi and define an equivalent transformation matrix
T by
T = T1 T2 T3 T4 (4.65)
84 State-Space Models
From Lemmas 4.1 and 4.2, Equations (4.63) and (4.65), and b ∈ X c , it follows
that
AT = AT 1 AT 2 AT 3 AT 4
⎡ ⎤
A11 A12 A13 A14
⎢⎢ 0 A22 0 A24 ⎥ ⎥
= T1 T2 T3 T4 ⎢ ⎥
⎣ 0 0 A33 A34 ⎦
0 0 0 A44 (4.66)
⎡ ⎤
b1
⎢⎢b2 ⎥
⎥
b = T1 T2 T3 T4 ⎢ ⎥
⎣0⎦
0
which yields A = T −1 AT and b = T −1 b in (4.64). By virtue of (4.60),
(4.63) and (4.65), we have
cT = cT 1 cT 2 cT 3 cT 4 = 0 c2 0 c4 (4.67)
which leads to c = cT in (4.64). This completes the proof of Theorem 4.3.
The canonical decomposition is illustrated in Figure 4.2, where the
subsystem Sc o = (A22 , b2 , c2 )n2 is controllable and observable, the sub-
system Sc o = (A11 , b1 , 0)n1 is controllable and unobservable, the subsystem
Sc o = (A33 , 0, 0)n3 is uncontrollable and unobservable, and the subsystem
Sc o = (A44 , 0, c4 )n4 is uncontrollable and observable.
Corollary 4.1
The impulse response as well as the transfer function of the system (A, b, c)n
are the same as those of the subsystem (A22 , b2 , c2 )n2 .
Proof
i−1
It is evident that cAi−1 b = c A b = c2 Ai−1
22 b2 holds for i = 1, 2, 3, · · ·
and hence H(z) = c(zI n − A) b = c2 (zI n2 − A22 )−1 b2 . This completes
−1
Definition 4.9
Given a sequence of real numbers {hi | i = 1, 2, 3, · · · }, the Hankel matrix
H i,j is defined as
⎡ ⎤
h1 h2 ··· hj
⎢h hj+1 ⎥
⎢ 2 h3 ··· ⎥
H i,j = ⎢
⎢ .. .. .. .. ⎥
⎥ (4.68)
⎣. . . . ⎦
hi hi+1 · · · hi+j−1
Definition 4.10
Let σ K be a shift operator satisfying
⎡ ⎤
h1+K h2+K ··· hj+K
⎢h hj+1+K ⎥
⎢ 2+K h3+K ··· ⎥
σ K H i,j = ⎢
⎢ .. .. .. ..
⎥
⎥ (4.69)
⎣ . . . . ⎦
hi+K hi+1+K · · · hi+j−1+K
Theorem 4.4
A sequence of real numbers {hi | i = 1, 2, 3, · · · } has finite-dimensional
realization if and only if there exist integers M and N such that
for all i, j = 0, 1, 2, · · · .
Theorem 4.5
If a sequence of real numbers {hi | i = 1, 2, 3, · · · } has finite-dimensional
realization, and if integers M and N satisfy the condition in (4.70), then the
minimal dimension no of realizing the sequence can be determined as
H M,no a = η (4.75)
which leads to
a = (H TM,no H M,no )−1 H TM,no η (4.76)
where
η = the last column of H M,no +1
Definition 4.12
A triple {A, b, c} of constant matrices is said to be the minimal partial
realization of an input-output map if the size of A is minimal among all
the partial realizations satisfying Definition 4.11.
The problem of finding a realization that satisfies Definition 4.12 will be
called the minimal partial realization problem.
Theorem 4.5
If
rank H λ, μ = rank H λ, μ+1 = rank H λ+1, μ (4.78)
holds for some positive integers λ and μ with λ + μ = N , then finite sequence
{hi | i = 1, 2, · · · , N } admits the partial realization.
We now consider the minimal partial realization problem from a given
finite sequence such that the rank condition in (4.78) is not satisfied.
88 State-Space Models
Definition 4.13
Given a finite sequence of real numbers {hi | i = 1, 2, · · · , N }, the incomplete
Hankel matrix H N N is defined as
⎡ ⎤
h1 h2 · · · hN
⎢ .. ⎥
⎢h ..
.
∗ ⎥
⎢ 2 . ⎥
H N,N = ⎢ ⎥ (4.79)
⎢ .. . .. ⎥
.
⎣ . hN . . ⎦
hN ∗ · · · ∗
where the asterisks denote scalars which extend the given sequence without
affecting the rank of the Hankel matrix.
It is well known [3] that a lower bound for the dimension of a state-
space model realizing a given finite sequence is provided by the rank of the
incomplete Hankel matrix. Since the matrix elements denoted by asterisks
do not change the rank of the Hankel matrix, the rank of the incomplete
Hankel matrix can be readily determined by testing its columns for dependency
starting from the left and ignoring all scalars denoted by asterisks. Based on
the observations made above, we have
Theorem 4.6
The rank of the incomplete Hankel matrix in (4.79), denoted by n(N ), can be
computed as
Explicitly, the dimension n(N ) is the minimal dimension for the realizations
of a given sequence {hi | i = 1, 2, · · · , N }. This dimension is non-decreasing
regardless of the choice of those elements denoted by asterisks in the
incomplete Hankel matrix in (4.79).
Described below is a concrete procedure for finding the elements denoted
by asterisks such that the rank of the Hankel matrix so constructed remains to
be equal to that of the incomplete Hankel matrix.
4.6 Hankel Matrix and Realization 89
for i = 1, 2, · · · , n(N ).
Note that although α is not necessarily determined uniquely, its existence
is ensured from (4.79) and (4.80). Hence
which coincides with the condition in (4.78). Therefore, the minimal partial
realization problem can be readily solved by applying a method similar to those
studied in Section 4.6.1. For example, a simple minimal partial realization
(A, b, c)n(N ) can be found by the controllable canonical form
⎡ ⎤ ⎡ ⎤
0 · · · 0 −αn(N ) 1
⎢ ⎥
⎢1 . . .
. .
. ⎥
. ⎢ 0⎥ ⎥
A=⎢
. . ⎥, b = ⎢ ⎢ .. ⎥ , c = h1 h2 · · · hn(N )
⎢ .. . . ⎥ ⎣.⎦
⎣. . 0 −α2 ⎦
0 ··· 1 −α1 0
(4.84)
Let H be the Hankel matrix H M,N with sufficiently large integers M and N ,
and H = U V be a maximum rank decomposition of H.
90 State-Space Models
Lemma 4.3
(1) If HH T x = λx with λ = 0 and x = 0, then (U T x)T K c W o =
λ(U T x)T .
(2) If K c W o y = λy with y = 0, then HH T (U y) = λ(U y).
Proof
If HH T x = λx with λ = 0 and x = 0, then xT HH T = λxT which
leads to xT U V V T U T U = λxT U . Hence (U T x)T K c W o = λ(U T x)T
because K c = V V T and W o = U T U . This means that (λ, U T x) is an
eigenvalue left-eigenvector pair for K c W o because U T x = 0. Conversely,
if K c W o y = λy with y = 0, then U V V T U T U y = λU y, namely,
HH T (U y) = λ(U y). Hence, x = U y = 0 is an eigenvector for HH T .
This completes the proof of the lemma.
By Lemma 4.3, nonzero eigenvalues of HH T coincide with those of
K c W o . Hence H can be factorized using singular value decomposition
(SVD) as
H = U o ΣV To (4.86)
where U To U o = V To V o = I n and Σ is defined by (4.44) (i.e., Σ =
diag{σ1 , σ2 , · · · , σn } and σ1 ≥ σ2 ≥ · · · ≥ σn > 0). In this case,
H T H = V o Σ2 V To and HH T = U o Σ2 U To hold.
As demonstrated below, several useful realizations can be deduced based
on above analysis.
1. Balanced Realization
1 1
By letting U = U o Σ 2 and V = Σ 2 V To in H = U V , we obtain K c =
W o = Σ which gives a balanced realization (A, b, c)n as follows.
1 1
A = Σ− 2 U To σHV o Σ− 2
1 1
(4.87)
T
b = first column of Σ V2
o, c = first row of U o Σ 2
2. Input-Normal Realization
By letting U = U o Σ and V = V To in H = U V , we obtain K c = I n and
W o = Σ2 which gives an input-normal realization (A, b, c)n as follows.
A = Σ−1 U To σHV o
(4.88)
b = first column of V To , c = first row of U o Σ
4.7 Discrete-Time Lossless Bounded-Real Lemma 91
3. Output-Normal Realization
By letting U = U o and V = ΣV To in H = U V , we obtain K c = Σ2 and
W o = I n which gives an output-normal realization (A, b, c)n as follows.
A = U To σHV o Σ−1
(4.89)
b = first column of ΣV To , c = first row of U o
4. Reduced-Order Approximation
Using SVD of the Hankel matrix and the balanced realization induced from
it, an algorithm for reduced-order approximation can be deduced. Let SVD of
H in (4.86) be partitioned as
T
Σ1 0 V o1
H = U o1 U o2 (4.90)
0 Σ2 V o2
where
Definition 4.14
A transfer function H(z) is said to be lossless bounded-real (LBR) if it is
asymptotically stable and |H(ejω )|2 = 1 holds for all ω.
An equivalent characterization of |H(ejω )|2 = 1 for all ω is that for every
finite-energy input sequence u(k), the output sequence y(k) of the system
satisfies
∞ ∞
|y(k)|2 = |u(k)|2 (4.92)
k=0 k=0
where the initial state vector x(0) is assumed to be null. Note that the
losslessness property is satisfied by all-pass filters.
AT P A + c T c = P (4.93a)
bT P b + dT d = 1 (4.93b)
A T P b + cT d = 0 (4.93c)
Proof: (Sufficiency) Assuming that the equations in (4.93) holds true,
Equation (4.93a) can be written as
P = AT [AT P A + cT c]A + cT c
= (AT )2 P A2 + (cA)T cA + cT c
(4.94)
= ···
= (AT )n P An + U Tn U n
RT R = I n+1 (4.98)
for every finite-energy input that is identically zero for k > N , where N is an
arbitrary finite positive integer. This reveals that H(z) is LBR.
(Necessity) Assume that H(z) is LBR. Let a minimal realization of H(z)
be given by (A, b, c, d)n . Since H(z) is asymptotically stable, the matrix
defined by
∞
P = (AT )i cT cAi (4.105)
i=0
is a symmetric positive-definite matrix and satisfies
P = AT P A + cT c (4.106)
By decomposing matrix P in (4.105) as P = T −T T −1 , and defining a state-
space model (A, b, c, d)n as in (4.96), we can derive
T
I n = A A + cT c (4.107)
from (4.106). Next, by LBR property of H(z),
∞ ∞
|y(k)|2 = |u(k)|2 (4.108)
k=0 k=0
4.8 Summary 95
holds for any finite-energy input, under the assumption that the initial states
are zero. In particular, suppose u(k) = 0 for k > N where N is an arbitrary
finite positive integer, then y(k) = c x(k) holds for k > N , hence
T
|y(k)|2 = x(k)T I n − A A x(k)
(4.109)
= ||x(k)||2 − ||x(k + 1)||2 for k > N
N N
|y(k)|2 + ||x(N + 1)||2 = |u(k)|2 (4.110)
k=0 k=0
because
∞
|y(k)|2 = ||x(N + 1)||2 (4.111)
k=N +1
for any finite positive integer N . This means that R defined by (4.97) is
orthogonal, and we arrive at (4.93). This completes the proof of Theorem 4.7.
4.8 Summary
In this chapter, we have presented fundamental properties of the state-space
description of linear causal dynamical systems, a method for deriving its
transfer function from a given state-space model, the concepts of the equivalent
transformation, the canonical structure decomposition, and methods for state-
space realization using the Hankel matrix. Both the state-space description
and the external (input-output) description of linear causal dynamical systems
are of significance and useful in practice. However, when it comes to choosing
the most appropriate description, the matter is often problem dependent. In
addition, we have studied a passivity property of discrete-time systems, known
as lossless bounded-real lemma, which finds applications in network synthesis
and stability analysis.
96 State-Space Models
References
[1] R. E. Kalman, “Mathematical description of linear systems,” J. SIAM
Contr., Ser. A, vol. 1, no. 2, pp. 152–192, 1963.
[2] R. E. Kalman, P. L. Falb and M. A. Arbib, Topics in Mathematical System
Theory, New York, McGraw-Hill, 1969.
[3] A. J. Tether, “Construction of minimal linear state-variable models from
finite input-output data,” IEEEE Trans. Automat. Contr., vol. AC-15,
no. 4, pp. 427–436, Aug. 1970.
[4] H. Kogo and T. Mita, Introduction to System Control Theory, Tokyo,
Japan, Jikkyo Shuppan, 1979.
[5] T. Hinamoto, “Realizations of a state-space model from two-dimensional
input-output map,” IEEE Trans. Circuits Syst., vol. CAS-27, no. 1,
pp. 36–44, Jan. 1980.
[6] V. C. Klema and A. J. Laub, “The singular value decomposition: Its
computation and some applications,” IEEEE Trans. Automat. Contr.,
vol. AC-25, no. 2, pp. 164–176, Apr. 1980.
[7] L. M. Silverman, “Optimal approximation of linear systems,” in Proc,
Joint Automat. Contr. Conf., S. F., 1980, FA8-A.
[8] T. Hinamoto and F. W. Fairman, “Separable-denominator state-space
realization of two-dimensional filters using a canonic form,” IEEE Trans.
Acoust. Speech, Signal Process., vol. ASSP-29, no. 4, pp. 846–853,
Aug, 1981.
[9] J. R. Sveinsson and F. W. Fairman, “Minimal balanced realization of
transfer function matrices using Markov parameters,” IEEEE Trans.
Automat. Contr., vol. AC-30, no. 10, pp. 1014–1016, Oct. 1985.
[10] T. Hinamoto, S. Maekawa, J. Shimonishi and A. N. Venetsanopou-
los, “Balanced realization and model reduction of 3-D separable-
denominator transfer functions,” Franklin Institute, vol. 325, no. 2,
pp. 207–219, 1988.
[11] M. S. Santina, A. R. Stubberud and G. H. Hostetter, Digital Control
System Design, 2nd ed. Orlando, FL, Saunders College Publishing,
Harcourt Brace College Publishers, 1994.
[12] P. P. Vaidyanathan, “The discrete-time bounded-real lemma in digital
filtering,” IEEE Trans. Circuits Syst., vol. CAS-32, no. 9, pp. 918–924,
Sep. 1985.
[13] R. E. Kalman and J. Bertram, “Control system design via the second
method of Liapunov, part II, discrete time systems,” ASME J. Basic
Engineering, vol. 82, pp. 394–400, 1960.
5
FIR Digital Filter Design
5.1 Preview
Digital filters with finite sequence of the impulse response are called FIR
digital filters, nonrecursive digital filters or digital transversal filters, where
“FIR” is the acronym of terms, “Finite Impulse Response”. A general FIR
digital filter of order N − 1 is described by
N
−1
y(k) = hi u(k − i) (5.1)
i=0
where u(k) and y(k) are scalar input and output, respectively, and hi for
i = 0, 1, · · · , N − 1 denote the impulse response. The transfer function of the
FIR digital filter in (5.1) can be expressed as
97
98 FIR Digital Filter Design
u(k) z -1 z -1 ... z -1
h0 h1 h2 hN-2 hN-1
... y(k)
Figure 5.1 A block diagram of an FIR digital filter.
where M (ω) is the magnitude response of the filter, and θ(ω) is the phase
characteristic of the filter. The ideal magnitude responses can commonly be
used to classify digital filters. Even if such digital filters are not realizable,
they can be approximated in practice with some acceptable tolerance.
The magnitude responses of the four typical types of ideal digital filters
are illustrated in Figure 5.2. For lowpass filter of Figure 5.2(a), the passband
and the stopband are given by 0 ≤ ω ≤ ωp and ωp < ω ≤ π, respectively.
For highpass filter of Figure 5.2(b), the stopband is given by 0 ≤ ω < ωp ,
while the passband is given by and ωp ≤ ω ≤ π, respectively. For bandpass
filter of Figure 5.2(c), the passband region is given by ωp1 ≤ ω ≤ ωp2 , and
the stopband regions are specified by 0 ≤ ω < ωp1 and ωp2 < ω ≤ π.
Finally, for bandstop filter of Figure 5.2(d), the passband regions are given
by 0 ≤ ω ≤ ωp1 and ωp2 ≤ ω ≤ π, while the stopband region is ωp1 <
ω < ωp2 . The frequencies ωp , ωp1 , and ωp2 are called the passband edges
of their respective filters. It is observed from the figure that an ideal filter
5.2 Filter Classification 99
M(ω) M(ω)
passband passband
1 1
stopband stopband
0 ωp π ω 0 ωp π ω
(a) (b)
M(ω) M(ω)
passband passband passband
1 1
has the magnitude response equal to unity in the passband and zero in the
stopband.
The specifications of magnitude responses with some acceptable tolerance
for the four typical types of digital filters are shown in Figure 5.3. For the
digital filters of Figure 5.3, the passband and the stopband allow to have some
acceptable tolerance, respectively, while the transition band regions are free
from any specifications.
For the design of a lowpass FIR digital filter, a few formulas exist for
estimating the minimum value of filter length N directly from the digital
filter specifications. Let ωp and ωs denote the normalized passband edge
frequency and the normalized stopband edge frequency, respectively, and let
δp and δs indicate the peak passband ripple and the peak stopband ripple,
respectively.
Kaiser’s Formula
A simple formula for estimating filter length N which meets the desired
specifications is given by [3]
−20 log10 ( δp δs ) − 13
N (5.4)
14.6Δ
100 FIR Digital Filter Design
M(ω) M(ω)
1 1
δp δp
δs δs
0 ωp ωs π ω 0 ωs ωp π ω
(a) (b)
M(ω) M(ω)
1 1
δp δp1 δp2
δs1 δs2 δs
where
N −1 2 N
−1 2
jω
|H(e )| = hi cos iω + hi sin iω
i=0 i=0
⎛ ⎞
N
−1
⎜ hi sin iω ⎟
⎜ ⎟
⎜ i=0 ⎟
θ(ω) = − tan−1 ⎜ N −1 ⎟
⎜ ⎟
⎝ hi cos iω ⎠
i=0
|H(ejω )| and θ(ω) in (5.6) are called the amplitude response and the phase
characteristic, respectively. It is obvious that |H(ejω )| is an even function,
and θ(ω) is an odd function. The phase delay and the group delay for the filter
in (5.6) are defined as
θ(ω) dθ(ω)
τp (ω) = − , τg (ω) = − (5.7)
ω dω
respectively.
θ(ω) = −τ ω (5.8)
which leads to
N −1
N
−1
hi cos iω sin τ ω − sin iω cos τ ω = hi sin(τ ω − iω) = 0 (5.10)
i=0 i=0
102 FIR Digital Filter Design
hi hi i
i
i = 10 i = 10
(a) (b)
Figure 5.4 Symmetric impulse responses. (a) N is odd. (b) N is even.
5.3 Linear-phase Filters 103
where
c0 = h N −1 , ck = 2h N −1 −k for 1 ≤ k ≤ (N − 1)/2
2 2
where
N
ck = 2h N −k for k = 1, 2, · · · ,
2 2
Since cos(k − 1/2)π = 0 in (5.15), it follows that H(ejπ ) = 0. This reveals
that odd-order FIR filters with symmetric impulse response are not suitable
for the design of highpass filters.
By defining
1 1
c1 = c̃1 + c̃0 , c N = c̃ N −1
2 2 2 2
(5.16)
1
ck = (c̃k + c̃k−1 ) for 2 ≤ k ≤ N/2 − 1
2
104 FIR Digital Filter Design
we obtain
N
2
1 1 1 1 1
ck cos k − ω = c̃0 cos ω + c̃1 cos ω + cos 1 + ω
2 2 2 2 2
k=1
1 1
+ c̃2 cos 1 + ω
2 2
1
+ cos 2 + ω + ···
2
(5.17)
1 N 1
+ c̃ N −1 cos −2+ ω
2 2 2 2
N 1
+ cos −1+ ω
2 2
N
−1
1 2
hi hi x
i
i
i = 10 i = 10
(a) (b)
Figure 5.5 Antisymmetric impulse responses. (a) N is odd. (b) N is even.
106 FIR Digital Filter Design
=⎣ ck sin(kω) ⎦ e−jθ(ω)
k=1
where
ck = 2h N −1 −k for 1 ≤ k ≤ (N − 1)/2,
⎧ 2
⎪
⎪ π N −1
⎨ 2 − 2 ω
⎪ for ω > 0
θ(ω) =
⎪
⎪ π N −1
⎪
⎩ − − ω for ω < 0
2 2
Since sin(k0) = sin(kπ) = 0 in (5.24), it follows that H(ej0 ) = H(ejπ ) = 0.
Therefore, even-order FIR filters with antisymmetric impulse response are
inadequate for the design of lowpass and highpass filters.
By defining
1 1
c1 = c̃0 − c̃2 , c N −1 = c̃ N −3
2 2 2 2
(5.25)
1
ck = (c̃k−1 − c̃k+1 ) for 2 ≤ k ≤ (N − 5)/2
2
we have
N −1
2
1 1
ck sin kω = c̃0 sin ω + c̃1 sin 2ω + c̃2 sin 3ω − sin ω
2 2
k=1
1 1
+ c̃3 sin 4ω − sin 2ω + c̃4 sin 5ω − sin 3ω
2 2
N −1 N −5
+ · · · + c̃ N −3 sin ω − sin ω
2 2 2
N −3
2
where
⎧
⎪
⎪ π N −1
⎨ 2 − 2 ω
⎪ for ω > 0
ck = 2h N −k for 1 ≤ k ≤ N/2, θ(ω) =
2 ⎪
⎪ π N −1
⎪
⎩ − − ω for ω < 0
2 2
Since sin(k − 1/2)0 = 0 in (5.29), it follows that H(ej0 ) = 0. Hence odd-
order FIR filters with antisymmetric impulse response are inadequate for the
design of lowpass filters.
108 FIR Digital Filter Design
By defining
1 1
c1 = c̃0 − c̃1 , cN = c̃ N
2 2 2 2 −1
(5.30)
1
ck = (c̃k−1 − c̃k ) for 2 ≤ k ≤ N/2 − 1
2
we can write
N
2
1 1 1 1 1
ck sin k − ω = c̃0 sin ω + c̃1 sin 1 + ω − sin ω
2 2 2 2 2
k=1
1 1 1
+ c̃2 sin 2 + ω − sin 1 + ω + ···
2 2 2
1 N 1
+ c̃ N −1 sin −1+ ω
2 2 2 2
N 1
− sin −2+ ω
2 2
N
−1
1 2
and a causal FIR digital filter can then be derived from (5.37) by setting
N −1
Hc (z) = z − 2 H(z).
As an example, consider the design of an ideal lowpass filter with linear
phase whose magnitude response and phase characteristic are shown in
Figure 5.6. The frequency transfer function is given by
M( ) θ (ω)
0 ω
−ωτ
0 c
(a) (b)
Figure 5.6 Ideal lowpass filter characteristics. (a) Magnitude response. (b) Phase
characteristic.
1. Rectangular Window
The rectangular window is defined by
N −1
1 for | i | ≤ 2
wi = (5.42)
N −1
0 for | i | > 2
5.4 Design Using Window Function 111
Since the Fourier series are truncated outside the N terms, the undesirable
Gibbs phenomenon, which is known to be inherently associated with the
Fourier series near the function’s discontinuities, will occur. Various windows
have been proposed to deal with this problem.
2. Bartlett Window
The Bartlett window is described by [3]
⎧
⎨ 1 − 2 | i | for | i | ≤ N −1
N −1 2
wi = (5.43)
⎩ 0 for | i | > N −1
2
4. Blackman Window
The Blackman window is specified by [3]
⎧
⎨ 0.42 + 0.5 cos( N2πi 4πi
−1 ) + 0.08 cos( N −1 ) for | i | ≤
N −1
2
wi =
⎩ 0 for | i | > N −1
2
(5.45)
Continuous profiles of these windows are depicted in Figure 5.7. For illustra-
tion purposes the amplitude responses of the FIR filter specified by (5.39) and
(5.41) with N = 31 and window {wi | − (N − 1)/2 ≤ i ≤ (N − 1)/2} being
each of the above windows are displayed in Figure 5.8.
Rectangular
1
0.8 Bartlett
0.6 Blackman
0.4 Hanning
0.2 Hamming
0
N−1 0 i N−1
− 2 2
Figure 5.7 Plots of the fixed windows shown with solid lines for clearness.
N
−1
HLP (z) = hLP
i z
−i
(5.46)
i=0
where {hLP
i } denotes the impulse response of the filter.
hHP
i = (−1)i hLP
i for i = 0, 1, · · · , N − 1 (5.47)
i=0 i=0
(5.48)
N
−1
= hLP
i e
−j(ω−π)i
= HLP (ej(ω−π) )
i=0
−20 −20
Gain, dB
Gain, dB
−40 −40
−60 −60
−80 −80
−100 −100
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
ω/π ω/π
(a) (b)
Hanning window Hamming window
0 0
−20 −20
Gain, dB
Gain, dB
−40 −40
−60 −60
−80 −80
−100 −100
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
ω/π ω/π
(c) (d)
Blackman window
0
−20
Gain, dB
−40
−60
−80
−100
0 0.2 0.4 0.6 0.8 1
ω/π
(e)
hBP
i = (2 cos ωo i)hLP
i for i = 0, 1, · · · , N − 1 (5.49)
where ωo stands for the center frequency of the passband. The bandpass
characteristic of {hBP
i } can be demonstrated by evaluating its frequency
response in terms of that of the FIR lowpass filter:
114 FIR Digital Filter Design
N
−1
HBP (ejω ) = ejωo i + e−jωo i hLP
i e
−jωi
i=0
N
−1 N
−1 (5.50)
= hLP
i e
−j(ω−ωo )i
+ hLP
i e
−j(ω+ωo )i
i=0 i=0
= HLP ej(ω−ωo ) + HLP ej(ω+ωo )
hBS BP
0 = 1 − h0 , hBS
i = −hBP
i for i = 1, 2, · · · , N − 1 (5.51)
i=1
N
−1 (5.52)
=1− hBP
i e
−jωi
i=0
= 1 − HBP (ejω )
The frequency transformation methods stated above are illustrated in
Figure 5.9.
1 1
(a) (b)
1 1
(c) (d)
Figure 5.9 Magnitude responses of ideal filters. (a) Ideal lowpass filter. (b) Ideal highpass
filter. (c) Ideal bandpass filter. (d) Ideal bandstop filter.
where ωp and ωs denote the passband edge and the stopband edge, respectively,
and the characteristics of transition band ωp < ω < ωs are not specified.
To minimize a quadratic measure of the passband and stopband error in
the frequency domain, the total error function is formulated as
ωp π
E=α |D(ejω ) − H(ejω )|2 dω + β |H(ejω )|2 dω
0 ωs (5.54)
= αEp + βEs
E = αEp + βEs
(5.55)
= α cT Ac − 2cT p + q + β cT Bc
116 FIR Digital Filter Design
where
T T
c = c0 c1 · · · c N −1 , φ(ω) = 1 cos ω · · · cos( N 2−1 ω)
2
ωp ωp ωp
A= φ(ω)φ(ω)T dω, p= φ(ω)dω, q= dω
0 0 0
π
B= φ(ω)φ(ω)T dω, c0 = h N −1
2
ωs
ck = 2 h N −1 −k for 1 ≤ k ≤ (N − 1)/2
2
Ep = cT Dc (5.59)
where ωp T
D= 1 − φ(ω) 1 − φ(ω) dω
0
5.6 Analytical Approach 117
always holds for any (N + 1)/2 × 1 vector c where λmin (λmax ) denotes the
minimum (maximum) eigenvalue of αD + βB.
Summarizing the optimal least-squares solution that minimizes E in
(5.60) with respect to vector c is given by the eigenvector c1 of αD + βB
corresponding to its minimum eigenvalue λmin , the minimum value of E is
described by Emin = λmin ||c1 ||2 .
E = (W h − d)H (W h − d)
(5.64)
= hT W H W h − 2hT Re W H d + dH d
118 FIR Digital Filter Design
where
⎡ 2π 2π 2π
⎤
e−j0 M 0 e−j0 M 1 ··· e−j0 M (N −1)
⎢ 2π 2π ⎥2π
⎢ e−j1 M 0 e−j1 M 1 ··· e−j1 M (N −1)
⎥
⎢
W =⎢ ⎥
.. .. .. ⎥ ..
⎣ . . . ⎦ .
2π 2π 2π
−j(M −1) M 0 −j(M −1) M 1 −j(M −1) M (N −1)
e e ··· e
h = (h0 h1 · · · hN −1 )T
2π 2π 2π
T
d = D(ej0 M ) D(ej1 M ) · · · D(ej(M −1) M )
W H (dH ) denotes the conjugate transpose of matrix W (d), and Re[ · ] stands
for the real part of [ · ]. By differentiating (5.64) with respect to vector h and
setting the result to null, we obtain
dE
= 2W H W h − 2Re W H d = 0 (5.65)
dh
which leads to
1
h= Re W H d (5.66)
M
where W H W = M I N because
M
−1
2π
M for p = q
(p, q)th element of W H W = ejk M (p−q) =
k=0 0 for p = q
N −1
Table 5.1 R−1 = [λij ] for 0 ≤ i, j ≤ N and N < M with N =
2
i, j λij (N odd) λij (N even)
M +N −1 M +N
i=j=0
M (M + N ) M (M + N + 1)
i = 0 and j even, 2 2
− −
or j = 0 and i even M (M + N ) M (M + N + 1)
2(M + N − 1) 2(M + N − 2)
i = j = 0 and i, j odd
M (M + N + 1) M (M + N )
2(M + N − 2) 2(M + N − 1)
i = j = 0 and i, j even
M (M + N ) M (M + N + 1)
4 4
i = j and i, j odd − −
M (M + N + 1) M (M + N )
4 4
i = j and i, j even − −
M (M + N ) M (M + N + 1)
(i + j) odd 0 0
M (ω) = ck cos(kω)
k=0
Here, the amplitude response M (ω) of the filter is a real function of frequency
ω. Given a desired amplitude response D(ω), the weighted error function is
defined as
5.7 Chebyshev Approximation 121
ε(ω) = W (ω) M (ω) − D(ω) (5.76)
where W (ω) is a positive weighting function which controls the relative size
of the peak error in the specified frequency band. The problem of designing
an FIR digital filter, in this case, is to iteratively adjust the coefficients ci ’s
of the amplitude response M (ω) so that the peak absolute value of ε(ω) is
minimized.
Suppose the minimum of the peak absolute value of ε(ω) in a band ωa ≤
ω ≤ ωb is εo , then the absolute value satisfies
1, in passband
D(ω) = (5.78)
0, in stopband
and it is also required that the amplitude response M (ω) satisfies the above
desired response with a ripple of ±δp in the passband and a ripple of δs in
the stopband. Hence, from (5.76) the weighting function can be chosen as
either of
1, in passband
W (ω) = (5.79)
δp /δs , in stopband
and
δs /δp , in passband
W (ω) = (5.80)
1, in stopband
The optimization problem encountered here is to determine the coefficients ci ’s
of M (ω) in (5.75) that minimize the peak absolute value ε of the weighted
approximation error ε(ω) of (5.76) over specified frequency bands R. As
will be shown below, this problem can be solved by applying the alternation
theorem from the theory of Chebyshev approximation [3].
dε(ω)
=0 (5.81)
dω
Since W (ω) and D(ω) are piecewise constant in the passband and the
stopband, from (5.76) it follows that
% %
dε(ω) %% dM (ω) %%
= =0 (5.82)
dω %ω=ωi dω %ω=ωi
which implies that the magnitude response M (ω) also has peaks at ω = ωi .
The Chebyshev polynomials of first kind is defined as
hence
T0 (x) = 1 because cos(0 ω) = 1
T1 (x) = x because cos(1ω) = cos(ω)
T2 (x) = 2x2 − 1 because cos(2ω) = 2 cos2 (ω) − 1
T3 (x) = 4x3 − 3x because cos(3ω) = 4 cos3 (ω) − 3 cos(ω)
..
.
Tn+1 (x) = 2xTn (x) − Tn−1 (x) for n = 1, 2, · · · in general
(5.84)
The amplitude response M (ω) in (5.75) can be expressed as a power series in
cos(ω), i.e.,
N −1
2
stopband. Also, note that |ε(ω)| is a maximum at the band edges ω = ωp and
ω = ωs and hence, M (ω) has extrema at these frequencies. Moreover, M (ω)
may also have extrema at ω = 0 and ω = π. As a result, there exist at most
(N + 3)/2 extremal frequencies.
To obtain the optimal solution for the unknown ck ’s and ε under the
assumption that the (N + 3)/2 extremal frequencies are known, we need
to solve the set of (N + 3)/2 equations
W (ωi ) [M (ωi ) − D(ωi )] = (−1)i ε for 0 ≤ i ≤ (N + 1)/2 (5.86)
which is equivalent to
⎡ ⎤
1 cos(ω0 ) ··· cos( N 2−1 ω0 ) −1
W (ω0 )
⎢ ⎥⎡ ⎤
⎢1 cos(ω1 ) ··· cos( N 2−1 ω1 ) 1
W (ω1 ) ⎥ c0
⎢ ⎥
⎢ .. .. .. .. .. ⎥ ⎢ c1 ⎥
⎢. . . . . ⎥⎢ ⎥
⎢ N −1 N −3 ⎥ ⎢ .. ⎥
⎢ ⎥ ⎢ ⎥
⎢ 1 cos ω N −1 · · · cos 2 ω N −1 2 ⎥ ⎢ . ⎥
(−1)
⎢ 2 2 W ω N −1 ⎥ ⎣c N −1 ⎦
⎢ ⎥
⎢ N −1 ⎥
2
ε
2
⎣ N +1 (−1) ⎦
1 cos ω N +1 · · · cos 2 ω N +1 2
2 2 W ω N +1 (5.87)
2
⎡ ⎤
D(ω0 )
⎢ D(ω1 ) ⎥
⎢ ⎥
⎢ ⎥
⎢ .
.. ⎥
=⎢ ⎥
⎢ ⎥
⎢D ω N −1 ⎥
⎣ 2 ⎦
D ω N +1
2
The above simultaneous equations can be solved in principle for the unknown
parameters provided that the locations of the (N + 3)/2 extremal frequencies
are known a priori. This problem is resolved by the Remez exchange algorithm
outlined below.
(−1)i ε
M (ωi ) = + D(ωi ) for 0 ≤ i ≤ (N + 1)/2 (5.88)
W (ωi )
where
N +1
2
cos(ω) − cos(ωl )
Pk [cos(ω)] = Π for 0 ≤ k ≤ (N + 1)/2
l=0, l=k cos(ωk ) − cos(ωl )
Step 5: Compute the new weighted error function ε(ω) of (5.76) at a dense
set S of frequencies where S >> (N − 1)/2 and the transition band
is excluded. Setting S 16(N − 1) is adequate in practice.
Step 6: Determine the (N + 3)/2 new extremal frequencies from the values
of ε(ω) evaluated at the dense set of frequencies.
Step 7: Stop if the peak values ε are approximately equal. Otherwise, go back
to Step 2.
The above arguments can be applied to the other type of linear-phase FIR
digital filtes (Type 2, Type 3, and Type 4) with the slight modifications of the
algorithm [3].
= z −1 HN −1 (z)
= H̃N −1 (z)
(5.92)
which is equivalent to
! "! " ! "
hN −1 −h0 HN (z) z −1 HN −1 (z)
= (5.93)
−h0 hN −1 H̃N (z) H̃N −1 (z)
where ⎡ ⎤ ⎡ ⎤
h1h1 hN −1 − h0 hN −2
⎢ ⎥ ⎢h h
h2 ⎥
⎢ ⎥ ⎢ 2 N −1 − h0 hN −3 ⎥
⎢ ⎥=⎢ ⎥
⎢ ⎥ ⎢
.. .. ⎥
⎣ ⎦ ⎣. . ⎦
hN −1 2
hN −1 − h02
where
h0 hN −1
k0 = , Δ0 =
hN −1 (hN −1 + h0 )(hN −1 − h0 )
A block diagram of the system in (5.94) is illustrated in Figure 5.10.
Similarly, from the transfer functions HN −1 (z) and H̃N −1 (z), we obtain
! " ! "! "! "
HN −1 (z) 1 k1 z −1 0 HN −2 (z)
= Δ1 (5.95)
H̃N −1 (z) k1 1 0 1 H̃N −2 (z)
126 FIR Digital Filter Design
0
HN-1(z) z -1 HN (z)
k0
k0
~ 0 ~
HN-1(z) HN ( z)
Figure 5.10 Normalized lattice structure of a section.
where
h1 hN −1
k1 = , Δ1 =
hN −1 (hN −1 + h1 )(hN −1 − h1 )
Eventually, we arrive at
! " ! "! "! "
H2 (z) 1 kN −2 z −1 0 H1 (z)
= ΔN −2
H̃2 (z) kN −2 1 0 1 H̃1 (z)
! "! " (5.96)
1 kN −2 z −1
= ΔN −2 ΔN −1
kN −2 1 1
0 1
HN-2(z) z -1 z -1 HN (z)
k1 k0
k1 k0
0 1
~ ~
HN-2(z) HN ( z)
Figure 5.11 Normalized lattice structure of cascaded two sections.
5.8 Cascaded Lattice Realization of FIR Digital Filters 127
! " ! "! "! "! "
HN (z) 1 k0 z −1 0 1 k1 z −1 0
=Δ ···
H̃N (z) k0 1 0 1 k1 1 0 1
! " ! −1 " (5.98)
1 kN −2 z
kN −2 1 1
N
= H N (z) ± z − 2 H̃ N (z)
2 2
where positive sign is for the symmetric case, while negative sign is for the
antisymmetric case and
N
H N (z) = h0 + h1 z −1 + · · · + h N −1 z −( 2 −1)
2 2
N
H̃ N (z) = h N −1 + h N −2 z −1 + · · · + h0 z −( 2 −1)
2 2 2
A block diagram of the system in (5.99) is drawn in Figure 5.13 where the
(N/2 − 1)th-order lattice structure is used and Δ = Δ0 Δ1 · · · ΔN/2−1 .
Input
z -1 z -1 z -1 HN (z)
kN - 2 k1 k0
kN - 2 k1 k0
~
HN ( z)
Input
z -1 z -1
kN/2-2 k0 Output
kN/2-2 k0
z -N/2
where the passband edge and the stopband edge are ωp = 0.3π and ωs =
0.35π, respectively, and the order of the filter is assumed to be N − 1 = 30.
⎡ ⎤ ⎡ ⎤
h0 h1 h2 h3 0.058420 0.154451 0.109441 −0.069545
⎢ h4 h5 h6 h7 ⎥ ⎢ −0.226197 −0.181544 0.078904 0.339349 ⎥
⎢ ⎥ = 10 ⎢
−1 ⎥
⎣ h8 h9 h10 h11 ⎦ ⎣ 0.311192 −0.085985 −0.565692 −0.620779 ⎦
h12 h13 h14 h15 0.090398 1.411959 2.704779 3.241437
−20
1
Gain, dB
−40
−60
0.5
−80
−100
0 0.2 0.4 0.6 0.8 1
0 0.5 1 ω/π ω/π
jω
jω |H(e )|
|H(e )|
0
1 −20
Gain, dB
−40
0.5 −60
−80
−100
0 0.2 0.4 0.6 0.8 1
0 0.5 1 ω/π ω/π
jω
|H(e )|
jω
|H(e )| 0
−20
1
Gain, dB
−40
−60
0.5
−80
−100
0 0.2 0.4 0.6 0.8 1
0 0.5 1 ω/π ω/π
⎡ ⎤ ⎡ ⎤
h0 h1 h2 h3 0.063576 0.183391 0.133357 −0.072744
⎢ h4 h5 h6 h7 ⎥ ⎢ 0.354328 ⎥
⎢ ⎥ = 10−1 ⎢ −0.251437 −0.205860 0.075066 ⎥
⎣ h8 h9 h10 h11 ⎦ ⎣ 0.328648 −0.081734 −0.575639 −0.635634 ⎦
h12 h13 h14 h15 0.081241 1.411178 2.710172 3.248457
S = {ωi ∈ Ω | 0 ≤ ωi ≤ ωp } ∪ {ωi ∈ Ω | ωs ≤ ωi ≤ π}
jω
|H(e )|
jω
|H(e )| 0
−20
1
Gain, dB
−40
−60
0.5
−80
−100
0 0.2 0.4 0.6 0.8 1
0 0.5 1 ω/π ω/π
jω
|H(e )|
jω
|H(e )| 0
−20
1
Gain, dB
−40
−60
0.5
−80
−100
0 0.2 0.4 0.6 0.8 1
0 0.5 1 ω/π ω/π
&'
1000 2
|D(ejωi )| − |H(ejωi )|
i=0
ε2 = &' × 100
1000 jωi )|2
i=0 |D(e
% %
max % |D(ejωi )| − |H(ejωi )| %
0≤i≤1000
ε∞ = × 100
max |D(ejωi )|
0≤i≤1000
5.10 Summary
This chapter has shown that exact linear-phase responses can be achieved by
imposing either symmetric or antisymmetric condition on the FIR filter’s coef-
ficients. Several window functions have been introduced with their application
to FIR digital filter design. An approach for designing least squares linear-
phase FIR digital filters that minimize a quadratic measure has been studied.An
eigenfilter method for designing least squares linear-phase FIR digital filters
has been presented in which an eigenvector corresponding to the minimum
eigenvalue of a symmetric positive-definite matrix has been computed to
obtain the optimal solution. A closed-form least square solution to the problem
of analytically designing linear-phase FIR digital filters has been given. The
Parks-McClellan algorithm based on the minimax optimality criterion has
been reviewed. A method for realizing FIR digital filters by cascaded lattice
forms has also been examined. Finally, performance comparisons among these
algorithms have been performed through a numerical example.
134 FIR Digital Filter Design
References
[1] A. V. Oppenheim and R. W. Schafer, Digital Signal Processing,
NJ: Prentice-Hall, 1975.
[2] A. Antoniou, Digital Filters, 2nd ed. NJ: McGraw-Hill, 1993.
[3] S. K. Mitra, Digital Signal Processing, 3rd ed. NJ: McGraw-Hill, 2006.
[4] S. Takahashi and M. Ikehara, Digital Filters, Tokyo, Japan, Baifukan,
1999.
[5] P. P. Vaidyanathan and T. Q. Nguyen, “Eigenfilters: A new approach to
least-squares FIR filter design and applications including Nyquist filters,”
IEEE Trans. Circuits Syst., vol. CAS-34, no. 1, pp. 11–23, Jan. 1987.
[6] M. O. Ahmad and J.-D. Wang, “An analytical least square solution to
the design problem of two-dimensional FIR filters with quadrantally
symmetric or antisymmetric frequency response,” IEEE Trans. Circuits
Syst., vol. 36, no. 7, pp. 968–979, July 1989.
[7] T. W. Parks and J. H. McClellan, “Chebyshev approximation for non-
recursive digital filters with linear phase,” IEEE Trans. Circuits Theory,
vol. CT-19, no. 2, pp. 189–194, Mar. 1972.
[8] T. Higuchi, Fundamentals of Digital Signal Processing, Tokyo, Japan,
Shokodo, 1986.
[9] M. Hagiwara, Digital Signal Processing, Tokyo, Japan, Morikita Pub-
lishing, 2001.
6
Design Methods Using Analog Filter Theory
6.1 Preview
One of the approaches to the design of an IIR digital filter is to use analog
filter theory in conjunction with bilinear transformation that maps frequencies
in the analog domain to the digital domain. This indirect design method works
well, especially for the design of standard IIR digital filters such as lowpass,
highpass, bandpass, and bandstop filters. This chapter starts by a brief review
of several design techniques for analog filters. These include designs based
on Butterworth, Chebyshev, inverse-Chebyshev, and elliptic approximations
as well as analog-filter approximations by transformations which transform
normalized lowpass analog filters to denormalized lowpass, highpass, band-
pass, and bandstop analog filters. The bilinear transformation method for the
design of IIR digital filters is then studied in detail and illustrated by a design
example.
135
136 Design Methods Using Analog Filter Theory
D(s)D(−s) N (s)
L(−s2 ) = , H(s) =
N (s)N (−s) D(s)
where N (s) and D(s) are polynomials in s. To ensure the stability of the
analog approximation, the poles of H(s) (i.e. the zeros of polynomial D(s))
must lie strictly inside the left-half s-plane.
where
ej(2k−1)π/2n for even n
sk =
ej(k−1)π/n for odd n
The term “normalized” refers to the constraint that at s = jω with ω = 1,
L(1) = 2. As a result, the magnitude of √
the normalized Butterworth filter at
ω = 1 assumes the value |HN (j)| = 1 2 0.707, namely a 3 dB loss
relative to the filter gain at ω = 0.
where
(n − 1)/2 for odd n s − 1/p0 for odd n
r= and D0 (s) =
n/2 for even n 1 for even
and constant H0 and poles pi are calculated for a given Ap > 0 (in dB) as
follows:
1/2
ε = 100.1Ap − 1
1 1
p0 = σ(n+1)/2 with σ(n+1)/2 = − sinh sinh−1
n ε
pi = σi + jωi for i = 1, 2, . . . , r
1 1 (2i − 1)π
σi = − sinh sinh−1 sin
n ε 2n
1 1 (2i − 1)π
ωi = cosh sinh−1 cos
n ε 2n
r 2
−p0 i=1 |pi | for odd n
H0 =
10−0.05Ap ri=1 |pi |2 for even n
where
(n − 1)/2 for odd n s − 1/p0 for odd n
r= and D0 (s) =
n/2 for even n 1 for even n
and constant H0 , zeros zi , and poles pi are calculated for a given Aa > 0 (in
dB) as follows:
138 Design Methods Using Analog Filter Theory
−1/2
δ = 100.1Aa − 1
zi = j cos (2i−1)π
2n for i = 1, 2, · · · , r
1
p0 = σ(n+1)/2 with σ(n+1)/2 = − sinh n sinh−1 1
δ
pi = σi + jωi for i = 1, 2, · · · , r
1
σi = − sinh n sinh−1 1
δ sin (2i−1)π
2n
1
ωi = cosh n sinh−1 1
δ cos (2i−1)π
2n
⎧ r |zi |2
⎪ 1
⎪ for odd n
⎨ −p0 i=1 |pi |2
H0 =
⎪
⎩ r
⎪ |zi |2
for even n
i=1 |pi |2
where
(n − 1)/2 for odd n s + σ0 for odd n
r= and D0 (s) =
n/2 for even n 1 for even n
HLP(s̄) = HN (s)|s=λs̄
HHP(s̄) = HN (s)|s=λ/s̄
The transfer function of the digital filter can be expressed in terms of its
impulse response as
∞
HD (z) = hD (k)z −k (6.6)
k=0
and
n
n
k
hA (kT ) = Ki epi kT = Ki epi T
i=1 i=1
which in conjunction with (6.5) leads (6.6) to an IIR transfer function
∞
n n
p T k −n Ki z
HD (z) = Ki e i
z = (6.8)
z − epi T
k=0 i=1 i=1
It is noted that HD (z) in (6.8) also has n poles and that if the analog HA (s)
is stable, i.e., all pi have negative real parts, then the magnitudes of eP iT are
less than one, hence the digital HD (z) is also stable.
The design method may be summarized in three steps as follows:
1. Design a prototype analog filter with transfer function HA (s).
2. Obtain a partial fraction expansion of HA (s) as in (6.7).
3. Use the values of Ki and pi obtained from Step 2 to construct a digital
transfer function HD (z) using (6.8).
One may choose one of the methods in Sections 6.2.1 and 6.2.2 to implement
Step 1. To illustrate Steps 2 and 3 of the above method, consider the
transfer function of the sixth-order normalized lowpass Butterworth filter
given by [1]
1
HA (s) =
(s2 + 0.517638s + 1)(s2 + 1.414214s + 1)(s2 + 1.931852s + 1)
6.2 Design Methods Using Analog Filter Theory 143
with
K1,2 = −1.523603, K3,4 = 0.204124 ± j0.353553
K5,6 = 1.319479 ∓ j2.285412, p1,2 = −0.707107 ± j0.707107
p3,4 = −0.258819 ± j0.965926, p5,6 = −0.965926 ± j0.258819
Now using (6.4) with T = 1, one obtains
N1 (z) N2 (z) N3 (z)
HD (z) = + +
D1 (z) D2 (z) D3 (z)
where
N1 (z) −3.047201z 2 + 1.143354z
= 2
D1 (z) z − 0.749706z + 0.243117
N2 (z) 0.408248z 2 − 0.628224z
= 2
D2 (z) z − 0.877962z + 0.595926
N3 (z) 2.638959z 2 − 0.525732z
= 2
D3 (z) z − 0.735906z + 0.144880
The largest magnitude of the poles of HD (z) is 0.771963, hence the IIR digital
filter is stable. The magnitude response of HD (z) is depicted in Figure 6.1.
and
ω ω
θ = tan−1 + tan−1 (6.10b)
T /2 + σ T /2 − σ
From (6.10a) and (6.10b), it is concluded that the bilinear transformation maps
the open right-half s plane onto the exterior to the unit circle of the z plane,
j axis of the s plane onto the unit circle of the z plane, and open left-half s
plane onto the interior of the unit circle of the z plane. In addition, if in (6.9)
we let s = jω and z = ejΩT , then we obtain a frequency interpretation of the
bilinear transformation that
2 ΩT
HD (ejΩT ) = HA (jω) if ω = tan (6.11)
T 2
Note that ω Ω if Ω ≤ 0.3/T . In other words, the digital filter has the
same frequency response as the prototype analog filter as long as Ω ≤ 0.3/T .
For high frequencies the relation between ω and Ω becomes nonlinear as can
be seen from (6.11). The distortion introduced by the bilinear transformation
in the frequency scale of the digital filter is known as the warping effect
[1]. As far as the amplitude response is concerned, the warping effect can be
eliminated by prewarping the analog filter as follows. Suppose ω1 , ω2 , · · · , ωL
are the passband and stopband edges of the analog filter. In order for the digital
filter to have passband and stopband edges Ω1 , Ω2 , · · · , ΩL , the analog filter
should be prewarped before application of the bilinear transformation so that
its passband and stopband edges ω1 , ω2 , · · · , ωL satisfy
2 Ωi T
ωi = tan for i = 1, 2, · · · , L (6.12)
T 2
Lowpass, highpass, bandpass, and bandstop digital IIR filters satisfying
prescribed specifications can be designed by first transforming a normali-
zed analog lowpass transfer function HN (s) into a denormalized lowpass,
highpass, bandpass, and bandstop transfer function (see Section 6.2.3.2):
It is of interest to note that the second step of the design can be carried out
with ease when the transfer function of the analog filter is given in terms of
146 Design Methods Using Analog Filter Theory
where
T (a) T (a)
1+ 2 zi 1+ 2 pi
zi = , pi = (6.16b)
T (a) T (a)
1− 2 zi 1− 2 pi
and m 2 (a)
i=1 T − zi
A= (6.16c)
n 2 (a)
i=1 T − pi
Design Procedure
To describe the design procedure in detail, let the design specifications of a
digital IIR filter be given in terms of passband edge Ωp (Ωp1 and Ωp2 for
bandpass and bandstop filters) (rad/s), stopband edge Ωa (Ωa1 and Ωa2
for bandpass and bandstop filters) (rad/s), sampling frequency ωs (rad/s),
maximum passband loss Ap (dB), and minimum stopband attenuation Aa
(dB). The sampling period T is evaluated as T = 2π/ωs .
1. For lowpass (LP) and highpass (HP) filters, compute parameter K0 as
tan(Ωp T /2)
K0 = (6.17)
tan(Ωa T /2)
For bandpass (BP) and bandstop (BS) filters, compute
Ωp2 T Ωp1 T Ωp1 T Ωp2 T
KA = tan 2 − tan 2 , KB = tan 2 tan 2
KA tan(Ωa1 T /2)
KC = tan Ωa1 T Ωa2 T
2 tan 2 , K1 =
KB − tan2 (Ωa1 T /2)
KA tan(Ωa2 T /2)
K2 = − KB
tan2 Ωa2 T /2
6.2 Design Methods Using Analog Filter Theory 147
6.3 Summary
This chapter has shown that the design of IIR filters can be achieved using
analog filter theory in conjunction with bilinear transformation. Several
methods for the design of analog filters have been reviewed. The bilinear
150 Design Methods Using Analog Filter Theory
References
[1] A. Antoniou, Digital Signal Processing: Signals, Systems, and Filters,
McGraw-Hill, New York, 2006.
[2] T. W. Parks and C. S. Burrus, Digital Filter Design, John Wiley,
New York, 1987.
[3] L. B. Jackson, Digital Filters and Signal Processing, 3rd ed., Kluwer
Academic, Boston, 1996.
7
Design Methods in the Frequency Domain
7.1 Preview
This chapter presents an alternative approach to the design of IIR digital
filters by applying optimization methods [2] where an objective function is
formulated in the frequency domain based on an error between certain desired
and actual magnitude and/or phase responses. Specifically, we present four
methods for the design of stable IIR filters, which are based on mean squared
error minimization, equal-ripple minimization of squared magnitude error,
weighted least squares subject to stability, and minimization of maximum
error subject to stability, respectively. In addition, two Remez exchange type
of techniques for designing an all-pass digital filter to approximate a desired
phase response are also examined.
151
152 Design Methods in the Frequency Domain
If only one of the poles, say pi1 , is an unstable pole, then replacing the filter
section in (7.4) with
1 + ai z −1 + bi z −2
−pi1 1 − p−1
i1 z
−1 (1 − p z −1 )
i2
stabilizes the filter section without changing its magnitude response. Similarly,
if both poles are unstable, then replacing the section in (7.4) with
1 + ai z −1 + bi z −2
pi1 pi2 1 − p−1
i1 z
−1 1 − p−1i2 z
−1
M
ai z −i
A(z)
H(z) = = i=0 with b0 = 1 (7.5)
B(z)
N
bi z −i
i=0
The squared magnitude response of the filter can be expressed as
A(z)A(z −1 )
|H(z)|2 = H(z)H(z −1 ) =
B(z)B(z −1 )
M M
M
ai z −i ai z i ci z −i
i=−M
= i=0 i=0
N = N
N
bi z −i bi z i di z −i
i=0 i=0 i=−N
It follows that
C(ω) − [F (ω) − ε(ω)] D(ω) ≥ 0
(7.7)
−C(ω) + [F (ω) + ε(ω)] D(ω) ≥ 0
In addition, (7.6) implies that
C(ω) ≥ 0
(7.8)
D(ω) ≥ 0
156 Design Methods in the Frequency Domain
which are held in the entire baseband. By adding an auxiliary variable η to the
right-hand side of each constraint in (7.7) and (7.8), one seeks for a solution
of the optimization problem
minimize η
subject to: C(ω) − [F (ω) − ε(ω)] D(ω) + η ≥ 0
−C(ω) + [F (ω) + ε(ω)] D(ω) + η ≥ 0 (7.9)
C(ω) + η ≥ 0
D(ω) + η ≥ 0
where F (ω) and ε(ω) are given as design specifications with frequency ω vary-
ing over a dense but finite set of grids in the frequency bands of interest, and
the unknowns are coefficients {ci | i = 0, 1, · · · , M }, {di | i = 0, 1, · · · , N },
and η. Since the objective function and all constraints are linearly dependent
on the design parameters, (7.9) is a linear programming (LP) problem which
can be solved efficiently [2].
Concerning the solution of problem (7.9) for given F (ω) and ε(ω), there
are three possibilities:
(i) Problem (7.9) has a solution with η = 0. This means there exists a
solution satisfying all constraints in (7.7) and (7.8), and hence a stable
IIR filter H(z) satisfying the design specifications can be obtained by
spectrum factorization [5] of the optimized C(ω)/D(ω).
(ii) Problem (7.9) has a solution with η < 0. This means that there exist IIR
filters with design specifications more restrictive than the current error
tolerance. Such designs can be obtained by imposing a more demanding
ε(ω) such that the solution of (7.9) yields η = 0. Once this is achieved, a
stable IIR filter H(z) satisfying the design specifications can be obtained
by spectrum factorization of the optimized C(ω)/D(ω).
(iii) Problem (7.9) has a solution with η > 0. This means that IIR filters with
current specifications do not exist. In order to produce a design, a less
demanding ε(ω) should be used so that the solution of (7.9) yields η = 0.
Once this is achieved, a stable IIR filter is obtained.
A transfer function H(z) satisfying the design specifications can be obtained
by spectrum factorization of the optimized C(ω)/D(ω).
As an example, the algorithm was applied to design a fourth-order IIR
lowpass filter with normalized passband edge ωp = 0.4π and stopband
edge ωa = 0.5π. Suppose it is required that the magnitude responses of
7.2 Design Methods in the Frequency Domain 157
the IIR filter in the passband and stopband vary in the range [1 − δ, 1 + δ]
and [0, δ] respectively, then the passband and stopband squared magnitude
responses, C(ω)/D(ω), will vary in the range [1 + δ 2 − 2δ, 1 + δ 2 + 2δ] and
[0, δ 2 ] respectively. Hence the desired magnitude-squared function F (ω) and
tolerance function ε(ω) are given by
1 + δ 2 for ω ∈ [0, ωp ]
F (ω) =
δ 2 2 for ω ∈ [ωa , π]
and
2δ for ω ∈ [0, ωp ]
ε(ω) =
δ2 2 for ω ∈ [ωa , π]
In the algorithm implementation, a total of 150 frequency grids uniformly
placed in the passband and stopband were used for the first two constraints
in (7.9), while 120 frequency grid uniformly placed on [0, π] were used for
the last two constraints in (7.9). By trial and error, it was found that with
δ = 0.02645, the LP problem in (7.9) has a solution with η = −7.38 × 10−5
which is practically zero. The largest magnitude of the poles of the IIR filter
obtained from the LP solution was found to be 0.8961, and the magnitude
response of the filter is depicted in Figure 7.2.
where
Qk = W (ω)g k (ω)g H
k (ω) dω
Ω
jω
qk = Re W (ω) H̄(e , xk ) − H̄d (ω) g k (ω) dω
Ω
2
κ= W (ω) H(ejω , x k ) − Hd (ω) dω
Ω
subject to two constraints: the filter is stable and δ is small in magnitude.
In order to implement the iteration, we use (7.10) to evaluate the gradient
g k (ω) as ⎡ ⎤
∂H(ejω , x k ) ∂a1
⎢ ⎥
⎢ ⎥
⎢ ∂H(ejω , x k ) ∂b1 ⎥
⎢ ⎥
⎢ ⎥
⎢ ∂H(ejω , x ) ∂c ⎥
⎢ k 1 ⎥
g k (ω) = ⎢
⎢ ⎥
⎥ (7.13a)
⎢ ∂H(ejω , x k ) ∂d1 ⎥
⎢ ⎥
⎢ ⎥
⎢ .. ⎥
⎢ . ⎥
⎣ ⎦
∂H(ejω , x k ) ∂A
with
∂H(ejω , x k ) e−jω H(ejω , x k )
=
∂ai 1 + ai e−jω + bi e−j2ω
∂H(ejω , x k ) e−j2ω H(ejω , x k )
=
∂bi 1 + ai e−jω + bi e−j2ω
∂H(ejω , x k ) e−jω H(ejω , x k )
=− (7.13b)
∂ci 1 + ci e−jω + di e−j2ω
∂H(ejω , x k ) e−j2ω H(ejω , x k )
=−
∂di 1 + ci e−jω + di e−j2ω
∂H(ejω , x k ) H(ejω , x k )
=
∂A A
for i = 1, 2, · · · , K. The desired frequency response is typically specified in
terms of desired magnitude response M (ω) and phase response θ(ω), hence
one can write
Hd (ω) = M (ω)ejθ(ω) = M (ω) cos θ(ω) + jM (ω) sin θ(ω) (7.14)
160 Design Methods in the Frequency Domain
To ensure the filter’s stability, the denominator parameters of each 2nd -order
section must lie inside the stability triangle (see Section 3.2.6 of Chapter 3),
namely,
di < 1, ci + di > −1, ci − di < 1
These constraints can be expressed as Eui + e > 0 with
⎡ ⎤ ⎡ ⎤
1 1 1
⎢ ⎥ ci ⎢ ⎥
E = ⎣ −1 1 ⎦, ui = , e=⎣ 1 ⎦
di
0 −1 1
To prevent the poles from being too close to the boundary of the stability
region, one may require that Eui + (1 − τ )e ≥ 0 with a small τ > 0. Let
I i be a selection matrix such that ui = I i x, then the stability constraints are
expressed as E i x + (1 − τ )e ≥ 0 where E i = EI i for i = 1, 2, · · · , K. The
kth iteration of the design is now performed by solving the convex quadratic
programming (QP) problem
minimize δ T Qk δ + 2δ T qk + κ
subject to: E i (x k + δ) + (1 − τ )e ≥ 0 for i = 1, 2, · · · , K (7.15)
|(δ)j | ≤ β for j = 1, 2, · · · , 4K + 1
Figure 7.3 The frequency characteristics of the IIR filter. (a) Magnitude response (left side).
(b) Passband phase response (right side).
provided that δ is small, where g k (ω) is the gradient of H(ejω , x) at x k and
can be evaluated using (7.13a) and (7.13b). The optimal updating vector δk is
obtained by minimizing
162 Design Methods in the Frequency Domain
E∞ (x + δ) = maximize W (ω) H(ejω , x + δ) − Hd (ω)
ω∈Ω
maximize W (ω) H(ejω , x k ) + g Tk (ω)δ − Hd (ω)
ω∈Ω
(7.18)
By introducing an upper bound η of W (ω) H(e , x k ) + g k (ω)δ − Hd (ω)
jω T
minimize η
subject to: W (ω) g Tk (ω)δ + Dk (ω) ≤ η ω∈Ω
minimize η
subject to: W (ω) g Tk (ω)δ + Dk (ω) ≤ η ω∈Ω
(7.19)
E i (x k + δ) + (1 − τ )e ≥ 0 for i = 1, 2, · · · , K
|δ j | ≤ β for j = 1, 2, · · · , 4K + 1
where scalar bound η and increment vector δ are variables, the last two sets of
constraints are linear, while the first set of constraints are of second-order cone
type [2]. To see this, only a set of dense discrete frequencies Ωd = {ωi | i =
1, 2, · · · , L} ⊂ Ω is considered, and for each ωi ∈ Ωd the first constraint in
(7.19) is written as
W (ωi )g T (ωi ) W (ωi )Drk (ωi )
rk
δ+ ≤ η for i = 1, 2, · · · , L
W (ωi )g Tjk (ωi ) W (ωi )Djk (ωi )
(7.20)
where g rk (ωi ) and g jk (ωi ) are the real and imaginary parts of g k (ωi ),
respectively, and Drk (ωi ) and Djk (ωi ) are the real and imaginary parts
of Dk (ω), respectively. Replacing the first set of constraints in (7.19) with
those in (7.20), one obtains a standard second-order cone programming
(SOCP)problem as
7.2 Design Methods in the Frequency Domain 163
minimize η
W (ω )g T (ω ) W (ωi )Drk (ωi )
i rk i
subject to: T δ + ≤η
W (ωi )g jk (ωi ) W (ωi )Djk (ωi )
(7.21)
for i = 1, 2, · · · , L
E i (x k + δ) + (1 − τ )e ≥ 0 for i = 1, 2, · · · , K
|(δ)j | ≤ β for j = 1, 2, · · · , 4K + 1
Figure 7.4 The frequency characteristics of the IIR filter. (a) Magnitude response (left side).
(b) Passband phase response (right side).
164 Design Methods in the Frequency Domain
an + an−1 z −1 + · · · + a1 z −(n−1) + z −n
H(z) =
1 + a1 z −1 + · · · + an−1 z −(n−1) + an z −n
n
ak z k (7.22)
= z −n k=0
n , a0 = 1
ak z −k
k=0
where ⎛ ⎞
n
⎜ ak sin kω ⎟
⎜ k=0 ⎟
θ(ω) = −nω + 2 tan−1 ⎜
⎜ n
⎟
⎟
⎝ ⎠
ak cos kω
k=0
n
ak ejkω
1 −jnω k=0
E(ejω ) = e n − ejd(ω)
2
ak e−jkω
k=0
n
% nω+d(ω) nω+d(ω)
&
ak ej(kω− 2 ) − e−j(kω− 2 )
1 −j nω−d(ω) k=0
= e 2 · n
2
ak e−jkω
k=0
n
% nω + d(ω) &
ak sin kω −
nω−d(ω) 2
k=0
= je−j 2 · n
ak e−jkω
k=0
(7.25)
From (7.25), the amplitude Ê(ejω ) of the frequency response error in (7.24)
is found to be
n
% nω + d(ω) &
ak sin kω −
2
Ê(ejω ) = k=0 n (7.26)
ak e−jkω
k=0
The Remez algorithm (see Section 5.7) can be applied to the numerator
in (7.26) to minimize the amplitude error in (7.26) iteratively subject to
some linearized constraints as detailed below. We first choose n + 1 initial
values of extremal frequencies ωi for i = 0, 1, · · · , n over a frequency
domain of interest appropriately. Then we design an all-pass digital filter
so that Ê(ejω ) alternates in equiripple with respect to value 0 at n + 1
extremal frequencies over a frequency domain of interest. Hence, (7.26) is
written as
Ê(ejωi ) = (−1)i δ (7.27)
where δ an initial amplitude error. By substituting (7.26) into (7.27) and
multiplying the both sides by |A(ejωi )|, we obtain
166 Design Methods in the Frequency Domain
n
% nωi + d(ωi ) &
ak sin kωi − = (−1)i δ |A(ejωi )| for i = 0, 1, · · · , n
2
k=0
(7.28)
where
n
|A(ejω )| = ak e−jkω
k=0
'
(% &2 % &2
( n n
=) ak cos kω + ak sin kω
k=0 k=0
where
% nωi + d(ωi ) &
φ(i, k) = sin kωi −
2
The above simultaneous equations can be solved for the filter coefficients
{ai | i = 0, 1, · · · , n} provided that the locations of the n + 1 extremal
frequencies are known a priori. However, the resulting Ê(ejω ) is not always
equiripple over a frequency domain of interest. To make Ê(ejω ) equiripple,
the n + 1 locations ωi for i = 0, 1, · · · , n are adjusted iteratively over a
frequency domain of interest by employing the Remez exchange algorithm
which is a very efficient iterative procedure for determining the locations of
the extremal frequencies. Step-by-step algorithmic details are given below,
where new extremal frequencies of Ê(ejω ), say ωi , replace previous extremal
frequencies {ωi | i = 0, 1, · · · , n}, and the simultaneous equations in (7.29)
are solved again, and this process continues until
where
nω + d(ω)
ϕk (ω) = kω −
2
From (7.32), the phase characteristic error can be expressed as
⎛ n ⎞
⎜ ak sin ϕk (ω) ⎟
⎜
−1 ⎜ k=0
⎟
e(ω) = 2 tan ⎜ n ⎟ (7.33)
⎟
⎝ ⎠
ak cos ϕk (ω)
k=0
We now apply a Remez algorithm to (7.33) so that the sign of e(ω) alternates
at n + 1 extremal frequencies. We first select n + 1 extremal frequencies
{ωi | i = 0, 1, · · · , n} over a frequency domain of interest appropriately and
define
e(ωi ) = (−1)i δ for i = 0, 1, · · · , n (7.34)
where δ stands for the phase characteristic error. By substituting (7.33) into
(7.34), we arrive at
n
n
δ
ak sin ϕk (ωi ) = tan ak (−1)i cos ϕk (ωi )
2 (7.35)
k=0 k=0
i = 0, 1, · · · , n
P −1 Qa = λa (7.37)
where
% δ &−1
λ = tan
2
Suppose the matrix P −1 Q has the eigenvalues λ0 , λ1 , · · · , λn and corre-
sponding eigenvectors a0 , a1 , · · · , an where |λ0 | > |λ1 | > · · · > |λn |, then
the eigenvector a0 corresponding to the eigenvalue λ0 is theoretically the
optimal solution, because the phase error δ is related to λ by
1
δ = 2 tan−1 (7.38)
λ
However, it was noted in [9] that the all-pass filter with the coefficient vector
a0 is not always stable. Moreover, it often occurs in this case that the Remez
iterative algorithm either does not converge or converges to an unstable filter.
Under these circumstances, an improved algorithm which takes filter stability
into account is proposed in [9]. The algorithm is outlined below.
Step 1: Set the order n of an all-pass filter and desired phase characteristic
d(ω).
Step 2: Select the initial values of extremal frequencies {ωi | i = 0, 1, · · · , n}
which are equally spaced over a frequency domain of interest.
Step 3: Compute the eigenvalues λ0 , λ1 , · · · , λn and corresponding eigen-
vectors a0 , a1 , · · · , an of P −1 Q where |λ0 | > |λ1 | > · · · >
|λn |.
Step 4: Set l = 0.
Step 5: Check whether the filter with al corresponding to λl is stable or not. If
it is stable and the sign of e(ωi ) alternates at n+1 extremal frequencies,
go to the next step. Otherwise, add l to 1 and go back to the top of
this step.
Step 6: Find the new extremal frequencies {ωi | i = 0, 1, · · · , n} from the
values of e(ω) evaluated at the dense set of frequencies.
Step 7: If (7.30) is satisfied, go to the next step. Otherwise, replace ωi by ωi
for i = 0, 1, · · · , n and go back to Step 3.
Step 8: Obtain the transfer function H(z) in (7.22).
170 Design Methods in the Frequency Domain
The maximum phase error and maximum magnitude of the frequency res-
ponse error were found to be
respectively. The resulting phase and phase error characteristics are depicted
in Figure 7.5, and the amplitude characteristic of the frequency response error
is shown in Figure 7.6.
By employing the design method using phase characteristic error, it took
the improved algorithm 5 iterations to converge to
⎡ ⎤ ⎡ ⎤
a0 a1 a2 1.00000000 0.15519789 0.48184637
⎣a3 a4 a5 ⎦ = ⎣ −0.07326919 −0.09658404 0.03963450 ⎦
a6 a7 a8 0.03849024 −0.06677818 −0.02050865
where all ai ’s were scaled to normalize a0 to unity. The maximum phase error
was found to be 7.93644811 × 10−2 .
The resulting phase and phase error characteristics are depicted in
Figure 7.7.
7.4 Summary 171
Figure 7.5 All-pass filter designed by using frequency response error. (a) Phase characteristic.
(b) Phase error characteristic.
Figure 7.7 All-pass filter designed with phase characteristic error. (a) Phase characteristic.
(b) Phase error characteristic.
7.4 Summary
This chapter has shown that the design of stable IIR filters can be achieved by
applying optimization methods. In particular, an unconstrained optimization
method based on a quasi-Newton algorithm has been applied to minimize mean
squared error; linear programming has been applied to minimize a squared
172 Design Methods in the Frequency Domain
References
[1] K. Steiglitz, “Computer-aided design of recursive digital filters,” IEEE
Trans. Audio and Electroacoust., vol. AU-18, no. 2, pp. 123–129, June
1970.
[2] A. Antoniou and W.-S. Lu, Practical Optimization: Algorithms and
Engineering Applications, Springer, New York, 2007.
[3] L. R. Rabiner, N. Y. Graham, and H. D. Helms, “Linear program-
ming design of IIR digital filters with arbitrary magnitude function,”
IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-22, no. 2,
pp. 117–123, Apr. 1974.
[4] L. R. Rabiner and R.-B. Gold, Theory and Application of Digital Signal
Processing, Prentice-Hall, Englewood Cliffs, NJ., 1975.
[5] R. A. Roberts and C. T. Mullis, Digital Signal Processing, Addison-
Wesley, Reading, MA, 1987.
[6] W.-S. Lu and T. Hinamoto, “Optimal design of IIR digital filters
with robust stability using conic-quadratic-programming updates,” IEEE
Trans. Signal Process., vol. 51, no. 6, pp. 1581–1592, June 2003.
[7] M. Ikehara, M. Funaishi and H. Kuroda, “Design of digital all-pass
networks using Remez algorithm,” IEICE Trans. Fundamentals of Elec-
tronics, Communications and Computer Sciences, vol. J74-A, no. 7,
pp. 974–979, July 1991. (in Japanese)
[8] M. Ikehara, M. Funaishi and H. Kuroda, “Design of complex all-pass
networks using Remez algorithm,” IEEE Trans. Circuits Syst. II, vol. 39,
no. 8, pp. 549–556, Aug. 1992.
[9] Y. Toguri and M. Ikehara, “A design method of all-pass networks based
on the eigen filter method with consideration of the stability,” IEICE
Trans. Fundamentals, vol. E78-A, no. 7, pp. 885–889, July 1995.
[10] T. Q. Nguyen, T. I. Laakso and R. D. Koilpillai, “Eigenfilter approach
for the design of allpass filters approximating a given phase response,”
IEEE Trans. Signal Process., vol. 42, no. 9, pp. 2257–2263, Sep. 1994.
8
Design Methods in the Time Domain
8.1 Preview
The problem of designing an IIR digital filter involves determination of the
coefficients ai ’s and bi ’s of a rational transfer function of the form
N (z) b0 + b1 z −1 + · · · + bm z −m
H(z) = = (8.1)
D(z) 1 + a1 z −1 + · · · + an z −n
There are two different approaches for the design of IIR digital filters. One
approach is carried out in the frequency domain, which consists of minimizing
some measure of the difference between the frequency response of the filter
H(ejω ) and a desired frequency response F (ejω ). The other approach is
carried out in the time domain, which consists of minimizing some measure
of the difference between the impulse response of the filter
1 dz
hi = H(z)z i (8.2)
2πj C z
where C is a counterclockwise contour that encircles the origin, and a desired
impulse response fi in a direct way. Typically this direct minimization leads
to a nonlinear problem. IIR filter design problems in the time domain can
be mainly divided into two classes: least-squares approximation problem and
modified least squares problem.
A least-squares approximation problem can be stated as follows. Given
an impulse response sequence {f0 , f1 , f2 , · · · }, find an IIR digital filter of the
form in (8.1) which minimizes
∞
||f − h||2 = (fi − hi )2
i=0 (8.3)
π
1
= |F (ejω ) − H(ejω )|2 dω
2π −π
173
174 Design Methods in the Time Domain
Figure 8.1 Time-domain IIR filter design. (a) Output error for least-squares approximation
problem using (8.3). (b) Equation error for modified least-squares problem minimizing (8.4).
8.2 Design Based on Extended Pade’s Approximation 175
F (z) = f0 + f1 z −1 + f2 z −2 + · · · + fN z −N (8.5)
which is equivalent to
⎡ ⎤ ⎡ ⎤⎡ ⎤
b0 h0 0 ··· 0 1
⎢ b1 ⎥ ⎢ .. ⎥ ⎢ a ⎥
⎢ ⎥ ⎢ h1 h0 . 0 ⎥ ⎢ 1⎥
=
⎢ .. ⎥ ⎢ . .. .. ⎥ ⎢ .. ⎥
⎣ . ⎦ ⎣ .. .
..
. . ⎦⎣ . ⎦
bm hm hm−1 · · · hm−n an
⎡ ⎤ ⎡ ⎤⎡ ⎤ (8.8)
0 hm+1 hm · · · hm−n+1 1
⎢ 0 ⎥ ⎢hm+2 hm+1 · · · hm−n+2 ⎥ ⎢ a1 ⎥
⎢ ⎥ ⎢ ⎥⎢ ⎥
⎢ .. ⎥ = ⎢ .. .. . .. ⎥ ⎢ .. ⎥
⎣.⎦ ⎣ . . . . . ⎦⎣ . ⎦
0 hN hN −1 · · · hN −n an
where hk = 0 for k < 0 and a0 = 1.
b f0
+ e2 = A0 (8.15)
0 f
where ⎡ ⎤
a0 0 ··· ··· 0 ··· 0
⎢ .. .. .. ⎥
⎢ a1 a0 . . .⎥
⎢. .. ⎥
⎢. .. .. .. .. ⎥
⎢. . . . . .⎥
⎢ ⎥
A0 = ⎢an · · · a1 a0 0 ··· 0⎥
⎢ .. ⎥
⎢ 0 a ··· a a0
..
.⎥
⎢ n 1 . ⎥
⎢. . ⎥
⎣ .. .. ... ..
.
..
. 0⎦
0 · · · 0 an ··· a1 a0
Moreover, an N × 1 error vector between the desired impulse response fi ’s
and the actual one hi ’s over a finite interval 1 ≤ i ≤ N can be defined as
e=f −h (8.16)
178 Design Methods in the Time Domain
where
f = [f1 f2 · · · fN ]T , h = [h1 h2 · · · hN ]T
Replacing the desired vector f by the actual vector h in (8.15) yields
b h0 f0 e0
= A0 = A0 − (8.17)
0 h f e
where A−1
0 = [D 1 D 2 ].
The denominator coefficient vector a is determined by (8.12). The problem
considered here is to obtain the numerator coefficient vector b that minimizes
T
e 0 f0 f 0
I(b) = e0 eT W = − D1 b W − D 1 b (8.19)
e f f
where
∞
rk = fi fk+i , a0 = 1
i=0
Here, fi and rk are called the first-order information and the second-order
information for the filter in (8.22), respectively. Differentiating (8.25) with
respect to coefficients bk ’s and setting the results to zero leads to
n
bk = aj fk−j for k = 0, 1, · · · , m (8.26)
j=0
which is equivalent to
⎡ ⎤ ⎡ ⎤⎡ ⎤
b0 1 0 ··· 0 f0
⎢ b1 ⎥ ⎢ a1 1 · · · 0⎥ ⎢ f1 ⎥
⎥ ⎢
⎢ ⎥ ⎢ ⎥
⎢ .. ⎥ = ⎢ .. .. . . .. ⎥ ⎢ . ⎥ (8.27)
⎣ . ⎦ ⎣ . . . . ⎦ ⎣ .. ⎦
bm am · · · a1 1 fm
Substituting (8.26) into (8.25) yields
n
n m
n 2
ε= ai aj r|i−j| − aj fk−j
i=0 j=0 k=0 j=0
⎤ ⎡
1 (8.28a)
⎢ a1 ⎥
⎢ ⎥
= [ 1 a1 · · · an ] K(m, n) ⎢ .. ⎥
⎣.⎦
an
180 Design Methods in the Time Domain
Lemma 8.1
Let K be a positive semidefinite symmetric matrix, and ψ be a given vector.
The solution x∗ of the problem
Proof
We define the Lagrange function
1 T
J(x, λ) = x Kx − λ(ψ − 1) (8.30)
2
where λ is a Lagrange multiplier, and compute the gradients
⎡ ⎤
∂J(x, λ)
⎢ ∂x ⎥ Kx − λψ
⎢ ⎥
⎣ ∂J(x, λ) ⎦ = −(xT ψ − 1)
∂λ (8.31)
K −ψ x
= T
−ψ 1/λ λ
8.3 Design Using Second-Order Information 181
which leads to
Kx∗ = αψ (8.34)
where αmn is the nonnegative minimum value of (8.28a). Hence the optimal
coefficient vector a = [a1 , a2 , · · · , an ]T minimizing (8.28a) can be obtained
from second to last equations in (8.35) as
a = −K −1
o g (8.36)
where
⎡ ⎤ ⎡ ⎤
K11 (m, n) K12 (m, n) · · · K1n (m, n) K10 (m, n)
⎢ K (m, n) K (m, n) · · · K (m, n) ⎥ ⎢ K (m, n) ⎥
⎢ 21 22 2n ⎥ ⎢ 20 ⎥
Ko = ⎢ . . . . ⎥, g=⎢ . ⎥
⎣ .. .. .. .. ⎦ ⎣ .. ⎦
Kn1 (m, n) Kn2 (m, n) · · · Knn (m, n) Kn0 (m, n)
It is noted that (8.36) is the optimal solution for a given order n which
minimizes ε in (8.28a) with respect to vector a, because ε is a convex quadratic
function whose minimizer can be found by taking the gradient of ε with
182 Design Methods in the Time Domain
8.3.2 Stability
We now address the stability of IIR digital filters designed by the method in
Section 8.3.1.
for some α > 0, then the eigenvalues of A all lie in the open unit disk, where
A and b are n × n and n × 1 real matrices, respectively.
Proof
Equation (8.37) can be written as
K = A AKAT + αbbT + L AT + αbbT + L
Theorem 8.1
Suppose the coefficients of denominator D(z) in (8.23) minimize (8.28a), the
transfer function H(z) = N (z)/D(z) is a stable filter.
Proof
Without loss of generality, we assume that the coordinates for the state space
are chosen so that
⎡ ⎤ ⎡ ⎤
−a1 −a2 · · · −an 1
⎢ 0 ⎥ ⎥ ⎢ ⎥
⎢ ⎢0⎥
A=⎢ ⎥
.. ⎦ , b = ⎢ ⎥ (8.39)
⎣ I n−1 . ⎣ ... ⎦
0 0
where (A, b) is a controllable pair. Form (8.28c), it follows that
Kij (m − 1, n − 1) = Ki+1,j+1 (m, n) for i, j = 0, 1, · · · , n − 1 (8.40)
which is equivalent to
⎡ ⎤
K11 (m, n) K12 (m, n) · · · K1n (m, n)
⎢ K (m, n) K (m, n) · · · K (m, n) ⎥
⎢ 21 22 2n ⎥
K(m − 1, n − 1) = ⎢ .. .. .. .. ⎥ (8.41)
⎣ . . . . ⎦
Kn1 (m, n) Kn2 (m, n) · · · Knn (m, n)
where
K(m − 1, n − 1) =
⎡ ⎤
K00 (m − 1, n − 1) K01 (m − 1, n − 1) ··· K0,n−1 (m − 1, n − 1)
⎢ K10 (m − 1, n − 1) K11 (m − 1, n − 1) ··· K1,n−1 (m − 1, n − 1) ⎥
⎢ ⎥
⎣ .. .. ..
.
.. ⎦
. . .
Kn−1,0 (m − 1, n − 1) Kn−1,1 (m − 1, n − 1) · · · Kn−1,n−1 (m − 1, n − 1)
AK(m − 1, n − 1)AT =
⎡ ⎤
K00 (m, n) K01 (m, n) ··· K0,n−1 (m, n)
⎢ K (m, n) K11 (m, n) ··· ⎥
K1,n−1 (m, n)
⎢ 10 ⎥
⎢ . .. .. ⎥ − αmn bbT
..
⎣ .. . . ⎦.
Kn−1,0 (m, n) Kn−1,1 (m, n) · · · Kn−1,n−1 (m, n)
(8.43)
where ⎡ ⎤
fm
⎢ f ⎥
⎢ m−1 ⎥
L=⎢ . ⎥ fm fm−1 · · · fm−n+1
⎣ .. ⎦
fm−n+1
By substituting (8.45) into (8.43), we obtain
respectively. Hence
⎡ ⎤ ⎡ ⎤
rn+1 fn+1
⎢ K(n) rn ⎥ ⎢ ⎥
⎢ ⎥ ⎢ fn ⎥
K(n + 1) = ⎢ .. ⎥ − ⎢ . ⎥ fn+1 fn · · · f0
⎣ . ⎦ ⎣ .. ⎦
rn+1 rn · · · r0 f0
dn0 d(n)T
=
d(n) K(n)
(8.50)
where
T
d(n) = dn1 dn2 · · · dn,n+1
n+1
dnl = rl − fk fk−l for l = 0, 1, · · · , n + 1
k=l
a(n) 0 0
a(n + 1) = − βn − γn
0 p(n) q(n)
0 1
p(n + 1) = − a(n + 1)θ̃n
p(n) αn+1
8.3 Design Using Second-Order Information 187
0 1
q(n + 1) = − a(n + 1)φ̃n
q(n) αn+1 (8.53)
αn+1 = αn − θ̃n βn − φ̃n γn
yield
⎡ ⎤
αn+1
⎢ 0 ⎥
⎢ ⎥
K(n + 1)a(n + 1) = ⎢ .. ⎥
⎣ . ⎦
0
⎡ ⎤ ⎡ ⎤
0 fn+1
⎢ .. ⎥ ⎢ fn ⎥
⎢ ⎥ ⎢ ⎥
K(n + 1)p(n + 1) = ⎢ . ⎥ , K(n + 1)q(n + 1) = ⎢ .. ⎥
⎣0⎦ ⎣ . ⎦
1 f0
(8.54)
where
βn = rn+1 rn · · · r1 a(n)
γn = − fn+1 fn · · · f1 a(n)
θn βn
= D(n)
φn γn
By noting that
qn (n) = q(n)T K(n)p(n)
(8.56)
= fn fn−1 · · · f0 p(n)
188 Design Methods in the Time Domain
it is easy to show that both θ̃n − θn and φ̃n − φn exclude the variables rn+1
and fn+1 , and thus are independent of rn+1 and fn+1 . Moreover, by using
(8.52) and (8.56), matrix D(n) in (8.55) can be expressed as
0 0 0 ··· 0 1
D(n) = + p(n) q(n)
0 1 fn · · · f1 f0
⎡ ⎤
0 fn
(8.57)
0 0 0 ··· 0 1 ⎢ .. .. ⎥
⎢ ⎥
= + K(n)−1 ⎢ . . ⎥
0 1 fn · · · f1 f0 ⎣0 f1 ⎦
1 f0
φn = −q0 (n + 1)αn+1
T
= −q(n + 1)T αn+1 0 · · · 0
(8.61)
= −q(n + 1)T K(n + 1)a(n + 1)
= − fn+1 fn · · · f0 a(n + 1)
φ2n
δn+1 = δn +
αn+1
a(n) 0 0
a(n + 1) = − βn − γn
0 p(n) q(n)
0 (8.64)
θn
p(n + 1) = − a(n + 1)
p(n) αn+1
0 φn
q(n + 1) = − a(n + 1)
q(n) αn+1
where
⎡ ⎤ ⎡ ⎤ ⎡ ⎤
a0 (n) p0 (n) q0 (n)
⎢ a (n) ⎥ ⎢ p (n) ⎥ ⎢ q (n) ⎥
⎢ 1 ⎥ ⎢ 1 ⎥ ⎢ 1 ⎥
a(n) = ⎢ . ⎥ , p(n) = ⎢ . ⎥ , q(n) = ⎢ . ⎥
⎣ .. ⎦ ⎣ .. ⎦ ⎣ .. ⎦
an (n) pn (n) qn (n)
where
a = [a1 a2 · · · an ]T , b = [b0 b1 · · · bn ]T , h0 = b0
With the N terms of the impulse response in (8.66), an N × 1 vector is defined
as ⎡ ⎤
h1 (a, b)
⎢ h2 (a, b) ⎥
⎢ ⎥
h(a, b) = ⎢ .. ⎥ (8.67)
⎣ . ⎦
hN (a, b)
An error vector between the desired impulse response fi ’s and the actual one
hi (a, b)’s is then defined by
provided that 2n ≤ N .
To this end, we write the two equations in (8.8) as
b H1 1
= (8.70)
0 H2 a
1
b = H1
a
192 Design Methods in the Time Domain
The lower partition of (8.70) can be used to find a linear estimate of vector a.
Replacing the unknown terms of h(a, b) in matrix H 2 by the given terms of
f produces a linear equation error as
1
d(a) = F 2 = Ga − g (8.71)
a
where
⎡ ⎤
fn+1 fn ··· f1
⎢fn+2 fn+1 ··· f2 ⎥
⎢ ⎥
F 2 = ⎢ .. .. .. .. ⎥
⎣ . . . . ⎦
fN fN −1 · · · fN −n
⎡ ⎤ ⎡ ⎤
fn fn−1 ··· f1 fn+1
⎢ fn+1 fn ⎥
··· f2 ⎢fn+2 ⎥
⎢ ⎥ ⎢ ⎥
G = ⎢ .. .. ⎥,
.. .. g = − ⎢ .. ⎥
⎣ . . ⎦ . . ⎣ . ⎦
fN −1 fN −2 · · · fN −n fN
Note that the lower partition of (8.70) can be rearranged in the form
1
H2 = A(a)h(a, b) = 0 (8.76)
a
The expression in (8.77) relates the linear equation error d(a) to the error
e(a, b).
We now proceed to develop an iterative design procedure. We begin by
writing an inverse relation of (8.77) between the errors as
we compute
which leads to
∂||e(a, b)||2 ∂d(a)T ∂W (a) T
=2 W (a)T + d(a) W (a)d(a)
∂ai ∂ai ∂ai
= 2 eTi GT W (a)T + li (a)T W (a)(Ga − g)
(8.89)
where ai and ei denote the ith element of n × 1 vector a and the ith column
of n × n identity matrix I n , respectively, and
∂W (a)
li (a) = d(a)
∂ai
8.5 Design Using State-Space Models 195
where
F1 (z) = f1 z −1 + f2 z −2 + · · · + fN z −N
The FIR digital filter in (8.96) can be represented by a state-space model
(A, b, c, d)N as
x(k + 1) = Ax(k) + bu(k)
(8.97)
y(k) = cx(k) + du(k)
where x(k) is an N × 1 state-variable vector, u(k) is a scalar input, y(k) is a
scalar output, and
⎡ ⎤ ⎡ ⎤
0 ··· 0 0 1
⎢ . . .. .. ⎥ ⎢ 0 ⎥
⎢ 1 . . . ⎥ ⎢ ⎥
A=⎢ . . ⎥, b = ⎢ .. ⎥
⎣ .. . . 0 0 ⎦ ⎣ . ⎦
0 ··· 1 0 0
c = f1 f2 · · · fN , d = f0
The Hankel matrix of the filter in (8.96) is written in the form
⎡ ⎤
f1 f2 · · · fN
⎢ ..
..
. ⎥
⎢f . 0⎥
H N,N = ⎢ .2 .. ⎥ (8.98)
⎣ .. f ..
.
. ⎦
N
fN 0 · · · 0
which is equivalent to
H N,N = U N V N (8.99)
where
⎡ ⎤
c
⎢ cA ⎥
⎢ ⎥
V N = b Ab · · · AN −1 b and U N = ⎢ .. ⎥
⎣ . ⎦
cAN −1
8.5 Design Using State-Space Models 197
are called the controllability matrix and the observability matrix, respectively.
The Hankel matrix in (8.98) is symmetric, and can be factorized using
eigenvalue-eigenvector decomposition as
H N,N = P ΣP T (8.100)
where Σ and P are N × N diagonal and orthogonal matrices consisting of
the eigenvalues and eigenvectors of H N,N , respectively, and P P T = I N .
Lemma 8.3
For the system (A, b, c, d)N in (8.97), the controllability matrix V N and the
controllability Grammian K c are unit matrices, i.e.,
V N = Kc = IN (8.101)
and the coordinate transformation defined by
1
T = P Σ− 2 (8.102)
will lead to a balanced realization of the system.
Proof
By simply substituting A and b in (8.97) into V N in (8.99) and recalling that
the controllability Grammian is defined by
∞
Kc = Ai bbT (Ai )T
i=0
A = T −1 AT , b = T −1 b, c = cT
Theorem 8.2
Suppose the Hankel matrix H N,N of an N th-order FIR filter (A, b, c, d)N
in (8.97) is factorized as (8.100), an nth-order reduced balanced system is
equivalent to the subsystem (A11 , b1 , c1 , d)n where
A11 = P T1 AP 1 , b1 = P T1 b, c1 = cP 1
Proof
If Σ is partitioned as
Σ1 0
Σ= (8.107)
0 Σ4
where
Remark 8.1
Due to the special structure of matrices A, b, and c in (8.97), it can be shown
that
A11 = P (2 : N, 1 : n)T P (1 : N − 1, 1 : n)
(8.111)
b1 = P (1, 1 : n)T , c1 = cP (1 : N, 1 : n)
where P (i : j, k : m) denotes an extraction of matrix P ’s rows from i to j
and its columns from k to m.
A step-by-step summary of the algorithm is given below.
Given a set of FIR digital filter coefficients f0 , f1 , · · · , fN
Sept 1: Construct the Hankel matrix H N,N in (8.98).
Sept 2: Decompose the Hankel matrix H N,N to obtain Σ and P as shown in
(8.100).
Sept 3: Choose a derired order n of approximation according to the magnitudes
of the elements of Σ as shown in (8.106).
Sept 4: Calculate matrices A11 , b1 , and c1 using (8.111).
Sept 5: Convert the state-space parameters A11 , b1 , and c1 into the transfer
function form H(z) where d = f0 (see Faddeev’s formula in
Section 4.3.2).
||A|| ≤ 1 (8.113)
where ||A|| denotes the spectral norm of matrix A. If Σ has distinct diagonal
entries, then strict inequality holds in (8.113).
Proof
T
By multiplying (8.112a) from the left by A and from the right by A and
adding the result to (8.112b), we obtain
T T T T
A AΣA A − Σ = −(A b b A + cT c) (8.114)
T
Let λ be an eigenvalue of A A and let v be the corresponding eigenvector,
T
i.e., A Av = λv. Multiplying (8.114) from the left by v H and from the right
by v yields
T T
(|λ|2 − 1)v H Σv = −(v H A b b Av + v H cT cv) ≤ 0 (8.115)
|λ|2 ≤ 1 (8.116)
T
Since λ is an arbitrary eigenvalue of A A, the spectral norm of A is defined
as
T
||A|| = λmax (A A) (8.117)
and by virtue of (8.116), we arrive at (8.113).
Assume that ||A|| = 1. Then, from (8.117) it follows that λ = 1 is an
T T
eigenvalue of A A. Hence matrix A A − I N is singular. Letting V be a
T
basis matrix for the right nullspace of A A − I N , it follows that
T
(A A − I N )V = 0 (8.118)
By multiplying (8.114) from the left by V H and from the right by V and then
using (8.118), we arrive at
T
b AV = 0, cV = 0 (8.119)
8.5 Design Using State-Space Models 201
Multiplying (8.114) from the right by V and employing (8.118) and (8.119)
gives
T
(A A − I N )ΣV = 0 (8.120)
T
This means that ΣV is in the right nullspace of A A − I N and there exists
such that
a nonsingular matrix Σ
ΣV = V Σ (8.121)
is the restriction of Σ to the space spanned by V , it is possible to
Since Σ
choose V such that Σ is diagonal. By multiplying (8.112a) from the right by
AV and using (8.118), (8.119) and (8.121), we obtain
ΣAV = AV Σ (8.122)
and let ṽ be the corresponding column of
Let σ̃ be any diagonal entry of Σ
V . Then (8.121) and (8.122) provide
be written as
T
A11 A12 Σ1 0 A11 A12 Σ1 0 b1 T T
− =− b1 b2
A21 A22 0 Σ4 A21 A22 0 Σ4 b2
(8.127a)
T
A11 A12 Σ1 0 A11 A12 Σ1 0 cT1
− =− c1 c2
A21 A22 0 Σ4 A21 A22 0 Σ4 cT2
(8.127b)
respectively.
Theorem 8.4
Suppose a system (A, b, c)N in (8.108) is asymptotically stable and either the
controllability Grammian or the observability Grammian is nonsingular and
diagonal, every subsystem is asymptotically stable.
Proof
Assume that the controllability Grammian is nonsingular, diagonal, and equal
to Σ and that the system is partitioned as in (8.126). Then it will be shown
that the subsystem (A11 , b1 , c1 )n is asymptotically stable.
The upper left equation in (8.127a) becomes
T T T
A11 Σ1 A11 + A12 Σ4 A12 − Σ1 = −b1 b1 (8.128)
T
Let λ be an eigenvalue of A11 and let v be the corresponding eigenvector,
T
i.e., A11 v = λv. Multiplying (8.128) from the left by v H and from the right
by v yields
T T
(|λ|2 − 1)v H Σ1 v = −(v H A12 Σ4 A12 v + v H b1 b1 v) ≤ 0 (8.129)
Since v H Σ1 v > 0, it follows that
|λ| ≤ 1 (8.130)
Suppose |λ| = 1, since Σ4 is positive definite, it follows from (8.129) that
v H A12 = 0, v H b1 = 0 (8.131)
Hence
A11 A12 ∗
b1
vH 0 =λ vH 0 , vH 0 = 0 (8.132)
A21 A22 b2
8.5 Design Using State-Space Models 203
Theorem 8.5
Let the partitioning in (8.126) be performed so that σmin (Σ1 ) > σmax (Σ4 ).
The subsystem (A11 , b1 , c1 )n is then controllable and observable.
Proof
The upper left equation in (8.127b) becomes
T T
A11 Σ1 A11 + A21 Σ4 A21 − Σ1 = −cT1 c1 (8.133)
Assume that the subsystem (A11 , b1 , c1 )n is not observable. Then there exists
an eigenvalue λ of A11 with corresponding eigenvector v such that
By multiplying (8.133) from the left by v H and from the right by v, we obtain
T
(1 − |λ|2 )v H Σ1 v = v H A21 Σ4 A21 v (8.135)
Noting that
T
v H Σ1 v ≥ σmin (Σ1 ), v H A21 Σ4 A21 v ≤ ||A21 v||2 σmax (Σ4 )
(8.136)
it follows from (8.135) that
This contradicts with the assumption of the theorem. Therefore, the subsystem
is observable. Similarly, it can be shown that the subsystem is controllable.
This completes the proof of the theorem.
by an IIR digital filter over a finite interval 0 ≤ i ≤ 20. The impulse response
and the magnitude response of the Gaussian filter, i.e., the 20th-order FIR
digital filter are depicted in Figure 8.2.
Using (8.12) and (8.13), the denominator coefficient vector a and the
numerator coefficient vector b of a 3rd-order IIR digital filter were found
to be
a = [−2.084581, 1.657505, −0.499733]T
b = [0.049165, −0.001237, 0.040055, 0.020835]T
Figure 8.2 The Gaussian filter. (a) Its impulse response. (b) Its magnitude response.
8.6 Numerical Experiments 205
Figure 8.3 Magnitude response of a 3rd-order IIR digital filter designed by a direct procedure.
206 Design Methods in the Time Domain
Figure 8.4 Magnitude response of a 3rd-order IIR filter designed by a modified procedure.
hence the resulting filter is stable. Magnitude response of the 3rd-order IIR
digital filter designed by using (8.36) and (8.27) is depicted in Figure 8.5.
Figure 8.5 Magnitude response of a 3rd-order IIR digital filter designed by (8.36).
8.6 Numerical Experiments 207
This shows that the resulting filter is stable. The numerator coefficient vector
b = [b0 , b1 , b2 , b3 , b4 ]T were then derived from (8.27) as
T
b = 0.049165, −0.009057, 0.050216, 0.018506, 0.009832
Magnitude response of the 4th-order IIR digital filter designed by using (8.63)–
(8.65) and (8.27) is depicted in Figure 8.6.
Detailed numerical results obtained by applying (8.63)–(8.65) are sum-
marized in Table 8.1.
Figure 8.6 Magnitude response of a 4th-order IIR digital filter designed by (8.63)–(8.65)
and (8.27).
By choosing ε = 10−8 in (8.95) and continuing with the second phase, it took
the algorithm in (8.94) 7 iterations to converge to
hence the resulting filter is stable. After determining the error vector e(a∗ , b∗ )
and actual impulse response vector h(a∗ , b∗ ) from (8.78) and (8.68), respec-
tively, (8.70) was used to obtain the optimal numerator coefficient vector b∗
as
b∗ = [0.049165, 0.013344, 0.039997, 0.048732]T
Magnitude response of the 3rd-order IIR digital filter designed by a least-
squares method is depicted in Figure 8.7.
Figure 8.7 Magnitude response of a 3rd-order IIR digital filter designed by a least-squares
method.
8.6 Numerical Experiments 209
Figure 8.8 Magnitude response of a 3rd-order IIR digital filter designed by balanced model
reduction.
8.7 Summary
In the techniques based on extended Pade’s approximation, the problem of
designing IIR digital filters to approximate a desired impulse response over
a specified interval has been studied. Two design procedures that require
only linear calculations have been illustrated for the approximation of IIR
References 211
digital filters. In the filter design using second-order information, mixed first-
and second-order information in the form of a finite portion of the impulse
response and autocorrelation sequences has been applied to provide an efficient
algorithm for designing IIR digital filters. In the least-squares design, a method
for obtaining the coefficients of an nth-order IIR digital filter, which gives the
optimal least-squares approximation to a desired impulse response over a finite
interval, has been presented. In the filter design using state-space model, an
algorithm, which is based on balanced model reduction, for the approximation
of FIR digital filters by IIR digital filters has been examined. Finally, numerical
experiments have been performed to compare their performances among the
filter design techniques in the time domain.
References
[1] M. S. Bertran, “Approximation of digital filters in one and two dimen-
sions,” IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-23,
no. 5, pp. 438–443, Oct. 1975.
[2] C. S. Burrus and T. W. Parks, “Time domain design of recursive
digital filters,” IEEE Trans. Audio Electroacoust., vol. AU-18, no. 2,
pp. 137–141, June 1970.
[3] R. Hastings-James and S. K. Mehra, “Extensions of the Pade-
approximant technique for the design of recursive digital filters,”
IEEE Trans. Acoust. Speech, Signal Process., vol. ASSP-25, no. 6,
pp. 501–509, Dec. 1977.
[4] C. T. Mullis and R. A. Roberts, “The use of second-order information in
the approximation of discrete-time linear systems,” IEEE Trans. Acoust.
Speech, Signal Process., vol. ASSP-24, no. 3, pp. 226–238, June. 1976.
[5] T. Hinamoto and S. Maekawa, “Separable-denominator 2-D rational
approximation via 1-D based algorithm,” IEEE Trans. Circuits Syst.,
vol. CAS-32, no. 10, pp. 989–999, Oct. 1985.
[6] R. E. Kalman and J. Bertram, “Control system design via the second
method of Liapunov, part II, discrete time systems,” ASME J. Basic
Engineering, vol. 82, pp. 394–400, 1960.
[7] A. G. Evans and R. Fischl, “Optimal least squares time-domain synthesis
of recursive digital filters,” IEEE Trans. Audio Electroacoust., vol. AU-
21, no. 1, pp. 61–65, Feb. 1973.
[8] D. G. Luenberger, Optimization by Vector Space Method. New York:
Wiley, 1969.
212 Design Methods in the Time Domain
9.1 Preview
Interpolated FIR (IFIR) filters [1, 2] and frequency-response-masking (FRM)
FIR filters [3] are well-known classes of computationally efficient digital filters
because the total number of multipliers and adders required to implement
these filters are considerably less than those required by their conventional
counterparts [4]. There has been a great deal of work in the literature following
the aforementioned original development, see for example [5–15] and the
references therein. Because of the importance of these filters, it is naturally
desirable to develop a simple and unifying design method that is applicable to
both of the filter classes. In this chapter, we propose such a design technique
in that the subfilters involved are jointly optimized in the minimax sense.
The core of the proposed design approach is the convex-concave procedure
(CCP) [16–18] that allows the use of efficient convex optimization to deal
with nonconvex design problems where the objective functions assume the
form of difference of two convex functions.
Our focus is on the design of original IFIR and single stage FRM filters so
as for the reader to sense this general design strategy in a simple and transparent
manner. We also explain why the CCP is well-suited that simultaneously
promotes sparsity of filter coefficients for the designs at hand. In addition,
we present a variant of the CCP-based technique for the design of FRM filters
with improved implementation efficiency.
213
214 Design of Interpolated and FRM FIR Digital Filters
F(zL) M(z)
0.8
0.6
0.4
0.2
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
(a) Normalized frequency
0.8
0.6
0.4
0.2
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
(b) Normalized frequency
0.8
0.6
0.4
0.2
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
(a) Normalized frequency
0.8
0.6
0.4
0.2
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
(b) Normalized frequency
Figure 9.3 Magnitude response of (a) M (z) and (b) H(z) = F (z L )M (z).
F(zL) Ma(z)
-
z-L(N-1)/2 + Mc(z) +
Figure 9.4 A single-stage FRM filter.
9.2 Basics of IFIR and FRM Filters and CCP 217
with
i.e.,
u(x) + e(x, xk ) ≤ v(xk ) + ∇v(xk )T (x − xk ) (9.17)
where, due to the convexity of w(x), e(x, xk ) = w(x) − w(xk ) −
∇w(xk )T (x − xk ) is convex and always nonnegative. On comparing (9.17)
with (9.16), we note that a point x that satisfies constraint (9.17) also satisfies
constraint (9.16), but the converse does not hold (unless w(x) is a linear
function which make e(x, xk ) vanish). In other words, adding a redundant
convex component w(x) to the decomposition f (x) = u(x) − v(x) shrinks
the feasible region in a CCP-based method, hence imposing the risk of losing
good solution candidates.
With above analysis in mind, we now examine the convexification steps
made in Section 9.3.2. For illustration purposes, here we focus on the treatment
of constraint (9.11b) since the same analysis also applies to (9.11c). By writing
(9.11b) as
1 T T 0 tf (Lω)tm (ω)T af
[af am ] ≤ δw + Hd (ω) (9.18)
2 tm (ω)tf (Lω)T 0 am
we see that the left-hand side of (9.18) is a quadratic function with an indefinite
Hessian, hence nonconvex. Therefore, constraint (9.11b) does not fit into the
222 Design of Interpolated and FRM FIR Digital Filters
form in (9.4b), and an adequate convex term needs to be added to both sides of
(9.18) to make CCP applicable. Intuitively, the quadratic expression in (9.18)
suggests to add the term
1 T T tf (Lω)tf (Lω)T 0 af
[a a ] (9.19)
2 f m 0 tm (ω)tm (ω)T am
which itself is convex and precisely equal to 0.5s(x, ω) (see (9.12) for the
definition of s(x, ω)). In doing so, (9.18) is led to
minimize δ (9.24a)
are convex with respect to x and δ because their Hessian matrices are
characterized by positive semidefinite blocks P i = pi pTi and Qi = q i q Ti
with
tf (Lω) tf (Lω)
pi = , qi = for i = 0, 1.
(−1)i ta (ω) (−1)i tc (ω)
Consequently, the constraints in (9.26a) and (9.26b) fit into the form of (9.4b).
By applying CCP to (9.26), we obtain a pair of convex constraints
u1 (x, ω) ≤ ṽ(x, xk , ω)
u2 (x, ω) ≤ ṽ(x, xk , ω)
where
ṽ(x, xk , ω) = v(xk , ω) + ∇T v(xk , ω)(x − xk )
with ⎡ ⎤
2(aTf tf (Lω))tf (Lω)
⎢ ⎥
∇v(x, ω) = ⎣ (aTa ta (ω))ta (ω) ⎦
(aTc tc (ω))tc (ω)
where for practical purposes ω is taken from a finite and dense frequency grids
Ωd = {ωj | j = 1, 2, · · · , K} ⊂ Ω. In summary, the convex problem to be
solved in the kth iteration of CCP is given by
minimize δ (9.27a)
where weight μ > 0 controls the trade-off between error bound δ and sparsity
of filter coefficients. Once the solution xs = [aTf aTa aTc ]T of problem (9.28)
is obtained, a prescribed threshold ε > 0 is used to identify an index set
Io = {Iaf , Iaa , Iac } as follows:
226 Design of Interpolated and FRM FIR Digital Filters
Iaf = {i : |af (i)| ≤ ε}, Iaa = {i : |aa (i)| ≤ ε}, Iac = {i : |ac (i)| ≤ ε}
(9.29)
Concerning the selection of parameters μ and ε, in principle they should be
small: μ should be small because otherwise the solution of (9.28) becomes
less relevant to the design objective which is to minimize the error bound
δ; and ε should be small because the use of a large ε would set some
intrinsically nonzero coefficients to zero, hence inevitably do harm to the
filter performance. We stress that the goal of phase 1 is merely to identify an
index set to nullify the associated filter coefficients, and it is a collective action
of μ and ε that identifies an appropriate index set: the introduction of term
μx1 promotes the sparsity in x, and the size of the index set is controlled
by threshold ε.
0.03
Proposed
Method of [30], [4 ]
0.025
0.02
0.015
0.01
0.005
−0.005
−0.01
−0.015
−0.02
0 0.05 0.1 0.15
(a) Normalized frequency
−58
Proposed
Method of [30], [4 ]
−60
−62
−64
−66
−68
−70
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
(b) Normalized frequency
Figure 9.5 Amplitude response (in dB) of the IFIR filters for Example 9.1 by the proposed
algorithm (solid line) and the method of [30] and [4] (dashed line) in (a) passband and (b)
stopband.
9.6 Design Examples 229
Example 9.2
Reference [9] presents an example (Example 10.2) where a highpass IFIR filter
with sampling frequency ωs = 16000 Hz, stopband edge ωa = 6600 Hz and
passband edge ωp = 7200 Hz is designed. In the design, the interpolator
is fixed to M (z) = (1 − z −1 )4 and sparsity factor is set to L = 2
while a linear-phase subfilter F (z) of order 20 is optimized in minimax
sense. The performance of the IFIR filter is given by Ap = 0.9061 dB and
Aa = 40.78 dB.
As a follow-up of the above example, the algorithm proposed in Section 9.3
was applied to jointly optimize an F (z) of order 20 and an M (z) of order 4 for a
highpass IFIR filter H(z) = F (z L )M (z) with the same design specifications
as Example 10.2 of [9]. The frequency weight w(ω) was set to w(ω) ≡ 1
for ω in the passband and w(ω) ≡ 4.5 for ω in the stopband. An initial
x0 = [aTf0 aTm0 ]T was generated by the standard technique proposed in [3].
total of K = 1400 frequency grids were uniformly placed in [0, 6600 Hz]
A
[7200 Hz, 8000 Hz] to form the discrete set Ωd for problem (9.15). It took
the algorithm 14 iterations to converge to an IFIR filter with Ap = 0.6914 dB
and Aa = 41.07 dB. The amplitude responses of the two designs in the entire
baseband and over its passband are depicted respectively as solid and dashed
lines in Figures. 9.6a and 9.6b.
For the sake of a more efficient implementation, M (z) is normalized
by dividing it with the coefficient of its constant term, m0 , so that both
coefficients of the constant term and the 4th-order term become unity. The
transfer function F (z L ) is rescaled to m0 F (z L ) so that the overall transfer
function H(z) remains unaltered. The first eleven coefficients of F (z) and
first three coefficients of M (z) after the normalization are shown in Table 9.1.
We stress that implementing the interpolator M (z) in Example 10.2 of [9]
requires no multiplications, therefore the performance gain of the proposed
design over that of [9] was achieved at a cost of two more multiplications per
output.
Proposed
10 Method of [9 ]
−10
−20
−30
−40
−50
−60
−70
0 1000 2000 3000 4000 5000 6000 7000 8000
(a) Frequency in Hz
0.5
Proposed
Method of [9]
0.4
0.3
0.2
0.1
−0.1
−0.2
−0.3
−0.4
−0.5
7200 7300 7400 7500 7600 7700 7800 7900 8000
(b) Frequency in Hz
Figure 9.6 Amplitude response (in dB) of the IFIR filters in Example 9.2 by the proposed
algorithm (solid line) and the method of [9] (dashed line) in (a) entire baseband and (b) passband.
10
−10
−20
−30
−40
−50
−60
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
(a) Normalized frequency
0.1
0.08
0.06
0.04
0.02
−0.02
−0.04
−0.06
−0.08
−0. 1
0 0.1 0.2 0.3 0.4 0.5 0.6
(b) Normalized frequency
Figure 9.7 Amplitude response (in dB) of the FRM filters in Example 9.3 in (a) entire
baseband and (b) passband.
232 Design of Interpolated and FRM FIR Digital Filters
10
−10
−20
−30
−40
−50
−60
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
(a) Normalized frequency
0.15
0.1
0.05
−0.05
−0. 1
Figure 9.8 Amplitude response (in dB) of the FRM filter in Example 9.4 in (a) entire baseband
and (b) passband.
9.6 Design Examples 233
Example 9.5
The algorithm proposed in Section 9.4 was also applied to design a lowpass
FRM filter with orders of F (z), Ma (z), and Mc (z) being (56, 30, 24),
L = 7, and normalized passband and stopband edges being ωp = 0.65π
and ωa = 0.66π, respectively. With weight w(ω) ≡ 1 and K = 2400, it took
the algorithm 94 iterations to converge to an FRM filter with Ap = 0.1510
dB and Aa = 41.22 dB. The amplitude response of the FRM filter in the
entire baseband and passband is shown in Figure 9.9. For comparison, in
[10] lowpass FRM filters with the same passband and stopband edges and
10
−10
−20
−30
−40
−50
−60
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
(a) Normalized frequency
0.1
0.08
0.06
0.04
0.02
−0.02
−0.04
−0.06
−0.08
−0. 1
0 0.1 0.2 0.3 0.4 0.5 0.6
(b) Normalized frequency
Figure 9.9 Amplitude response (in dB) of the FRM filters in Example 9.5 in (a) entire
baseband and (b) passband.
234 Design of Interpolated and FRM FIR Digital Filters
9.7 Summary
We have proposed a unified approach based on CCP to the design of minimax
IFIR and FRM filters. The design method is conceptually simple and produces
designs that are shown to provide satisfactory performance relative to those
9.7 Summary 235
10
−10
−20
−30
−40
−50
−60
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
(a) Normalized frequency
0.1
0.08
0.06
0.04
0.02
−0.02
−0.04
−0.06
−0.08
−0. 1
0 0.1 0.2 0.3 0.4 0.5 0.6
(b) Normalized frequency
Figure 9.10 Amplitude response (in dB) of the FRM filters in Example 9.6 in (a) entire
baseband and (b) passband.
References
[1] Y. Neuvo, C. Y. Dong, and S. K. Mitra, “Interpolated finite impulse
response filters,” IEEE Trans. Acoust., Speech, Signal Process., vol.
ASSP-32, no. 3, pp. 563–570, June 1984.
[2] T. Saramäki, Y. Neuvo, and S. K. Mitra, “Design of computationally
efficient interpolated FIR filters,” IEEE Trans. Circuits Syst., vol. CAS-
35, no. 1, pp. 70–88, Jan. 1988.
[3] Y. C. Lim, “Frequency-response masking approach for the synthesis of
sharp linear phase digital filters,” IEEE Trans. Circuits Syst., vol. CAS-
33, no. 4, pp. 357–364, Apr. 1986.
[4] S. K. Mitra, Digital Signal Processing – A Computer-Based Approach,
3rd ed., McGraw Hill, 2006.
[5] Y. C. Lim and Y. Lian, “The optimum design of one- and two-dimensional
FIR filters using the frequency response masking technique,” IEEE
Trans. Circuits Syst. II, vol. 40, no. 2, pp. 88–95, Feb. 1993.
[6] Y. C. Lim and Y. Lian, “Frequency-response masking approach for digital
filter design: Complexity reduction via masking filter factorization,”
IEEE Trans. Circuits Syst. II, vol. 41, no. 8, pp. 518–525, Aug. 1994.
[7] T. Saramäki, Y. C. Lim, and R. Yang, “The synthesis of half-band filter
using frequency-response masking technique,” IEEE Trans. Circuits
Syst. II, vol. 42, no. 1, pp. 58–60, Jan. 1995.
[8] T. Saramäki and H. Johansson, “Optimization of FIR filters using
frequency-response masking approach,” in Proc. IEEE Int. Symp.
Circuits Syst., vol. 2, pp. 177–180, Sydney, Australia, May 2001.
[9] P. S. R. Diniz, E.A. B. da Silva, and S. L. Netto, Digital Signal Processing,
Cambridge University Press, 2002.
[10] L. C. R. de Barcellos, S. L. Netto, and P. S. R. Diniz, “Optimization of
FRM filters using the WLS-Chebyshev approach,” Circuits, Syst., Signal
Process., vol. 22, no. 2, pp. 99–113, Mar. 2003.
References 237
10.1 Preview
A composite filter (C-filter) refers to a digital filtering system that is composed
of explicit individual modules, often called subfilters, which are connected in
cascade or parallel, or a mixture of both. Well known classes of C-filters
include interpolated FIR filters [1, 2], frequency-response-masking filters
[3], and their variants, see e.g. [4]. Over the years, analysis and design of
C-filters have attracted a great deal of research interest primarily because
of their ability to offer improved computational efficiency relative to their
conventional counterparts when appropriate subfilter structures are chosen
and their parameters are optimized in accordance with certain design criterion
[5]. Recently, C-filters composed of a prototype filter and a shaping filter,
connected in cascade, are shown to offer certain advantages over conventional
counterparts [6, 7]. In the case of FIR C-filters [6], the shaping filter is
constructed by cascading several complementary comb filters (CCFs) of the
form (1 + z −l )kl with integers 1 ≤ l ≤ L and kl ≥ 0. As such, the shaping
filter only requires several adders and memory units to implement and is free
of multiplications. Yet, as demonstrated in [6], the shaping filter is capable
of effectively improving filter performance, especially for those with narrow
transition bands and highly suppressed stopbands.
In this chapter, we present a new algorithm for the design of C-filters
that assume the same form H(z) = Hp (z)Hs (z) as in [6], however pro-
totype filter Hp (z) as well as shaping filter Hs (z) are designed through
different approaches in order for H(z) to achieve equiripple passbands and
least-squares stopbands (EPLSS). EPLSS FIR filters, especially with narrow
passbands, are desirable in wireless communications, aerospace systems, and
synthetic aperture radar [8]. The design algorithm proposed in this chapter
uses a sequential optimization technique to deal with the design of Hp (z)
239
240 Design of a Class of Composite Digital Filters
and Hs (z) separately, yet these two design steps are coupled by alternately
performing them. A strong motivation to develop such a design method is that
both design steps can be formulated as convex problems hence can be solved
efficiently. Numerical examples are presented to illustrate the design method
and evaluate its performance.
which largely determines the characteristics of H(z), while the shaping filter
is a CCF of the form
L
Hs (z) = (1 + z −l )kl (10.3)
l=1
where kl are nonnegative integers, which reshapes the prototype filter
for improved performance without substantial increase in implementation
complexity.
For clarity of presentation, in the rest of the chapter we focus on linear-
phase lowpass FIR C-filters whose frequency response can be expressed as
H(ω) = Hp (ω)Hs (ω) with
N
−1
Hp (ω) = hn e−jnω = e−jτp ω [xT c(ω)] (10.4)
n=0
where
L
1
τs = l · kl
2
l=1
Therefore, the zero-phase frequency response of the C-filter is given by
L
lω
A(ω) = Ap (ω) · As (ω) = xT c(ω) (2 cos )kl (10.6)
2
l=1
L
1
l · kl ≤ D (10.7d)
2
l=1
where Ωp and Ωa denote the passband and stopband, respectively, ωa denotes
the stopband edge, x from (10.4) and y = [k1 k2 . . . kL ]T are design variables,
ea , δa and D are constants representing upper bounds for stopband energy,
peak filter gain in stopband, and group delay of the shaping filter, respectively.
Note that the constraint in (10.7d) implies an upper bound (N − 1)/2 + D for
the total group delay of the C-filter.
min δp (10.8a)
If the desired frequency response assumes the form Hd (ω) = e−jτ ω Ad (ω),
then constraints in (10.8b–10.8d) are reduced to
xT Qx ≤ ea (10.9b)
T
|x ĉ(ω)| ≤ δa for ω ∈ Ωa (10.9c)
where
L
lω
ĉ(ω) = c(ω) (2 cos )kl
2
l=1
π
Q= ĉ(ω)ĉT (ω) dω
ωa
min δp (10.10a)
With respect to variables (δp , x), the objective function and constraints
(10.10b) and (10.10d) are linear, while (10.10c) is a convex quadratic con-
straint because Q is positive definite. As a result, (10.10) is a convex problem
whose global solution can be computed using reliable and convenient solvers
[9, 10]. We denote the solution of (10.10) by (δk , xk ).
π L
L
2 2 iω
= |H(ω)| log 4 cos
ωa 2
i=1 j=1
jω 2
· log 4 cos vi vj dω
2
π L (10.13)
iω
= |H(ω)|2 log 4 cos2 vi
ωa 2
i=1
⎡ ⎤
L
jω
·⎣ log 4 cos2 vj ⎦ dω
2
j=1
L 2
π iω
= |H(ω)|2 log 4 cos2 vi dω ≥ 0
ωa 2
i=1
L
lωp kl
1 − dp ≤ |H(ω)|ω=ωp = |xTk c(ωp )| |2 cos | ≤ 1 + dp (10.15)
2
l=1
with a small dp > 0. This constraint is highly nonlinear with respect to y, but
fortunately it is equivalent to
L
lωp
log(1 − dp ) ≤ c + kl log |2 cos | ≤ log(1 + dp ) (10.16)
2
l=1
with c = log |xTk c(ωp )|, which is linear with respect to y. Based on above
analysis, we propose to update y by solving the convex problem
1
min (y − y k )T ∇2 J(y k )(y − y k ) + (y − y k )T ∇J(y k ) (10.17a)
2
subject to : (10.7d), y ≥ 0, and (10.16) (10.17b)
and then rounding its solution to a nearest integer solution y k+1 .
Figure 10.3 Amplitude response of (a) the prototype filter Hp (z), (b) the C-filter H(z) and
(c) the C-filter H(z) over the passband.
250 Design of a Class of Composite Digital Filters
10.5 Summary
We have addressed the design of a class of composite filters by an alternating
convex optimization strategy to achieve equiripple passband and least-squares
stopband subject to peak-gain constraint. A design example is presented
to illustrate the proposed algorithm and to demonstrate the performance of
C-filter relative to the conventional EPLSS and P-M filters.
References
[1] Y. Neuvo, C. Y. Dong, and S. K. Mitra, “Interpolated finite impulse
response filters,” IEEE Trans. Acoust., Speech, Signal Process.,
Vol. ASSP-32, pp. 563–570, Jun. 1984.
[2] T. Saramäki, Y. Neuvo, and S. K. Mitra, “Design of computationally
efficient interpolated FIR filters,” IEEE Trans. Circuits Syst., vol. 35,
pp. 70–88, Jan. 1988.
[3] Y. C. Lim, “Frequency-response masking approach for the synthesis of
sharp linear phase digital filters,” IEEE Trans. Circuits Syst., vol. 33,
pp. 357–364, Apr. 1986.
[4] W.-S. Lu and T. Hinamoto, “A unified approach to the design of interpo-
lated and frequency-response-masking FIR filters,” IEEE Trans. Circuits
Syst. I, vol. 63, no. 12, pp. 2257–2266, Dec. 2016.
[5] S. K. Mitra, Digital Signal Processing – A Computer-Based Approach,
3rd ed., McGraw Hill, 2006.
[6] D. Shiung, Y.-Y. Yang, and C.-S. Yang, “Improving FIR filters by using
cascade techniques,” IEEE Signal Processing Mag., vol. 33, pp. 108–114,
May 2016.
[7] D. Shiung, Y.-Y. Yang, and C.-S. Yang, “Cascading tricks for designing
composite filters with sharp transition bands,” IEEE Signal Processing
Mag., Vol. 33, No. 1, pp. 151–157 and 162, Jan. 2016.
References 251
11.1 Preview
Algorithms for linear filtering are realized as programs for general-purpose
digital computers or with special-purpose digital hardware in which sequence
values and coefficients are stored in a binary format with finite-length registers.
When a digital filter is designed with high accuracy and its coefficients are
quantized, the characteristics of the resulting digital filter differ inevitably from
the original design. For example, the coefficient quantization may alter a stable
filter to unstable one. In addition, when a sequence to be processed is obtained
by sampling a band-limited analog signal, the A/D converter produces only a
finite number of possible values for each sample.
In the implementations of a digital filter, numbers are stored in finite-
length registers. As a result, if sequence values and coefficients cannot be
accommodated in the available registers then they must be quantized before
being stored. There are three types of errors in number quantization:
(1) Coefficient-quantization errors
(2) Product-quantization errors
(3) Input-quantization errors
If coefficient-quantization is applied, then the frequency characteristic of the
resulting digital filter might differ inevitably from the desired one. Product-
quantization errors occur at the outputs of multipliers. For example, a b-bit
data sample multiplied by a b-bit coefficient results in a product that is 2b-
bit long. If the result of arithmetic operations is not quantized in a recursive
realization of a digital filter, the number of bits will increase indefinitely as
data processing continues. Since a uniform register length must be used in
practice throughout the filter, each multiplier must be rounded or truncated
before processing continues. The errors induced by rounding or truncation
propagate through the filter and rise output noise referred to output roundoff
253
254 Finite Word Length Effects
Sign bit
L
Binary
point
which is the finest separation between the 2L+1 numbers we can represent with
L + 1 bits. The number q can be arbitrarily defined by choosing an appropriate
Δ, and is called quantization step size.
The error between the real number x and its finite binary representation is
given by
e = x − Q[x] (11.4)
It shall be assumed that in forming Q[x] the number x is rounded to the nearest
integer multiple of q. As a result, the quantizer that defines the relationship
between x and Q[x] has a characteristic as shown in Figure 11.2 where Δ is
normalized to be unity, i.e., Δ = 1.
From Figure 11.2, it is observed that the error e in (11.4) due to quantization
lies between −q/2 and q/2, that is,
q q
− ≤e≤ (11.5)
2 2
Theoretical studies and numerical experiments have shown [1, 2] that the
error e can be approximated as a random noise, uniformly distributed on
[−q/2, q/2] with probability density shown in Figure 11.3. Evidently, the
Q[x]
q
x
Rounding of
two’s complement
p(e)
1/q
e
−q/2 0 q/2
Figure 11.3 Probability density function of the quantization error.
256 Finite Word Length Effects
mean value of the error e is zero, and the variance associated with this error
distribution is given by
q
2 1 2 q2
σe2 2
= E[e ] = e de = (11.6)
− 2q q 12
Q[x]
... ...
x
Q[x]
...
x
...
N = M × 2I (11.7)
fT(r)
...
r
...
fS(r)
Assuming that the range of the quantizer is (−1, 1), an overflow function
f must satisfy
The above relations imply that the magnitude of f (x) never exceeds that of
x, namely,
|f (x)| ≤ |x| (11.9)
This is an essential property in characterizing an overflow function f .
In order to study overflow oscillations in a state-space model, we consider
an idealized state equation described by
with
f [x] = [f (x1 ), f (x2 ), · · · , f (xn )]T
where f is the overflow characteristic. If the filter in (11.10) is stable, x(k)
approaches 0 as k → ∞ in (11.10) for any initial state-variable vector x(0).
However, this may not occur for a system described by (11.11) which depends
on A and f .
We now define the norm of a vector x as
√ n 1
T 2 2
||x|| = x x = xi (11.12)
i=1
With this definition of vector norm, the norm of a matrix A can be defined as
||Ax|| xT AT Ax 1
2
||A|| = max = max (11.13)
x=0 ||x|| x=0 xT x
This norm of A is the maximum increase in the length of the vector. If ||A|| <
1, then all vectors x decrease in length under multiplication by A. In other
words, if we can obtain a structure with a system matrix A such that ||A|| < 1,
then zero-input overflow oscillations will not occur.
For example, consider the following second-order transfer function:
γ − jθ γ + jθ
H(z) = +
z + α − jβ z + α + jβ
2γz + 2(γα + θβ)
=
(z + α)2 + β 2 (11.14)
−1
−α β γ−θ
= 1 1 zI 2 −
−β −α γ+θ
On the other hand, from (11.14) we observe that the filter is stable if its poles
are all strictly inside the unit circle, i.e., α2 + β 2 < 1. This in conjunction
with (11.17) implies that the filter in (11.15) is stable if and only if ||A|| is
less than unity. In the literature, matrices satisfying AT A = AAT are known
as normal matrices, and state-space digital filters with normal system matrix
A are said to be normal digital filters. From (11.16), we see that (11.15) is a
normal digital filter. In general, it also holds that stable normal digital filters
are free of zero-input overflows.
(4) If the input is a white Gaussian with zero mean and unit variance, then
∞ 1
2 2
E[v 2 (k)] = f (i) = ||f ||2 (11.24)
i=0
The first three cases stand for actual bounds on the range of variable v(k) for
each given input sequence. The last case is about a standard deviation of the
random variable. It is known that
||f ||2 ≤ max |F (ejω )| ≤ ||f ||1 (11.25)
ω
262 Finite Word Length Effects
There are commonly used scaling rules to impose a certain constraint on the
variable v(k) in (11.18). For example, the l1 -scaling and l2 -scaling on the
impulse response for internal variables are given by
∞
||f ||1 = |f (i)| = 1 (11.26)
i=0
and
∞ 1
f (i)2
2
||f ||2 = δ =1 (11.27)
i=0
respectively, where the parameter δ is subjectively chosen. The scaling factor
s in Figure 11.8 is then chosen to meet the scaling rule. For example,
∞
s = ||f ||1 = |f (i)| for l1 -scaling
i=0
(11.28)
∞ 1
f (i)2
2
s = δ||f ||2 = δ for l2 -scaling
i=0
x Q Q[x] x + Q[x]=x+e
Figure 11.9 A linear equivalent model of internal quantization of product.
11.7 Coefficient Sensitivity 263
x(k)
u(k) b z -1In c y(k)
d d
x(k)
u(k) b b z -1In c c y(k)
(k)
A A
where
Δx(k) = x̃(k) − x(k), Δy(k) = ỹ(k) − y(k)
Assuming that ΔAΔx(k) 0 and ΔcΔx(k) 0, (11.34) can be
approximated as
which leads to
Δy(k) = Δyr (k) + Δyc (k) (11.36)
provided that initial state-variable vector Δx(0) is set to null, i.e., Δx(0) = 0
where
k−1
Δyr (k) = cAk−i−1 α(i) + β(k)
i=0
k−1
Δyc (k) = cAk−i−1 ΔA x(i) + Δb u(i) + Δc x(k) + Δd u(k)
i=0
Equation (11.36) shows that the filter’s output error Δy(k) is represented by
the sum of the roundoff error Δyr (k) and error Δyc (k) caused by coefficient
quantization.
266 Finite Word Length Effects
k−1
(11.38)
k−i−1
−1
Δy c (k) = cA T ΔA T x(i) + Δb u(i)
i=0
+ Δc T −1 x(k) + Δd u(k)
respectively, which are a function of T , respectively. This reveals that the
roundoff error Δy r (k) and error Δy c (k) caused by coefficient quantization
depend on the internal structure of the state-space model.
fi [xi]
-di xi di xi
xi
0
It is noted that
⎧
⎨ 1 for quantization by truncation
⎪
di = 1 for adder’s overflow (11.42)
⎪
⎩ 2 for quantization by rounding
where
P = diag{p1 , p2 , · · · , pn } > 0
and compute the difference
where
D = diag{d1 , d2 , · · · , dn }
268 Finite Word Length Effects
ΔV [x̃(k)] ≤ 0 (11.47)
P − AT P A > 0 (11.48)
a11 a12
A= (11.50)
a21 a22
Theorem 11.1
Suppose that the magnitudes of the eigenvalues of the 2 × 2 matrix A in
(11.50) are strictly less than unity. There exists a positive-definite diagonal
matrix P for which P − AT P A is positive definite if and only if one of the
following two sets of conditions holds:
11.9 Limit Cycle-Free Realization 269
Proof
The characteristic polynomial of matrix A is given by
det(zI 2 − A) = z 2 + a1 z + a2 (11.53)
where
a1 = −tr[A] = −(a11 + a22 )
a2 = det[A] = a11 a22 − a12 a21
Recall the well-known conditions called stability triangle as described in
Section 3.2.6 that the roots of the characteristic equation z 2 + a1 z + a2 = 0
satisfy |λ| < 1 if and only if the following conditions hold:
1 − a2 > 0 (11.54a)
1 + a1 + a2 > 0 (11.54b)
1 − a1 + a2 > 0 (11.54c)
It can readily be verified that there exists a positive-definite diagonal matrix
P for which P − AT P A is positive definite if and only if there exists a
nonsingular diagonal matrix T for which I 2 − M is positive definite, where
M = (T −1 AT )T T −1 AT (11.55)
with P = T −T T −1 . The matrix I 2 − M is positive definite if and only if
both its eigenvalues are positive, and this is true if and only if
tr[I 2 − M ] > 0 and det[I 2 − M ] > 0 (11.56)
because these are the sum and product of the eigenvalues. Hence we consider
det[I 2 − M ] = det[zI 2 − M ]|z=1
= 1 − tr[M ] + det[M ]
= 1 − tr[M ] + (det[A])2
(11.57)
tr[I 2 − M ] = 2 − tr[M ]
> 1 − tr[M ] + (det[A])2
= det[I 2 − M ]
270 Finite Word Length Effects
which can be obtained from the fact that (det[A])2 < 1 for stable filters. From
(11.57), we need consider only the inequality det[I 2 − M ] > 0, since it will
then follow that tr[I 2 − M ] > 0. In terms of the elements of T , we can derive
from (11.57) that
det[I 2 − M ] = 1 − (a211 + a212 τ 2 + a221 τ −2 + a222 ) + (det[A])2 (11.58)
where T = diag{t1 , t2 } and τ = t2 /t1 . Applying the arithmetic-geometric
mean inequality
a212 τ 2 + a221 τ −2
≥ |a12 a21 | (11.59)
2
to (11.58) results in
det[I 2 − M ] ≤ 1 − (a211 + 2 |a12 a21 | + a222 ) + (det[A])2
(11.60)
= (1 + det[A])2 − (tr[A])2 − 2(a12 a21 − |a12 a21 |)
where equality holds if and only if τ 2 = |a21 /a12 |. If a12 a21 ≥ 0, then the
right side of (11.60) is the product of the left sides of (11.54b) and (11.54c),
and is therefore positive. If a12 a21 < 0, then the right side of (11.60) becomes
1−(a211 −2a12 a21 +a222 )+(det[A])2 = (1−det[A])2 −(a11 −a22 )2 (11.61)
which is positive if and only if (11.52) holds. This completes the proof of
Theorem 11.1.
11.10 Summary
In this chapter, we have reviewed the fixed-point and floating-point arithmetic
of binary numbers and the two’s complement representation of negative num-
bers. Limit cycles—overflow oscillations, scaling fixed-point digital filters to
prevent overflow, roundoff noise, and coefficient sensitivity have also been
addressed. Finally, the response of a FWL state-space description and methods
for obtaining limit cycle-free realization have been explored. The material
studied in this chapter provides a basis for the techniques to be presented in
the remaining chapters.
References
[1] W. R. Bennet, “Spectra of quantized signals,” Bell Syst. Tech. J., vol. 27,
pp. 446–472, July 1948.
References 271
12.1 Preview
It is of practical significance in many applications to construct a filter structure
so that the coefficient sensitivity of the digital filter is minimum or nearly
minimum in a certain sense. Due to finite-word-length (FWL) effects caused
by coefficient truncation or rounding, poor sensitivity may lead to degradation
of the transfer characteristics in an FWL implementation of the digital filter.
For instance, the characteristics of an originally stable filter might be so
altered that the filter becomes unstable. This motivates the study of the
coefficient sensitivity minimization problem for digital filters. Techniques
for synthesizing the state-space filter structures that minimize the deviation
of a transfer function caused by coefficient quantization can be divided
into two main classed, namely l1 /l2 -mixed sensitivity minimization [1–5]
and l2 -sensitivity minimization [6–9]. In [6–9], it has been argued that the
sensitivity measure based on the l2 -norm only is more natural and reasonable
relative to the l1 /l2 -mixed sensitivity minimization. More recently, the pro-
blem of minimizing l2 -sensitivity subject to l2 -scaling constraints has
been examined for state-space digital filters [10, 11]. It is known that
the use of scaling constraints can be beneficial for suppressing overflow
oscillations [12, 13].
In this chapter, the l2 -sensitivities with respect to the coefficient matrix
for a state-space digital filter is analyzed, and an l2 -sensitivity measure is
derived. Next, a simple method for minimizing the l2 -sensitivity measure is
presented by using a recursive matrix equation. In addition, two techniques
for minimizing the l2 -sensitivity measure subject to l2 -scaling constraints are
described: one employs a quasi-Newton algorithm and the other relies on a
Lagrange function.
Numerical experiments are presented to illustrate the validity and effec-
tiveness of these algorithms and demonstrate their performance.
273
274 l2 -Sensitivity Analysis and Minimization
Definition 12.1
Let X and f (X) be an m × n real matrix and a scalar complex function of
X differentiable with respect to all entries of X, respectively. The sensitivity
function of f (X) with respect to X is then defined as [5]
∂f (X) ∂f (X)
SX = , (S X )ij = (12.3)
∂X ∂xij
where both xij and (X)ij denote the (i, j)th entry of matrix X, respectively.
By virtue of (12.2), Definition 12.1 and the formula
∂A−1 ∂A −1
= −A−1 A (12.4)
∂aij ∂aij
the sensitivities of H(z) with respect to elements aij , bi , cj and d are
evaluated by
12.2 l2 -Sensitivity Analysis 275
∂H(z) ∂H(z)
= gi (z)fj (z), = gi (z)
∂aij ∂bi
(12.5)
∂H(z) ∂H(z)
= fj (z), =1
∂cj ∂d
respectively, where
⎡ ⎤
f1 (z)
⎢ f2 (z) ⎥
⎢ ⎥
f (z) = (zI n − A)−1 b = ⎢ .. ⎥
⎣ . ⎦
fn (z)
Definition 12.2
Let X(z) be an m × n complex-valued matrix function of complex variable
z, and xpq (z) be the (p, q)th entry of X(z). The l2 -norm of X(z) is
defined as
1
2π m n 2
1 2
X(z)2 = xpq (ejω ) dω
2π 0
p=1 q=1
(12.7)
1
2
1 dz
= tr X(z)X H (z)
2πj |z|=1 z
Using (12.6) and (12.7), the overall l2 -sensitivity measure for the transfer
function in (12.2) is defined by
∂H(z) 2 ∂H(z) 2 ∂H(z) 2
So = + +
∂A 2 ∂b 2 ∂cT 2 (12.8)
2 2
= [f (z)g(z)]T 2 + g T (z)2 + f (z)2
2
276 l2 -Sensitivity Analysis and Minimization
The term d in (12.2) and the sensitivity with respect to it are coordinate
independent, and therefore they are neglected here.
It is easy to show that the l2 -sensitivity measure in (12.8) can be
expressed as
So = tr[N (I n )] + tr[W o ] + tr[K c ] (12.9)
where
1 dz
Kc = f (z)f T (z −1 )
2πj |z|=1 z
1 dz
Wo = g T (z)g(z −1 )
2πj |z|=1 z
1 dz
N (P ) = [f (z)g(z)]T P −1f (z −1 )g(z −1 )
2πj |z|=1 z
Here P is an n × n nonsingular matrix that will later be related to a
coordinate transformation for the state-variable vector of the digital filter
(see Section 12.3 below). Noting that
(zI n − A)−1 = z −1 I n + Az −2 + A2 z −3 + · · ·
∞ (12.10)
= Ai z −(i+1)
i=0
and utilizing Cauchy’s integral theorem
1 k dz
1, k=0
z = (12.11)
2πj C z 0, k = 0
where C is a counterclockwise contour that encircles the origin, matrices K c
and W o in (12.9) can be written as
∞
Kc = Ak bbT (Ak )T
k=0
(12.12)
∞
k T T k
Wo = (A ) c cA
k=0
respectively, and they can be obtained by solving the Lyapunov equations
K c = AK c AT + bbT
(12.13)
W o = A T W o A + cT c
12.3 Realization with Minimal l2 -Sensitivity 277
where
i
H(i) = Al bcAi−l
l=0
It is noted that N (P ) can also be obtained by solving the Lyapunov equation
in closed form, as shown in (12.21) and (12.22) later.
f (z)g(z) = T −1 f (z)g(z)T
−1
−1 zI n − A −bc 0 (12.20)
= T 0
0 zI n − A T
where
f (z) = (zI n − A)−1 b, g(z) = c(zI n − A)−1
and denoting the observability Grammian of a composite system f (z)g(z)
in (12.20) by Y , it is easy to show that for an arbitrary P = T T T , matrix
N (P ) can be obtained by solving the Lyapunov equation
T
A bc A bc P −1 0
Y = Y + (12.21)
0 A 0 A 0 0
It is well known that the solution of minimizing S(P ) in (12.19) with respect to
P must satisfy the Karush-Kuhn-Tucker (KKT) condition ∂S(P )/∂P = 0.
Using the formula for evaluating the matrix gradient [5, 14]
∂ tr[M X]
= MT
∂X
(12.23)
∂ tr[M X −1 ] T
= − X −1 M X −1
∂X
the gradient of S(P ) in (12.19) with respect to P is found to be
∂S(P )
= N (P ) − P −1 M (P )P −1 + W o − P −1 K c P −1 (12.24)
∂P
where
1 dz
M (P ) = F (z −1 )G(z −1 )P [F (z)G(z)]T
2πj |z|=1 z
P F (P )P = G(P ) (12.27)
where
F (P ) = N (P ) + W o , G(P ) = M (P ) + K c
where P k is the solution of the previous iteration, and the initial estimate P 0
is often chosen as P 0 = I n . This iteration process continues until
We now obtain the optimal coordinate transformation matrix T that solves the
problem of minimizing S(P ) in (12.19). As analyzed earlier, the optimal T
assumes the form 1
T = P 2U (12.32)
where P 1/2 is square root of the matrix P obtained above, and U is an arbitrary
n × n orthogonal matrix. The optimal realization with minimal l2 -sensitivity
can readily be constructed by substituting (12.32) into (12.16).
then we have
∞
|xi (k)| ≤ |eTi Al−1 bu(k − l)|
l=1
∞ 1 (12.35)
eTi Al−1 bbT (AT )l−1 ei
2
≤
l=1
= eTi K c ei
12.4 l2 -Sensitivity Minimization Subject to l2 -Scaling Constraints 281
where xi (k) denotes the ith element of the state-variable vector x(k), ei is
the ith column of an identity matrix I n of dimension n × n, and matrix
∞
Kc = Ak bbT (Ak )T
k=0
so that (12.39) is always satisfied. From (12.18) and (12.38), it follows that
T T
J(T̂ ) = tr[T̂ N̂ (T̂ )T̂ ] + tr[T̂ Ŵ o T̂ ] + n
(12.41)
−T −1 T
= tr[T̂ M̂ (T̂ )T̂ ] + tr[T̂ Ŵ o T̂ ] + n
where
1 1 T 1 1 1 1
N̂ (T̂ ) = K c2 N (K c2 T̂ T̂ K c2 )K c2 , Ŵ o = K c2 W o K c2
−1 1 T 1
− 12
M̂ (T̂ ) = K c 2 M (K c2 T̂ T̂ K c2 )K c
xk+1 = xk + αk dk (12.43)
where
dk = −S k ∇J(xk ), αk = arg min J(xk + αdk )
α
T
γ Tk S k γ k δ k δ Tk − δ k γ Tk S k +S k γ k δ k
S k+1 = S k + 1 +
γ Tk δ k γ k δk
T γ k δk
T
t̃j tj t tj
j
+ Δ∂ /∂tij = − Δ g ij (12.46)
||t̃j || ||tj || ||tj || ||tj ||
where t
j 1
g ij = −∂ /∂tij = (tij tj − ||tj ||2 ei )
||tj || ||tj ||3
Now let T̂ ij be the matrix obtained from T̂ with a perturbed (i, j)th
component, then we obtain
−1 −1
T̂ ij = T̂ − Δg ij eTj (12.47)
and up to the first-order, the matrix inversion formula [16, p. 655] gives
ΔT̂ g ij eTj T̂
T̂ ij = T̂ + T̂ + ΔT̂ g ij eTj T̂ (12.48)
1 − ΔeTj T̂ g ij
284 l2 -Sensitivity Analysis and Minimization
and T
∂tr T̂ Ŵ o T̂ T
= 2 tr T̂ g ij eTj T̂ Ŵ o T̂
∂tij (12.54)
T
= 2 eTj T̂ Ŵ o T̂ T̂ g ij
−T −1
∂tr T̂ M̂ (T̂ )T̂ −1
= −2 tr ej g Tij M̂ (T̂ )T̂
∂tij
−1 (12.55)
= −2 g Tij M̂ (T̂ )T̂ ej
−T
= −2 eTj T̂ M̂ (T̂ )g ij
where
F (P ) = N (P ) + W o
G(P , λ) = M (P ) + (λ + 1)K c
The first equation in (12.61) is highly nonlinear with respect to P . An effective
approach for solving the first equation in (12.61) is to relax it into the recursive
second-order matrix equation
⎡ ⎤ ⎡ ⎤
0 1 0 0
A=⎣ 0 0 1 ⎦, b=⎣ 0 ⎦
0.45377 −1.55616 1.97486 1
c = 10−1 0.2317 0.2302 0.7930 , d = 0.01594
Carrying out the computation of (12.13), (12.21), (12.22), (12.25) and (12.26),
the controllability and observability Grammians K c and W o , and matrices
N (I 3 ) and M (I 3 ) were computed as
⎡ ⎤
17.061835 14.886464 9.602768
K c = ⎣ 14.886464 17.061835 14.886464 ⎦
9.602768 14.886464 17.061835
⎡ ⎤
0.048104 −0.119291 0.095427
W o = ⎣ −0.119291 0.311061 −0.249968 ⎦
0.095427 −0.249968 0.231012
⎡ ⎤
8.921384 −22.046468 17.916293
N (I 3 ) = ⎣ −22.046468 55.671739 −46.052035 ⎦
17.916293 −46.052035 42.522104
⎡ ⎤
35.705076 32.086502 22.476116
M (I 3 ) = ⎣ 32.086502 35.705076 32.086502 ⎦
22.476116 32.086502 35.705076
and the l2 -sensitivity measure in (12.9) was found to be
So = 158.890911
Performing the l2 -scaling to the above state-space model (A, b, c, d)3 with a
diagonal coordinate-transformation matrix given by
K c = T −1 −T
o K cT o
⎡ ⎤
1.000000 0.872501 0.562821
= ⎣ 0.872501 1.000000 0.872501 ⎦
0.562821 0.872501 1.000000
290 l2 -Sensitivity Analysis and Minimization
So = 120.184738
which yields
⎡ ⎤
8.189112 3.732952 0.682678
1
T =P2 = ⎣ 3.732952 4.301777 2.566890 ⎦
0.682678 2.566890 4.110287
which is equivalent to
⎡ ⎤
4.425883 −0.877680 −4.360270
T = ⎣ 2.866741 1.652464 −2.805767 ⎦
2.021688 2.654510 −0.495080
The profile of J(x) during the first 12 iterations of the algorithm is depicted
in Figure 12.3.
As a result, an equivalent realization was derived from (12.16) as
⎡ ⎤ ⎡ ⎤
0.664789 0.072468 0.067395 0.668510
A = ⎣ 0.074199 0.717025 0.590431 ⎦ , b = ⎣ −0.005654 ⎦
0.002388 −0.449754 0.593046 0.679708
c = 0.328860 0.228207 −0.204876
J(T̂ ) = 8.672132
12.7 Summary
The minimization problem of l2 -sensitivity for state-space digital filters has
been considered with or without l2 -scaling constraints. The problem free
from l2 -scaling constraints has been solved by employing a recursive matrix
equation. The constrained optimization problem has been solved by two
iterative methods: one converts the constrained optimization problem at hand
into an unconstrained problem and solves it using a quasi-Newton algorithm,
References 295
while the other relaxes the constraints into a single constraint on matrix trace
and solves the relaxed problem with an efficient matrix iteration scheme based
on the Lagrange function. Simulation results in numerical experiments have
demonstrated the validity and effectiveness of these techniques.
296 l2 -Sensitivity Analysis and Minimization
References
[1] L. Thiele, “Design of sensitivity and round-off noise optimal state-
space discrete systems,” Int. J. Circuit Theory Appl., vol. 12, pp. 39–46,
Jan. 1984.
[2] V. Tavsanoglu and L. Thiele, “Optimal design of state-space digital filter
by simultaneous minimization of sensitivity and roundoff noise,” IEEE
Trans. Circuits Syst., vol. CAS-31, no. 10, pp. 884–888, Oct. 1984.
[3] L. Thiele, “On the sensitivity of linear state-space systems,” IEEE Trans.
Circuits Syst., vol. CAS-33, no. 5, pp. 502–510, May 1986.
[4] M. Iwatsuki, M. Kawamata and T. Higuchi, “Statistical sensitivity
and minimum sensitivity structures with fewer coefficients in discrete
time linear systems,” IEEE Trans. Circuits Syst., vol. CAS-37, no. 1,
pp. 72–80, Jan. 1989.
[5] G. Li, B. D. O. Anderson, M. Gevers and J. E. Perkins, “Optimal
FWL design of state-space digital systems with weighted sensitivity
minimization and sparseness consideration,” IEEE Trans. Circuits Syst.
I, vol. 39, no. 5, pp. 365–377, May 1992.
[6] W.-Y. Yan and J. B. Moore, “On L2 -sensitivity minimization of linear
state-space systems,” IEEE Trans. Circuits Syst. I, vol. 39, no. 8,
pp. 641–648, Aug. 1992.
[7] G. Li and M. Gevers, “Optimal synthetic FWL design of
state-space digital filters,” in Proc. ICASSP 1992, vol. 4,
pp. 429–432.
[8] M. Gevers and G. Li, Parameterizations in Control, Estimation and
Filtering Problems: Accuracy Aspects. New York: Springer-Verlag,
1993.
[9] T. Hinamoto, S. Yokoyama, T. Inoue, W. Zeng and W.-S. Lu,
“Analysis and minimization of L2 -sensitivity for linear systems and
two-dimensional state-space filters using general controllability and
observability Grammians,” IEEE Trans. Circuits Syst. I, vol. 49, no. 9,
pp. 1279–1289, Sept. 2002.
[10] T. Hinamoto, H. Ohnishi and W.-S. Lu, “Minimization of L2 -sensitivity
for state-space digital filters subject to L2 -dynamic-range scaling con-
straints,” IEEE Trans. Circuits Syst.-II, vol. 52, no. 10, pp. 641–645,
Oct. 2005.
[11] T. Hinamoto, K. Iwata and W.-S. Lu, “L2 -sensitivity Minimization of
one- and two-dimensional state-space digital filters subject to L2 -scaling
References 297
constraints,” IEEE Trans. Signal Process., vol. 54, no. 5, pp. 1804–1812,
May 2006.
[12] C. T. Mullis and R. A. Roberts, “Synthesis of minimum roundoff noise
fixed-point digital filters,” IEEE Trans. Circuits Syst., vol. CAS-23,
no. 9, pp. 551–562, Sept. 1976.
[13] S. Y. Hwang, “Minimum uncorrelated unit noise in state-space digital
filtering,” IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-25,
no. 4, pp. 273–281, Aug. 1977.
[14] L. L. Scharf, Statistical Signal Processing, Reading, MA: Addison-
Wesley, 1991.
[15] R. Fletcher, Practical Methods of Optimization, 2nd ed., Wiley,
New York, 1987.
[16] T. Kailath, Linear System, Englewood Cliffs, N.J.: Prentice-Hall, 1980.
13
Pole and Zero Sensitivity Analysis
and Minimization
13.1 Preview
When a transfer function with infinite accuracy coefficients is designed so
as to meet the filter specification requirements and the transfer function is
implemented by a state-space model with a finite binary representation, the
state-space parameters must be truncated or rounded to fit the finite-word-
length (FWL) constraints. This coefficient quantization inevitably changes the
characteristics of the digital filter. For instance, it may alter a stable filter to an
unstable one. This motivates the study of minimizing coefficients sensitivity.
As is well known, there are several ways to define sensitivity of a filter with
respect to its coefficients. Two of them are based on a mixed l1 /l2 norm and
a pure l2 norm, respectively. One of these sensitivity definitions measures
changes of a certain transfer function, while the other is defined in terms of
the poles and zeros of a filter. Several techniques concerning minimization of
the l1 /l2 - and l2 -sensitivity measures have been proposed [1–7]. Alternatively,
pole and zero sensitivity of a filter with respect to state-space parameters has
been analyzed and its reduction and minimization have been addressed [7–12].
A method for minimizing a zero sensitivity measure subject to minimal pole
sensitivity for state-space digital filters has also been explored without taking
l2 -scaling into account [11]. Recently, techniques for minimizing a weighted
pole and zero sensitivity measure subject to l2 -scaling constraints have been
developed [12].
In this chapter, a weighted measure for pole and zero sensitivity for state-
space digital filters is introduced, and the problem of minimizing this measure
is studied. To this end, an iterative technique for minimizing this measure
is presented by employing a recursive matrix equation. A simple method for
minimizing a zero sensitivity measure subject to minimal pole sensitivity is
also given by pursuing an optimal coordinate transformation. Furthermore, the
299
300 Pole and Zero Sensitivity Analysis and Minimization
Z = A − d−1 bc (13.3)
Hence
YH H
p X p = I n ⇐⇒ y p (k)xp (l) = δkl (13.10)
Multiplying (13.8) from the left by y p (l)H and using (13.10) yields
λl = y H
p (l)Axp (l) (13.11)
302 Pole and Zero Sensitivity Analysis and Minimization
Lemma 13.2
Let xz (l) be a right eigenvector of Z corresponding to vl and y z (l) be the
reciprocal left eigenvector that corresponds to xz (l). If Z has n linearly
independent eigenvectors, then we have
∂vl T
= xz (l)y H
z (l) for l = 1, 2, · · ·, n (13.14)
∂Z
Proof
The proof of this lemma is identical to that of Lemma 13.1.
Lemma 13.3
If (13.8) holds, it can be verified that
∂vl ∂vl ∂vl ∂vl T
= , = −d−1 c
∂A ∂Z ∂b ∂Z
(13.15)
∂vl −1 T ∂vl ∂vl −2 T ∂vl T
= −d b , =d b c
∂c ∂Z ∂d ∂Z
Proof
Let aij and zij be the (i, j)th entry of A and Z, respectively. By virtue of vl =
yH H H H
z (l)Zxz (l), Zxz (l) = vl xz (l), y z (l)Z = vl y z (l) and y z (l)xz (l) = 1,
we can write
∂vl ∂y Hz (l) ∂Z ∂xz (l)
= Zxz (l) + y Hz (l) xz (l) + y H
z (l)Z
∂aij ∂aij ∂aij ∂aij
∂Z ∂y H (l) ∂xz (l)
z
= yH
z (l) xz (l) + vl xz (l) + y H
z (l) (13.16)
∂aij ∂aij ∂aij
∂Z ∂Z ∂vl
= yH
z (l) xz (l) = y H
z (l) xz (l) =
∂aij ∂zij ∂zij
13.2 Pole and Zero Sensitivity Analysis 303
which is equivalent to ∂vl /∂A = ∂vl /∂Z. Similarly, letting bi and cj be the
ith entry of b and the jth entry of c, respectively, we can write
∂vl ∂Z
= yH
z (l) xz (l) = −d−1 y H
z (l)ei c xz (l)
∂bi ∂bi
(13.17)
= −d−1 eTi y H T T T −1 T ∂vl cT
z (l) xz (l) c = −d ei
∂Z
∂vl ∂Z
= yH
z (l) xz (l) = −d−1 y H T
z (l)bej xz (l)
∂cj ∂cj
(13.18)
∂vl
= −d−1 bT y H T T
z (l) xz (l) ej = −d−1 bT ej
∂Z
∂vl ∂Z
= yH
z (l) xz (l) = d−2 y H
z (l)bcxz (l)
∂d ∂d
(13.19)
= d−2 bT y H T T T −2 T ∂vl cT
z (l) xz (l) c = d b
∂Z
because
∂vl ∂Z
= yH
z (l) xz (l) = y H T
z (l)ei ej xz (l)
∂zij ∂zij
= eTi y H T T H T T
z (l) xz (l) ej = (y z (l) xz (l) )ij
which is equivalent to
∂vl
= yH T
z (l) xz (l)
T
∂Z
This completes the proof of Lemma 13.3.
We now define the pole sensitivity measure Jp and the zero sensitivity
measure Jz for the digital filter in (13.1) as
n
n
∂λl 2 ∂λl T 2
Jp =
∂A = ∂A (13.20a)
l=1 F l=1 F
n
∂vl 2 ∂vl 2 ∂vl 2 ∂vl 2
Jz = + + + (13.20b)
∂A ∂b ∂c ∂d
l=1 F F F F
|(M )ij |2
2
||M ||F =
i=1 j=1
304 Pole and Zero Sensitivity Analysis and Minimization
Here, (M )ij stands for the (i, j)th element of M . By noting that
and using (13.7), (13.14) and (13.15), we can write (13.20a) and (13.20b) as
n
Jp = xH
p (l)xp (l) yH
p (l)y p (l) (13.22a)
l=1
n
Jz = xH 2
z (l)xz (l) + αl yH 2
z (l)y z (l) + βl (13.22b)
l=1
respectively, where
Lemma 13.4
The pole sensitivity measure Jp in (13.22a) is lower bounded by
Jp ≥ n (13.23)
where the equality holds if and only if matrix A is normal, i.e., AAT = AT A.
Proof
By the Schwarz inequality and (13.10), it follows from (13.22a) that
n
n
n
Jp = ||xp (l)||22 ||y p (l)||22 ≥ |y p (l)H xp (l)|2 = δll = n
l=1 l=1 l=1
(13.24)
If y p (l) = μl xp (l) with μl = 0 holds for l = 1, 2, · · ·, n then Jp = n. In this
case, it follows from (13.10) that
Dμ X H
p Xp = In (13.25)
A = X p D λ X −1
p (13.26)
YH
p Xp = In (13.27)
Lemma 13.5
The zero sensitivity measure Jp in (13.22b) is lower bounded by
n
Jz ≥ (1 + |αl βl |)2 (13.28a)
l=1
where the equality holds if and only if matrix Z = A − d−1 bc is normal, i.e.,
ZZ T = Z TZ subject to its right eigenvector matrix X z satisfying
|α | |α | |αn |
1 2
XH z X z = diag , , · · ·, (13.28b)
|β1 | |β2 | |βn |
with X z = xz (1), xz (2), · · ·, xz (n) .
Proof
From (13.22b) and the arithmetic-geometric mean inequality, we obtain
n
Jz = ||xz (l)||22 ||y z (l)||22 + αl2 ||y z (l)||22 + βl2 ||xz (l)||22 + αl2 βl2
l=1
n
≥ ||xz (l)||22 ||y z (l)||22 + 2|αl βl | ||y z (l)||2 ||xz (l)||2 + αl2 βl2
l=1
= Jz
(13.29a)
where the equality holds if and only if
n
Jz = ||xz (l)||22 ||y z (l)||22 + 2|αl βl | ||y z (l)||2 ||xz (l)||2 + αl2 βl2
l=1
n
≥ |y z (l)H xz (l)|2 + 2|αl βl | |y z (l)H xz (l)| + αl2 βl2 (13.30a)
l=1
n
= (1 + |αl βl |)2
l=1
In order for the equality in both (13.29a) and (13.30a) to hold simultaneously,
both (13.29b) and (13.30b) must be satisfied. The conditions in (13.29b) and
(13.30b) are satisfied provided that
|α | |α | |αn | −1
1 2
Y z = X z diag , , · · ·, (13.31)
|β1 | |β2 | |βn |
with Y z = y z (1), y z (2), · · ·, y z (n) = X −H z . Evidently, (13.31) is
equivalent to (13.28b) and this completes the proof of Lemma 13.5.
is applied to the digital filter in (13.1), the new realization (A, b, c, d)n can
be characterized by
A = T −1 AT , b = T −1 b, c = cT (13.33)
From (13.2) and (13.33), it is observed that the transfer function H(z) is
invariant under the coordinate transformation in (13.32). Note that the right
eigenvectors of the original and transformed system matrices A and A
13.3 Realization with Minimal Pole and Zero Sensitivity 307
P M γ (P )P = N γ (P ) (13.40)
√
By solving ∂Jz (± ζ T o )/∂ζ = 0, the optimal value of ζ is found to be
n
βl2 xH −T −1
z (l)T o T o xz (l)
ζ = l=1n (13.46)
2 H T
α y (l)T T y (l)
l z o o z
l=1
Jz (T o ) − Jz (T opt )
n
n
= αl2 y H T
z (l)T o T o y z (l) + βl2 xH −T −1
z (l)T o T o xz (l)
l=1 l=1
n n
−2 αl2 y H
z (l)T T T
o o zy (l) βl2 xH −T −1
z (l)T o T o xz (l)
l=1 l=1
≥0
(13.48)
opt
Therefore, as expected, by using the optimal T instead of matrix T o , the
zero sensitivity always gets reduced.
Here, ∇Jγ (x) denotes the gradient of Jγ (x) with respect to x, and S k is a
positive-definite approximation of the inverse Hessian matrix of Jγ (xk ).
This iteration process continues until
where T̂ ij is the matrix obtained from T̂ with a perturbed (i, j)th component
by Δ. It follows that [16, p. 655]
ΔT̂ g ij eTj T̂
T̂ ij = T̂ + T̂ + ΔT̂ g ij eTj T̂
1− ΔeTj T̂ g ij
−1 −1 (13.72)
T̂ ij = T̂ − Δg ij eTj
t
g ij = −∂ ||tj || /∂tij = ||t1||3 (tij tj − ||tj ||2 ei )
j j
13.6 Numerical Experiments 315
and
∂Jp (x) H
n
T
= x̂p (l)M̂ (T̂ )x̂p (l) ŷ H
p (l)T̂ T̂ ŷ p (l)
∂tij
l=1
−1 −T
+ x̂H
p (l)T̂ T̂ x̂p (l) ŷ H
p (l)N̂ (T̂ )ŷ p (l)
(13.73)
∂Jz (x) H
n
T
= x̂z (l)M̂ (T̂ )x̂z (l) ŷ H 2
z (l)T̂ T̂ ŷ z (l) + βl
∂tij
l=1
−1 −T
+ x̂H
z (l)T̂ T̂ x̂z (l) + αl2 ŷ H
z (l)N̂ (T̂ )ŷ z (l)
where
−T −1
M̂ (T̂ ) = − [ g ij eTj T̂ + T̂ ej g Tij ]
T T
N̂ (T̂ ) = T̂ ej g Tij T̂ + T̂ g ij eTj T̂
The original pole and zero sensitivity measures in (13.22a) and (13.22b) were
computed as
which yields
⎡ ⎤
0.504660 −1.279387 1.093553 −0.313564
1 ⎢ −1.279387 3.491572 −3.188277 0.973880 ⎥
T =P2 = 10 ⎢
⎣ 1.093553 −3.188277
⎥
3.110342 −1.014605 ⎦
−0.313564 0.973880 −1.014605 0.356118
= 7.209829 × 106 4.000000 4.000000
from which it is seen that the iterative algorithm converges to the optimal
solution with two iterations.
Since matrix T shown above yields Jp (T ) = 4, we set T = T o . Then,
by applying (13.46) and (13.47) it was found that
⎡ ⎤
0.133686 −0.338914 0.289686 −0.083064
⎢ −0.338914 0.924930 −0.844586 0.257984 ⎥
T opt = ⎢
⎣ 0.289686 −0.844586
⎥
0.823940 −0.268772 ⎦
−0.083064 0.257984 −0.268772 0.094337
and
Jz T opt ) = 593.186873, ζ = 7.017385 × 10−4
It is noted that T opt obtained above corresponds to the optimal coor-
dinate√transformation matrix that minimizes a zero sensitivity measure
Jz (± ζ T o ) with respect to ζ subject to minimal pole sensitivity satisfying
Jp (T o ) = 4.
The optimal realization specified by Aopt = (T opt )−1 AT opt , bopt =
(T ) b, copt = cT opt became
opt −1
⎡ ⎤
0.938212 0.125295 −0.023034 0.057956
⎢ −0.112124 0.961707 0.106409 0.016275 ⎥
Aopt = ⎢⎣ −0.039345 −0.091772
⎥
0.920683 0.074085 ⎦
−0.073949 −0.006215 −0.060044 0.897698
318 Pole and Zero Sensitivity Analysis and Minimization
⎡ ⎤
0.233312
⎢ 0.238191 ⎥
bopt = ⎢ ⎥
⎣ 0.238978 ⎦
0.234970
copt = 0.133686 −0.338914 0.289686 −0.083064
always holds. From Table 13.1, it is observed that the lower bound of Jz (T )
was achieved with γ = 0. It is also observed that the sum of pole sensitivity and
zero sensitivity reaches minimum when the weight value γ = 0.5 is chosen.
Moreover, with γ as an adjustable design parameter, the proposed weighted
optimization provides a variety of options to suit the need of a particular
application where the designer may prefer smaller pole sensitivity or smaller
zero sensitivity.
⎡ ⎤
0.336146 −0.948542 0.899849 −0.286556
⎢ −0.948542 2.679553 −2.544864 0.811398 ⎥
P = 10 ⎢
⎣ 0.899849 −2.544864
⎥
2.419739 −0.772465 ⎦
−0.286556 0.811398 −0.772465 0.246930
where
Jp (T ) = 4.000000, Jz (T ) = 5452.531195.
By using (13.33), we obtained
⎡ ⎤
0.927393 −0.117544 −0.055973 0.012748
⎢ 0.127480 0.931340 −0.021222 0.036623 ⎥
A=⎢ ⎣ 0.003557
⎥
0.063032 0.935066 0.122093 ⎦
0.029127 0.015908 −0.123729 0.924501
⎡ ⎤
0.320110
⎢ 0.041111 ⎥
b=⎢ ⎣ −0.168643 ⎦
⎥
0.244432
c = 1.163353 −0.501460 1.162615 −0.636344
T T
It was observed that A A = A A holds. This means that matrix A is normal
and the lower bound n = 4 of Jp (T ) is achieved. For the new realization, the
controllability Grammian was found from (13.50) to be
⎡ ⎤
1.000000 0.296865 −0.585417 0.804018
⎢ 0.296865 1.000000 0.585417 0.804018 ⎥
Kc = ⎢ ⎣ −0.585417 0.585417
⎥
1.000000 0.000000 ⎦
0.804018 0.804018 0.000000 1.000000
⎡ ⎤ ⎡ ⎤
ξ1 ξ2 −1.069263 × 106 −4.213525 × 102
⎢ ξ3 ξ4 ⎥ ⎢ 0 −4.496284 × 10−1 ⎥
⎢ ⎥ = ⎢ −7.117870 × 10−2 ⎥
⎣ ξ5 ξ6 ⎦ ⎣ −1.817527 × 10 −5.577404 × 10−4 ⎦
ξ7 ξ8 −1.676641 × 10−5 −5.025417 × 10−7
0.484019
c = 0.149803 −0.161958 0.261061 −0.203040
T T
It was observed that A A = A A holds. This implies that matrix A
is normal and the lower bound n = 4 of Jp (T ) is achieved. For the new
realization, the controllability Grammian was found from (13.50) to be
⎡ ⎤
1.000000 0.596733 0.466712 0.147733
⎢ 0.596733 1.000000 0.752591 0.747172 ⎥
Kc = ⎢ ⎣ 0.466712 0.752591 1.000000 0.665045 ⎦
⎥
where the l2 -scaling constraints are satisfied. The pole sensitivity performance
of 19 iterations is shown in Figure 13.2 where γ = 1, i.e., Jγ (T ) =
Jp (T ), from which it is seen that the iterative algorithm converges with
19 iterations.
The optimized pole and zero sensitivity measures subject to the l2 -
scaling constraints corresponding to various values of γ are summarized in
Table 13.3.
13.7 Summary
Three iterative techniques for minimizing a weighted pole and zero sensitivity
measure have been presented. The problem free from l2 -scaling constraints
has been solved by employing a recursive matrix equation. A simple method
has also been given to obtain the optimal coordinate transformation matrix
which minimizes a zero sensitivity measure subject to minimal pole sensitivity.
Moreover, two iterative methods for minimizing the weighted pole and zero
sensitivity measure subject to l2 -scaling constraints have been introduced.
One relaxes the constraints into a single constraint on matrix trace and solves
the relaxed problem with an efficient matrix iteration scheme based on the
Lagrange function and a bisection method, while the other converts the
constrained optimization problem at hand into an unconstrained problem and
solves it using a quasi-Newton algorithm.
324 Pole and Zero Sensitivity Analysis and Minimization
References
[1] L. Thiele, “Design of sensitivity and round-off noise optimal state-
space discrete systems,” Int. J. Circuit Theory Appl., vol. 12, pp. 39–46,
Jan. 1984.
[2] L. Thiele, “On the sensitivity of linear state-space systems,” IEEE Trans.
Circuits Syst., vol. CAS-33, no. 5, pp. 502–510, May 1986.
[3] G. Li, B. D. O. Anderson, M. Gevers and J. E. Perkins, “Optimal
FWL design of state-space digital systems with weighted sensitivity
minimization and sparseness consideration,” IEEE Trans. Circuits Syst. I,
vol. 39, no. 5, pp. 365–377, May 1992.
[4] W.-Y. Yan and J. B. Moore, “On L2 -sensitivity minimization of lin-
ear state-space systems,” IEEE Trans. Circuits Syst. I, vol. 39, no. 8,
pp. 641–648, Aug. 1992.
[5] T. Hinamoto, H. Ohnishi and W.-S. Lu, “Minimization of L2 -sensitivity
for state-space digital filters subject to L2 -dynamic-range scaling con-
straints,” IEEE Trans. Circuits Syst. II, vol. 52, no. 10, pp. 641–645,
Oct. 2005.
[6] T. Hinamoto, K. Iwata and W.-S. Lu, “L2 -sensitivity minimization of
one- and two-dimensional state-space digital filters subject to L2 -scaling
constraints,” IEEE Trans. Signal Process., vol. 54, no. 5, pp. 1804–1812,
May 2006.
[7] M. Gevers and G. Li, Parameterizations in Control, Estimation and
Filtering Problems: Accuracy Aspects, New York: Springer-Verlag,
1993.
[8] P. E. Mantey, “Eigenvalue sensitivity and state-variable selection,” IEEE
Trans. Automatic Contr., vol. AC-13, no. 3, pp. 263–269, Jun. 1968.
[9] R. E. Skelton and D. A. Wagie, “Minimal root sensitivity in linear
systems,” J. Guidance Contr., vol. 7, no. 5, pp. 570–574, Sep.–Oct. 1984.
[10] D. Williamson, “Roundoff noise minimization and pole-zero sensitivity
in fixed-point digital filters using residue feedback,” IEEE Trans. Acoust.,
Speech, Signal Process., vol. ASSP-34, no. 5, pp. 1210–1220, Oct. 1986.
[11] G. Li, “On pole and zero sensitivity of linear systems,” IEEE Trans.
Circuits Syst. I, vol. 44, no. 7, pp. 583–590, Jul. 1997.
References 325
14.1 Preview
Error feedback is also called error spectrum shaping, and it is known as an
effective method for the reduction of quantization error generated in finite-
word-length (FWL) implementations of IIR digital filters, and it is especially
so when dealing with fixed-point implementations of narrow-band lowpass
filters. Error feedback can be achieved by extracting the quantization error after
multiplication and addition, and then feeding the error signal back through
simple filters. When error feedback is applied to an IIR digital filter with
either external or internal description, it only affects the transfer function of
the quantization error signal, but not the input-output characteristic of the filter.
As a result, error feedback neither alters coefficient sensitivities nor enhances
overflow properties of the filter. It is well known that the level of the filter’s
output quantization noise of an IIR filter tends to become high when the poles
lie close to the unit circle. This problem can also be addressed effectively by
error feedback whose parameters are chosen appropriately so that the zeros of
the transfer function from the quantization error to the filter’s output are tuned
via error spectrum shaping so as to reduce the effects of the quantization noise
at the filter’s output.
In this chapter, we study the problem of minimizing the roundoff noise
at the filter’s output by applying high-order error feedback for both external
and internal descriptions of IIR digital filters. The optimal solution of high-
order error feedback is obtained for IIR digital filters as well as state-space
digital filters. As alternatives to the optimal solution, suboptimal solutions for
the high-order error feedback with symmetric or antisymmetric coefficients
(matrices) are then derived. Finally, we present numerical experiments to
demonstrate the validity and effectiveness of the techniques addressed in this
chapter.
327
328 Error Spectrum Shaping
e(k-N)
N z -1
e(k-2)
2 z -1
e(k-1)
1 z -1
e(k)
where X̃(z), U (z) and E(z) are the z-transforms of signals x̃(k), u(k) and
e(k), respectively. Let the transfer function from the quantization point to
the filter’s output be denoted by G(z). In general, G(z) is a rational transfer
function of a linear, time-invariant, causal, and stable system of order usually
higher than N . Under the circumstance, we obtain
Y (z) = G(z)X̃(z) = G(z)U (z) + G(z)B(z)E(z) (14.4)
where
B(z) = 1 + β1 z −1 + β2 z −2 + · · · + βN z −N
and Y (z) indicates the z-transform of the output signal y(k). It is standard to
assume that each quantizer is modeled as an independent additive white noise
source with variance σ 2 = 2−2b /12 where (1 + b) is the wordlength (1 bit for
sign). The normalized noise gain (noise variance) from the noise source to the
filter’s output can be written as
2
σout 1 dz
I(β) = 2 = G(z)B(z)G(z −1 )B(z −1 ) (14.5)
σ 2πj |z|=1 z
which is equivalent to
π
1
I(β) = |B(ejω )|2 Q(ω)dω (14.6)
π 0
where T
β = β1 β2 · · · βN , Q(ω) = |G(ejω )|2
Note that
N
N
N
B(z −1 )B(z) = 1 + βi z i + z −i + βi βl z i−l
i=1 i=1 l=1
N
N N −1 N −l
=1+ βi z i + z −i + βi2 + βi βi+l z l + z −l
i=1 i=1 l=1 i=1
(14.7)
which can be written as
N
N
N
jω 2
|B(e )| = 1 + 2 βi cos(iω) + βi βl cos(i − l)ω (14.8)
i=1 i=1 l=1
because
ejωl + e−jωl = 2 cos(lω) = cos(lω) + cos(−lω)
330 Error Spectrum Shaping
N
N N
I(β) = βi βl q|i−l| + 2 βi qi + q0
i=1 l=1 i=1 (14.10)
= β T Rβ + 2β T p + q0
where
⎡ ⎤ ⎡ ⎤
q0 q1 ··· qN −1 q1
⎢ q1 q0 ··· qN −2 ⎥ ⎢ q2 ⎥
⎢ ⎥ ⎢ ⎥
R=⎢ .. .. .. .. ⎥, p=⎢ .. ⎥
⎣ . . . . ⎦ ⎣ . ⎦
qN −1 qN −2 · · · q0 qN
= g0 gi + cK c (Ai )T cT
where
∞
G(z) = d + c(zI n − A)−1 b = gk z −k
k=0
gk = cAk−1 b for k ≥ 1, g0 = d
332 Error Spectrum Shaping
which is equivalent to
M
|B(ejω )|2 = 2 1 + cos(2M + 1)ω + 2 βi {cos iω + cos(2M + 1 − i)ω}
i=1
M
M
+ βi βl {cos(i − l)ω + cos(2M + 1 − i − l)ω}
i=1 l=1
(14.21)
Substituting (14.21) into (14.6) yields
M
I(β o ) = 2 q0 + q2M +1 + 2 βi qi + q2M +1−i
i=1
M
M
(14.22)
+ βi βl qi−l + q2M +1−i−l
i=1 l=1
= 2 q0 + q2M +1 + 2β To po + p̃o + β To Ro + R̃o β o
where
⎡ ⎤ ⎡ ⎤ ⎡ ⎤
β1 q1 q0 q1 · · · qM −1
⎢ β2 ⎥ ⎢ q2 ⎥ ⎢ q1 q0 · · · qM −2 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
β o = ⎢ .. ⎥ , po = ⎢ .. ⎥ , Ro = ⎢ .. .. .. .. ⎥
⎣ . ⎦ ⎣ . ⎦ ⎣ . . . . ⎦
βM qM qM −1 qM −2 ··· q0
⎡ ⎤ ⎡ ⎤
q2M q2M −1 q2M −2 · · · qM
⎢q2M −1 ⎥ ⎢q2M −2 q2M −3 · · · qM −1 ⎥
⎢ ⎥ ⎢ ⎥
p̃o = ⎢ .. ⎥ , R̃o = ⎢ .. .. . .. ⎥
⎣ . ⎦ ⎣ . . . . . ⎦
qM +1 qM qM −1 · · · q1
M
M
(14.27)
+ βi βl qi−l − q2M +1−i−l
i=1 l=1
= 2 q0 − q2M +1 + 2β To po − p̃o + β To Ro − R̃o β o
L−1
L−1
+ βi βl z i−l + z −(i−l) + z 2L−i−l + z −2L+i+l
i=1 l=1
L−1
+2 βL βi z L−i + z −L+i + βL2
i=1
(14.30)
which is equivalent to
L−1
L−1
+2 βi βl {cos(i − l)ω + cos(2L − i − l)ω}
i=1 l=1
L−1
+4 βL βi cos(L − i)ω + βL2
i=1
(14.31)
Substituting (14.31) into (14.6) yields
L−1
I(β se ) = 2 q0 + q2L + 4βL qL + 4 βi qi + q2L−i
i=1
336 Error Spectrum Shaping
L−1
L−1 L−1
+2 βi βl qi−l + q2L−i−l + 4 βL βi qL−i + βL2 qo
i=1 l=1 i=1
T 2 pe + p̃e T 2(Re + R̃e ) 2r
= 2 q0 + q2L + 2β se + β se β se
2qL 2r T q0
(14.32)
where
⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤
β1 q1 q2L−1 qL−1
⎢ β2 ⎥ ⎢ q2 ⎥ ⎢q2L−2 ⎥ ⎢qL−2 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥
β se = ⎢ .. ⎥ , pe = ⎢ .. ⎥ , p̃e = ⎢ .. ⎥ , r = ⎢ .. ⎥
⎣ . ⎦ ⎣ . ⎦ ⎣ . ⎦ ⎣ . ⎦
βL qL−1 qL+1 q1
⎡ ⎤ ⎡ ⎤
q0 q1 · · · qL−2 q2L−2 q2L−3 · · · qL
⎢ q1 q0 · · · qL−3 ⎥ ⎢q2L−3 q2L−4 · · · qL−1 ⎥
⎢ ⎥ ⎢ ⎥
Re = ⎢ .. .. .. . ⎥ , R̃ e = ⎢ .. .. .. .. ⎥
⎣ . . . .. ⎦ ⎣ . . . . ⎦
qL−2 qL−3 · · · q0 qL qL−1 · · · q2
The optimal β se is found by setting ∂I(β se )/∂β se = 0 as
−1
opt 2(R e + R̃ e ) 2r 2 pe + p̃e
β se = − (14.33)
2r T q0 2qL
which is equivalent to
L−1
|B(ejω )|2 = 2 − 2 cos 2Lω + 4 βi cos iω − cos(2L − i)ω
i=1
(14.36)
L−1
L−1
+2 βi βl cos(i − l)ω − cos(2L − i − l)ω
i=1 l=1
L−1
L−1 (14.37)
+2 βi βl qi−l − q2L−i−l
i=1 l=1
= 2 q0 − q2L + 4β Tae pe − p̃e + 2β Tae Re − R̃e β ae
FN e(k-N+1)
z -1In
FN-1 e(k-N+2)
F2 e(k-1)
z -1In
F1
e(k)
~y(k)
u(k) b z-1In ~x(k) Q[.] c
the sign bit is not counted. It is assumed that the roundoff error e(k) can be
modeled as a Gaussian random process with zero mean and covariance σ 2 I n .
By subtracting (14.39) from (14.40), we obtain
N
Δx(k + 1) = AΔx(k) + Ae(k) + F i e(k − i + 1)
(14.41)
i=1
Δy(k) = cΔx(k) + ce(k)
where
Δx(k) = x̃(k) − x(k), Δy(k) = ỹ(k) − y(k)
By taking the z-transform on both sides of (14.41), we have
N
z [ΔX(z) − Δx(0)] = AΔX(z) + AE(z) + F i z −i+1 E(z)
i=1
ΔY (z) = cΔX(z) + cE(z)
(14.42)
340 Error Spectrum Shaping
where ΔX(z), ΔY (z) and E(z) represent the z-transforms of Δx(k), Δy(k)
and e(k), respectively. By setting Δx(0) = 0, it follows from (14.42) that
ΔY (z) = H e (z)E(z)
N
H e (z) = c(zI n − A)−1 A+ F i z −i+1 + c
i=1
N
(14.43)
−i+1
= c(zI n − A)−1 A+ F iz + zI n − A
i=1
= z G(z)B(z)
where
N
G(z) = c(zI n − A)−1 , B(z) = I n + F i z −i
i=1
where B H (z) and GH (z) denote the conjugate transpose of B(z) and G(z),
respectively. The problem being considered here is to obtain the error feedback
matrices F 1 , F 2 , · · · , F N which minimize the normalized noise gain J(F )
in (14.44).
By substituting G(z) and B(z) in (14.43) into (14.44), we obtain
1 N N
T i −l dz
J(F ) = tr In + F i z Q(z) I n + F lz
2πj |z|=1 z
i=1 l=1
dz 1 dz
N
1
= tr Q(z) + (z i + z −i )Q(z) Fi
2πj |z|=1 z 2πj |z|=1 z
i=1
N N 1 dz
T i−l
+ Fi z Q(z) Fl
2πj |z|=1 z
i=1 l=1
(14.45)
where
Q(z) = GH (z)G(z)
14.3 State-Space Filter with High-Order Error Feedback 341
By defining
1 z i + z −i dz
Qi = Q(z) for i = 0, 1, · · · , N (14.46)
2πj |z|=1 2 z
the normalized noise gain in (14.45) can be expressed as
N N N
J(F ) = tr Q0 + 2 Qi F i + F Ti Q|i−l| F l
i=1 i=1 l=1 (14.47)
= tr Q0 + 2S T F + F T RF
where
⎡ ⎤ ⎡ ⎤
Q1 Q0 Q1 · · · QN −1
⎢Q ⎥ ⎢ Q1 Q0 · · · QN −2 ⎥
⎢ 2⎥ ⎢ ⎥
S = ⎢ . ⎥, R=⎢ .. .. .. .. ⎥
⎣ .. ⎦ ⎣ . . . . ⎦
QN QN −1 QN −2 ··· Q0
The optimal solution is found by setting ∂J(F )/∂F = 0 and solving the
equation for F = [F T1 , F T2 , · · · , F TN ]T , which gives
F opt = −R+ S (14.48)
The optimal solution obtained above minimizes (14.47) as
Jmin (F opt ) = tr Q0 − S T R+ S (14.49)
where R+ is the pseudoinverse matrix of R.
1 k T T
∞
Qi = (A ) c cAk+i + (Ak+i )T cT cAi
2
k=0 (14.52)
1
= W o Ai + (Ai )T W o
2
where
∞
Wo = (Ak )T cT cAk
k=0
is the observability Grammian of the filter in (14.39), that can be obtained by
solving the Lyapunov equation
W o = AT W o A + cT c
where F 0 = I n . The error feedback filter B(z) in (14.43) can then be written
as
M
B(z) = I n + F i z −i + z −(2M +1−i) + z −(2M +1) I n (14.54)
i=1
which yields
B H (z)Q(z)B(z) = 2Q(z) + z 2M +1 + z −(2M +1) Q(z)
14.3 State-Space Filter with High-Order Error Feedback 343
M
+ z l + z −l + z 2M +1−l + z −(2M +1−l) Q(z)F l
l=1
M
+ z i + z −i + z 2M +1−i + z −(2M +1−i) F Ti Q(z)
i=1 (14.55)
M
M
+ z i−l + z −(i−l) + z 2M +1−i−l
i=1 l=1
+ z −(2M +1−i−l) F Ti Q(z)F l
where
⎡ ⎤ ⎡ ⎤ ⎡ ⎤
F1 Q1 Q0 Q1 · · · QM −1
⎢F ⎥ ⎢Q ⎥ ⎢ Q Q0 · · · QM −2 ⎥
⎢ 2⎥ ⎢ 2⎥ ⎢ 1 ⎥
F o = ⎢ . ⎥ , S o = ⎢ . ⎥ , Ro = ⎢ . .. .. .. ⎥
⎣ .. ⎦ ⎣ .. ⎦ ⎣ .. . . . ⎦
FM QM QM −1 QM −2 ··· Q0
⎡ ⎤ ⎡ ⎤
Q2M Q2M −1 Q2M −2 · · · QM
⎢Q ⎥ ⎢Q · · · QM −1 ⎥
⎢ 2M −1 ⎥ ⎢ 2M −2 Q2M −3 ⎥
S̃ o = ⎢ . ⎥ , R̃o = ⎢ . .. .. .. ⎥
⎣ .. ⎦ ⎣ .. . . . ⎦
QM +1 QM QM −1 ··· Q1
The optimal solution is found by setting ∂J(F o )/∂F o = 0 and solving the
equation for F o , which gives
F opt +
o = −(Ro + R̃o ) (S o + S̃ o ) (14.57)
344 Error Spectrum Shaping
which yields
B H (z)Q(z)B(z) = 2Q(z) − z 2M +1 + z −(2M +1) Q(z)
M
+ z l + z −l − z 2M +1−l − z −(2M +1−l) Q(z)F l
l=1
M
+ z i + z −i − z 2M +1−i − z −(2M +1−i) F Ti Q(z)
i=1
M
M
+ z i−l + z −(i−l) − z 2M +1−i−l
i=1 l=1
− z −(2M +1−i−l) F Ti Q(z)F l
(14.61)
By substituting (14.61) into (14.44), we obtain
M
J(F o ) = 2 tr Q0 − Q2M +1 + 2 Qi − Q2M +1−i F i
i=1
14.3 State-Space Filter with High-Order Error Feedback 345
M
M
+ F Ti Q|i−l| − Q2M +1−i−l F l
i=1 l=1 (14.62)
= 2 tr Q0 − Q2M +1 + 2(S o − S̃ o )T F o + F To (Ro − R̃o )F o
F opt +
o = −(Ro − R̃o ) (S o − S̃ o ) (14.63)
where F 0 = I n . The error feedback filter B(z) in (14.43) can then be written
as
L−1
B(z) = I n + F i z −i + z −(2L−i) + F L z −L + z −2L I n (14.66)
i=1
which yields
B H (z)Q(z)B(z) = 2 Q(z) + z 2L + z −2L Q(z)
L−1
+ z l + z −l + z 2L−l + z −(2L−l) Q(z)F l
l=1
L−1
+ F Ti z i + z −i + z 2L−i + z −(2L−i) Q(z)
i=1
346 Error Spectrum Shaping
+ z L + z −L Q(z)F L + F TL z L + z −L Q(z)
L−1
+ F TL z L−l + z −(L−l) Q(z)F l
l=1
L−1
+ F Ti z L−i + z −(L−i) Q(z)F L + F TL Q(z)F L (14.67)
i=1
L−1
L−1
+ F Ti z i−l + z −(i−l) + z 2L−l−i
i=1 l=1
+ z −(2L−l−i) Q(z)F l
By substituting (14.67) into (14.44), we have
L−1
J(F se ) = tr 2 Q0 + Q2L + 4 QL F L + 4 Qi + Q2L−i F i
i=1
L−1
L−1 L−1
+2 F Ti Q|i−l| + Q2L−i−l F l + 4 F Ti QL−i F L
i=1 l=1 i=1
+ F TL Q0 F L
(14.68)
where T
F se = F T1 F T2 · · · F TL
The normalized noise gain in (14.68) can be written as
P e + P̃ e
J(F se ) = tr 2 Q0 + Q2L + 4F Tse
QL
(14.69)
T 2(Re + R̃e ) 2Γ
+ F se F se
2ΓT Q0
where
⎡ ⎤ ⎡ ⎤ ⎡ ⎤
Q1 Q2L−1 Q0 Q1 · · · QL−2
⎢ ⎥
Q2 ⎢Q ⎥ ⎢ Q Q0 · · · QL−3 ⎥
⎢ ⎥ ⎢ 2L−2 ⎥ ⎢ 1 ⎥
Pe = ⎢ ⎥ ,
.. P̃ e = ⎢ . ⎥ , R e = ⎢ . .. .. .. ⎥
⎣ ⎦ . ⎣ .. ⎦ ⎣ .. . . . ⎦
QL−1 QL+1 QL−2 QL−3 · · · Q0
14.3 State-Space Filter with High-Order Error Feedback 347
⎡ ⎤ ⎡ ⎤
Q2L−2 Q2L−3 · · · QL QL−1
⎢Q ⎥ ⎢Q ⎥
⎢ 2L−3 Q2L−4 · · · QL−1 ⎥ ⎢ L−2 ⎥
R̃e = ⎢ . . .. . ⎥, Γ=⎢ . ⎥
⎣ .. .. . .. ⎦ ⎣ .. ⎦
QL QL−1 · · · Q2 Q1
The optimal solution is found by setting ∂J(F se )/∂F se = 0 and solving the
equation for F se , which gives
+
opt 2(Re + R̃e ) 2Γ P e + P̃ e
F se = −2 (14.70)
2ΓT Q0 QL
which yields
B H (z)Q(z)B(z) = 2 Q(z) − z 2L + z −2L Q(z)
L−1
+ z l + z −l − z 2L−l − z −(2L−l) Q(z)F l
l=1
348 Error Spectrum Shaping
L−1
+ F Ti z i + z −i − z 2L−i − z −(2L−i) Q(z)
i=1
L−1
L−1 (14.74)
+ F Ti z i−l + z −(i−l) − z 2L−l−i
i=1 l=1
− z −(2L−l−i) Q(z)F l
By substituting (14.74) into (14.44), we have
L−1
J(F ae ) = 2 tr Q0 − Q2L + 2 Qi − Q2L−i F i
i=1
L−1
(14.75)
L−1
T
+ F i Q|i−l| − Q2L−i−l F l
i=1 l=1
where T
F ae = F T1 F T2 · · · F TL−1
The normalized noise gain in (14.75) can be written as
T T
J(F ae ) = 2 tr Q0 − Q2L + 2F ae P e − P̃ e + F ae Re − R̃e F ae
(14.76)
N =1 In + z −1 In In − z −1 In
In + F1 z −1 + z −2 In
N =2 In − z −2 In
F1 = −2Q+
0 Q1
I n + F1 z −1 + F1 z −2 + z −3 I n In + F1 z −1 − F1 z −2 − z −3 I n
N =3
F1 = −(Q0 +Q1 )+ (Q1 +Q2 ) F1 = −(Q0 −Q1 )+ (Q1 −Q2 )
In + F1 z −1 + F2 z −2 + F1 z −3 + z −4 I n
⎡ ⎤ ⎡ ⎤+⎡ ⎤ I n + F1 z −1 − F1 z −3 − z −4 I n
N = 4 F1 2(Q0+Q2 ) 2Q1 Q1+Q3
⎣ ⎦= −2⎣ ⎦⎣ ⎦ F1 = −(Q0 −Q2 )+ (Q1 −Q3 )
F2 2Q1 Q0 Q2
14.4 Numerical Experiments 349
Table 14.4 Powers-of-two error feedback for a 4th-order elliptic lowpass filter
Infinite Integer 3-Bit
N
Precision Quantization Quantization
Noise (dB) 15.4705 19.3827 22.2841
β1 –1.935827 –2 –1.875
2 β2 0.983216 1 1.000
Noise (dB) 3.4891 9.6814 6.3832
β1 –2.887382 –3 –2.875
β2 2.856706 3 2.875
3
β3 –0.967798 –1 –1.000
Noise (dB) 0.0000 30.2714 1.9722
β1 –3.606552 –4 –3.625
β2 4.979522 5 5.000
4 β3 –3.113409 –3 –3.125
β4 0.743099 1 0.750
and the normalized noise gain of the filter was computed from (14.47) as
(2) Case N = 2 : The optimal error feedback matrices were derived from
(14.48) as
⎡ ⎤
−2.581439 1.096233 4.790081
F 1 = ⎣ 0.758043 −2.656162 −4.057192 ⎦
−0.561834 1.074577 1.862577
⎡ ⎤
0.217390 −3.681772 −5.053548
F 2 = ⎣ 0.607375 3.863745 3.919715 ⎦
−0.504042 −2.412000 −2.240139
and the normalized noise gain of the filter was calculated from (14.47) as
(3) Case N = 3 : The optimal error feedback matrices were found from
(14.48) to be
⎡ ⎤
−2.352663 0.319526 3.478115
F 1 = ⎣ 0.555381 −3.777495 −5.153576 ⎦
−0.440912 2.064015 2.916668
⎡ ⎤
−0.0893259 1.394268 1.741796
F 2 = ⎣ 0.8827037 2.564305 1.885559 ⎦
−0.6555847 −1.520423 −0.900386
14.4 Numerical Experiments 353
⎡ ⎤
0.281060 −0.463009 −0.998642
F 3 = ⎣ −0.241377 −1.353617 −1.328390 ⎦
0.142676 1.119958 1.184455
and the normalized noise gain of the filter was found from (14.47) to be
and the normalized noise gain of the filter was computed from (14.69) as
and the normalized noise gains of the filter were calculated from (14.56) and
(14.62) as
⎡ ⎤
0.293638 2.859654 2.962318
F 2 = ⎣ 1.563867 5.098261 3.993561 ⎦ : symmetric
−1.188198 −3.022329 −1.936498
⎡ ⎤
−2.633723 0.782534 4.476757
F 1 = ⎣ 0.796758 −2.423879 −3.825186 ⎦ : antisymmetric
−0.583588 0.944057 1.732213
respectively, and from (14.69) and (14.76), the normalized noise gains of the
filter were found to be
J(F ) = 2.082088 (3.184990 dB) : symmetric
J(F 1 ) = 2.768031 (4.421709 dB) : antisymmetric
respectively, where F = [F T1 , F T2 ]T .
When N = 1, 2, 3, and 4, optimal, symmetric, and antisymmetric error
feedbacks were applied to the state-space digital filter in Example 2, the results
obtained are summarized in Table 14.5.
From the table, it is observed that an increase of N in B(z) tends to reduce
the normalized noise gain in optimal solutions, as expected, while it does
not always reduce the normalized noise gain in symmetric or antisymmetric
solutions.
The results of rounding the optimal and suboptimal error feedback coeffi-
cients to integers or a power-of-two representation with 3 bits after the binary
point are summarized in Table 14.6.
Table 14.5 Error feedback noise gain (dB) for a 4th-order state-space lowpass filter
N Optimal Symmetric Antisymmetric
1 4.7258 (dB) 15.5855 (dB) 5.3438 (dB)
2 1.0004 (dB) 3.1850 (dB) 9.9092 (dB)
3 0.8369 (dB) 4.4963 (dB) 3.4638 (dB)
4 0.5852 (dB) 3.1850 (dB) 4.4217 (dB)
References 355
Table 14.6 Powers-of-two error feedback noise gain (dB) obtained by rounding optimal and
suboptimal solutions
Infinite Integer 3-Bit
N
Precision Quantization Quantization
1 4.7258 (dB) 5.0011 (dB) 4.7690 (dB)
2 1.0004 (dB) 5.6358 (dB) 1.3982 (dB)
Optimal
3 0.8369 (dB) 8.3475 (dB) 1.5807 (dB)
2 3.1850 (dB) 8.7398 (dB) 3.2645 (dB)
3 4.4963 (dB) 9.9118 (dB) 4.5565 (dB)
Symmetric
4 3.1850 (dB) 9.5234 (dB) 3.4388 (dB)
3 3.4638 (dB) 5.5044 (dB) 3.4718 (dB)
Antisymmetric 4 4.4217 (dB) 6.8862 (dB) 3.4388 (dB)
14.5 Summary
The optimal solution of general high-order error feedback has been presented
for both external and state-space descriptions of IIR digital filters. As alter-
natives for efficient implementations, suboptimal schemes with symmetric or
antisymmetric coefficients has been examined. In addition, numerical experi-
ments have been presented to demonstrate the validity and effectiveness of
the present techniques, where the error feedback quantizer with power-of-two
coefficients has been considered.
References
[1] T. I. Laakso and I. O. Hartimo, “Noise reduction in recursive digital filters
using high-order error feedback,” IEEE Trans. Signal Process., vol. 40,
no. 5, pp. 1096–1107, May 1992.
[2] T. Hinamoto and S. Karino “Noise reduction in state-space digital filters
using high-order error feedback,” IEICE Trans. Part A, vol. J77-A, no. 9,
pp. 1214–1222, Sep. 1994.
[3] T. Hinamoto and S. Karino “High-order error feedback for noise reduction
in state-space digital filters,” in Proc. Int. Conf. Acoust., Speech, Signal
Process. (ICASSP’94), May, 1994, vol. 3, pp. 1387–1390.
[4] P. P. Vaidyanathan, “On error-spectrum shaping in state-space digital
filters,” IEEE Trans. Circuits Syst., vol. CAS-32, no. 1, pp. 88–92, Jan.
1985.
356 Error Spectrum Shaping
15.1 Preview
In the implementation of IIR digital filters with fixed-point arithmetic, it is
of critical significance to reduce the effects of roundoff noise at the filter’s
output. An approach is to synthesize the optimal state-space filter structure for
the roundoff noise gain to be minimized by applying a linear transformation
to state-space coordinates subject to l2 -scaling constraints [1–4]. As another
approach, error feedback is found effective for reducing finite-word-length
(FWL) effects in IIR digital filters, and many error feedback methods have
been proposed in the past [5–14]. Alternatively, the roundoff noise can also
be reduced by introducing delta operators to IIR digital filters [15, 16], or
by adopting a new structure based on the concept of polynomial operators for
digital filter implementation [17]. As a natural extension of the aforementioned
methods, novel methods which combine state-space realization and error
feedback have been developed for achieving better performance [18–20].
Separately and jointly optimized scalar or general error feedback matrix
for state-space filters have been explored [18]. A jointly-optimized iterative
algorithm with a general, diagonal, or scalar error feedback matrix using a
quasi-Newton method has been developed for state-space digital filters [19]. In
addition, the use of high-order error feedback and its effect on noise-reduction
performance for state-space digital filters have been investigated [20].
In the first half of this chapter, following the work by Mullis-Roberts and
Hwang [1–3], a method for synthesizing the optimal internal structure that
minimizes the roundoff noise subject to l2 -scaling constraints is presented.
Unlike the method by Mullis-Roberts and Hwang, however, the present
method relaxes the l2 -scaling constraints into a single constraint on matrix
trace and solves the relaxed problem with an effective closed-form matrix
solution.
357
358 Roundoff Noise Analysis and Minimization
x(k+1) x(k)
u(k) b z -1In c y(k)
A
Figure 15.1 Block diagram of a state-space digital filter.
15.2 Filters Quantized after Multiplications 359
x(k+1) x(k)
u(k) b z-1In c y(k)
Figure 15.2 Block diagram of an actual state-space digital filter with several noise sources.
where Δx(k) = x̃(k) − x(k) is the state error vector and Δy(k) = ỹ(k) −
y(k) is the output noise. A block diagram of a state-space model for noise
propagation in (15.3) is depicted in Figure 15.3.
Assuming that Δx(0) = 0 in (15.3), we have
k−1
Δy(k) = c Ak−l−1 α(l) + β(l) + γ(k) + δ(k) (15.4)
l=0
z-1In c
A
Figure 15.3 Block diagram of a state-space model for noise propagation.
360 Roundoff Noise Analysis and Minimization
One way for measuring the noise component in the above state-space
model is to estimate its average power or variance. Under the usual assump-
tion that the product quantization errors are white noises being statistically
independent from source to source, and from time to time, the expected square
error is k−1
E02
E[Δy(k)2 ] = cAl Q(cAl )T + μ + ν (15.5)
12
l=0
W o = AT W o A + cT c (15.7)
K c = AK c AT + bbT (15.8)
K c = T −1 K c T −T , W o = T T W oT (15.11)
d
-1
-1 -1
T x(k)
u(k) T b z In cT y(k)
-1
T AT
Figure 15.4 Block diagram of an equivalent state-space digital filter.
362 Roundoff Noise Analysis and Minimization
1
n 1
− 12
1 1 1
2 4
T =√ θi Wo W o2 K c W o2 Uo (15.20)
n
i=1
−1 1
n
1 1
= QΛ−2 QT
2
n θi W o2 K c W o2 (15.23)
i=1
where
Λ = diag{λ1 , λ2 , · · · , λn }
θ1 + θ2 + · · · + θn 12
λi = for i = 1, 2, · · · , n
nθi
Now, an n × n orthogonal matrix Z such that
⎡ ⎤
1 ∗ ··· ∗
⎢ ∗ 1 . . . ... ⎥
ZΛ−2 Z T = ⎢ ⎣ .. . . . .
⎥
⎦ (15.24)
. . . ∗
∗ ··· ∗ 1
364 Roundoff Noise Analysis and Minimization
1
n 1
− 12
1 1 1
QZ T
2 4
T =√ θi Wo W o2 K c W o2 (15.25)
n
i=1
where
e(k) = x̃(k) − Q[x̃(k)]
A block diagram of an actual state-space digital filter in (15.26) is shown
in Figure 15.5. By taking the quantization performed before matrix-vector
multiplication into account, an FWL implementation of (15.1) with error
feedforward and high-order error feedback can be obtained as
u(k) y(k)
b z -1In Q[ ] c
x(k)
d
Figure 15.5 Block diagram of an actual state-space digital filter.
15.3 Filters Quantized before Multiplications 365
N
−1
x̃(k + 1) = AQ[x̃(k)] + bu(k) + D i e(k − i)
i=0
(15.27)
ỹ(k) = cQ[x̃(k)] + du(k) + he(k)
DN-1 e(k-N+1)
z -1In
DN-2 e(k-N+2)
D1 e(k-1)
z -1In
D0 h
e(k)
d
Figure 15.6 State-space model with N th-order error feedback and error feedforward.
366 Roundoff Noise Analysis and Minimization
N
−1
Δx(k + 1) = AΔx(k) + Ae(k) − D i e(k − i)
i=0 (15.28)
Δy(k) = cΔx(k) + (c − h)e(k)
where
Δx(k) = x(k) − x̃(k), Δy(k) = y(k) − ỹ(k)
By taking the z-transform on both sides of (15.28), we have
N
−1
z[ΔX(z) − Δx(0)] = AΔX(z) + AE(z) − D i z −i E(z)
i=0
ΔY (z) = H e (z)E(z)
N
−1 (15.30)
H e (z) = c(zI n − A)−1 A− D i z −i + c − h
i=0
∞
N
−1
H e (z) = c Ak−1 z −k A − D i z −i + c − h
k=1 i=0
∞ ∞ N −1
=c Ak z −k − Al−1 D i z −(l+i) + c − h (15.32)
k=1 l=1 i=0
∞
N
−1
= c Ak − Ak−i−1 D i z −k + c − h
k=1 i=0
where Ai = 0 for i < 0. By substituting (15.32) into (15.31) and making use
of the Cauchy integral theorem
1 dz 1, k=0
zk = (15.33)
2πj C z 0, k = 0
where C is a counterclockwise contour that encircles the origin, we obtain
N
−1
Je1 (h, D) = tr W o − (AT )i+1 W o D i + D Ti W o Ai+1
i=0
N
−1 N
−1
+ D Ti (AT )j−i W o + W o Ai−j D j
i=0 j=0
N
−1
− D Ti W o D i − 2hT c + hT h
i=0
(15.34)
where W o is the observability Grammian of the filter in (15.1), that can be
obtained by solving the Lyapunov equation in (15.7).
It is useful to note that if the high-order error feedback matrices
D 0 , D 1 , · · · , D N −1 are diagonal, then the formula for the noise gain can
be considerably simplified to
N
−1
Je1 (h, D) = tr W o − cT c − 2 W o Ai+1 D i
i=0
N
−1 N
−1
+ W o A|i−j| D i D j + (c − h)(c − h)T
i=0 j=0
(15.35)
368 Roundoff Noise Analysis and Minimization
where the noise gain is denoted as Je2 (D, T ) to reflect the fact that the
noise gain is now dependent on both high-order error feedback matrices
D 0 , D 1 , · · · , D N −1 as well as state-space coordinate transformation T . For-
mula (15.36) provides an analytic foundation for the minimization of the noise
gain by jointly optimize the error feedback loop and state-space coordinate
transformation. Formally, the problem being considered here can be stated as
to jointly deign the high-order error feedback matrices D 0 , D 1 , · · · , D N −1
and coordinate transformation matrix T to minimize the noise gain Je2 (D, T )
in (15.36) subject to the l2 -scaling constraints in (15.13), assuming the error
feedforward vector h = c is chosen so as to eliminate the last term in (15.35).
− 12
T̂ = T T K c (15.37)
which leads (15.13) to
−T −1
(T̂ T̂ )ii = 1 for i = 1, 2, · · · , n (15.38)
−1
These constraints are always satisfied if matrix T̂ assumes the form
−1 t1 t2 tn
T̂ = , ,··· , (15.39)
||t1 || ||t2 || ||tn ||
Substituting (15.37) into (15.38), we obtain
T N
−1
T
Je3 (D, T̂ ) = tr T̂ V 0 − ĉT ĉ T̂ − 2 T̂ V p+1 T̂ D p
p=0
(15.40)
N
−1 N
−1
T
+ T̂ V |p−q| T̂ D p D q
p=0 q=0
where 1 1 1
V p = K c2 W o Ap K c2 , ĉ = cK c2
Following the foregoing arguments, the problem of obtaining T and
D 0 , D 1 , · · · , D N −1 that jointly minimize (15.36) subject to the l2 -scaling
constraints in (15.13) is now converted into an unconstrained optimization
problem of obtaining T̂ and D 0 , D 1 , · · · , D N −1 that jointly minimize
Je3 (D, T̂ ) in (15.40).
Let x be the column vector that collects the variables in [t1 , t2 , · · · , tn ] and
D 0 , D 1 , · · · , D N −1 . Then Je3 (D, T̂ ) in (15.40) is a function of x, denoted
by J(x). The proposed algorithm starts with an initial point x0 obtained from
the assignment T̂ = D 0 = D 1 = · · · = D N −1 = I n . In the kth iteration,
a quasi-Newton algorithm updates the most recent point xk to point xk+1 as
[21]
xk+1 = xk + αk dk (15.41)
where
dk = −S k ∇J(xk ), αk = arg min J(xk + αdk )
α
T
γ Tk S k γ k δ k δ Tk − δ k γ Tk S k +S k γ k δ k ,
S k+1 = S k + 1+ S0 = I
γ Tk δ k γ k δk
T γ k δk
T
∂J(x) T N−1
T
= 2eTj T̂ V 0 − ĉT ĉ T̂ − T̂ V p+1 + V Tp+1 T̂ D p
∂tij
p=0
1
N
−1 N
−1
T
+ T̂ V |p−q| +V T|p−q| T̂ D p D q T̂ g ij
2
p=0 q=0
(15.51)
for i, j = 1, 2, · · · , n.
Let the high-order error feedback matrices assume the form
D p = diag{dp1 , dp2 , · · · , dpn } for p = 0, 1, · · · , N − 1. (15.52)
The gradients of J(x) with respect to the diagonal D p are given by
N −1
∂J(x) T T
= −2 T̂ V p+1 T̂ ii + 2 dqi T̂ V |p−q| T̂ ii (15.53)
∂dpi
q=0
for p = 0, 1, · · · , N − 1 and i = 1, 2, · · · , n.
372 Roundoff Noise Analysis and Minimization
where
⎡ ⎤
ri (0, 0) ri (0, 1) ··· ri (0, N − 1)
⎢ ri (1, 0) ri (1, 1) ··· ri (1, N − 1) ⎥
⎢ ⎥
Ri = ⎢ .. .. .. .. ⎥
⎣ . . . . ⎦
ri (N − 1, 0) ri (N − 1, 1) · · · ri (N − 1, N − 1)
with ri (p, q) = T T W o A|p−q| T ii for i = 1, 2, · · · , n.
where P = T o T To .
The optimal realization that minimizes the roundoff noise tr[T T W o T ] subject
to l2 -scaling constraints in (15.13) was then constructed from (15.10) as
⎡ ⎤ ⎡ ⎤
0.542471 −0.340493 0.565793 0.388814
A = ⎣ 0.565793 0.488848 0.159318 ⎦, b = ⎣ 0.111998 ⎦
−0.340493 0.012490 0.488848 0.910741
c = 0.344517 0.806980 0.099238
15.4 Numerical Experiments 375
The profile of Je3 (D, T̂ ) during the first 64 iterations of the algorithm is
depicted in Figure 15.7. The values of function J(x) at the initial point and
seven subsequent iterates were found to be
J(x0 ) J(x1 ) J(x2 ) J(x3 ) 1.2156 0.7980 0.6502 0.5258
=
J(x4 ) J(x5 ) J(x6 ) J(x7 ) 0.4529 0.4132 0.3847 0.3564
376 Roundoff Noise Analysis and Minimization
The above and several other simulation results regarding the noise gain
Je3 (D, T̂ ) in (15.40) plus (ĉ − h)(ĉ − h)T were summarized in Table 15.1
where the column with “Infinite Precision” shows the value of Je3 (D, T̂ )
derived from the optimal T̂ and D. The column with “3-Bit Quantization”
means that of Je3 (D, T̂ ) + (ĉ − h)(ĉ − h)T where each entry of the optimal
15.5 Summary 379
15.5 Summary
For state-space digital filters, two techniques for minimizing the roundoff
noise subject to l2 -scaling constraints have been presented. One has relied
on the lines studied by Mullis-Roberts and Hwang with the relaxation of l2 -
scaling constraints into a single constraint on matrix trace, and the optimal
matrix solution has been analytically obtained in closed form. The other has
380 Roundoff Noise Analysis and Minimization
References
[1] S. Y. Hwang, “Roundoff noise in state-space digital filtering: A general
analysis,” IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-24,
no. 3, pp. 256–262, June 1976.
[2] C. T. Mullis and R. A. Roberts, “Synthesis of minimum roundoff noise
fixed point digital filters,” IEEE Trans. Circuits Syst., vol. CAS-23, no. 9,
pp. 551–562, Sept. 1976.
[3] S. Y. Hwang, “Minimum uncorrelated unit noise in state-space digital
filtering,” IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-25,
no. 4, pp. 273–281, Aug. 1977.
[4] L. B. Jackson, A. G. Lindgren and Y. Kim, “Optimal synthesis of second-
order state-space structures for digital filters,” IEEE Trans. Circuits Syst.,
vol. CAS-26, no. 3, pp. 149–153, Mar. 1979.
[5] H. A. Spang, III and P. M. Shultheiss, “Reduction of quantizing noise
by use of feedback,” IRE Trans. Commun. Syst., vol. CS-10, no. 4,
pp. 373–380, Dec. 1962.
[6] T. Thong and B. Liu, “Error spectrum shaping in narrowband recursive
digital filters,” IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-
25, no. 2, pp. 200–203, Apr. 1977.
[7] T.-L. Chang and S.A. White, “An error cancellation digital-filter structure
and its distributed-arithmetic implementation,” IEEE Trans. Circuits
Syst., vol. CAS-28, no. 4, pp. 339–342, Apr. 1981.
[8] D. C. Munson and D. Liu, “Narrow-band recursive filters with error
spectrum shaping,” IEEE Trans. Circuits Syst., vol. CAS-28, no. 2,
pp. 160–163, Feb. 1981.
[9] W. E. Higgins and D. C. Munson, “Noise reduction strategies for
digital filters: Error spectrum shaping versus the optimal linear state-
space formulation,” IEEE Trans. Acoust., Speech, Signal Process., vol.
ASSP-30, no. 6, pp. 963–973, Dec. 1982.
References 381
16.1 Preview
Delta operator is often applied to the implementation of IIR digital filters due
to its good numerical properties subject to fast sampling. When the sampling
rate is much higher than the underlying signal bandwidth, then finite-word-
length (FWL) effects become worse. If the poles of a narrow-band lowpass
filter cluster near the point z = 1 in the z plane, the filter becomes very
noisy and sensitive to coefficient quantization. For example, notch filters
have pole(s) close to the point z = 1 if the rejected signal component exists
at the normalized frequency near zero. To achieve good finite-word-length
performance subject to fast sampling, the forward shift operator z is replaced
by the delta operator, defined by
z−1
δ(z) =
Δ
where Δ is originally the sampling interval [1]. Later on, the parameter Δ is
often used to improve the finite-word-length effects as a free parameter by
several researchers. An implementation of δ −1 (z) is shown in Figure 16.1.
It is known that delta operator realizations generally yield better roundoff
noise performance and more robust coefficient sensitivity [10]. For example, a
high-order transfer function may be implemented as a series of second-order
383
384 Generalized Transposed Direct-Form II Realization
b0 z n + b1 z n−1 + · · · + bn−1 z + bn
H(z) = (16.1)
z n + a1 z n−1 + · · · + an−1 z + an
Let P be an (n + 1) × (n + 1) nonsingular matrix and
q(z) = P z (16.2)
16.2 Structural Transformation 385
where
T T
q(z) = q0 (z) q1 (z) · · · qn (z) , z = zn · · · z 1
By defining scalars {αi | i = 1, 2, · · · , n} and {βi | i = 0, 1, · · · , n} such that
κ 1 α1 · · · αn P = 1 a1 · · · an
(16.3)
κ β0 β1 · · · βn P = b0 b1 · · · bn
the transfer function in (16.1) can be written as
β0 q0 (z) + β1 q1 (z) + · · · + βn qn (z)
H(z) =
q0 (z) + α1 q1 (z) + · · · + αn qn (z)
n
qi (z)
β0 + βi (16.4)
q0 (z)
i=1
= n
qi (z)
1+ αi
q0 (z)
i=1
z 3 − (γ1 + γ2 + γ3 )z 2 + (γ1 γ2 + γ2 γ3 + γ3 γ1 )z − γ1 γ2 γ3
q0 (z) =
Δ1 Δ2 Δ3
z 2 − (γ2 + γ3 )z + γ2 γ3
q1 (z) =
Δ2 Δ3
z − γ3
q2 (z) =
Δ3
q3 (z) = 1
(16.7a)
which are equivalent to
⎡ ⎤
q0 (z)
⎢q (z)⎥ 1
⎢ 1 ⎥
⎢ ⎥=
⎣q2 (z)⎦ Δ1 Δ2 Δ3
q3 (z)
⎡ ⎤⎡ 3 ⎤
1 −(γ1 + γ2 + γ3 ) γ1 γ2 + γ2 γ3 + γ3 γ1 −γ1 γ2 γ3 z
⎢0 Δ1 −(γ2 + γ3 )Δ1 ⎥⎢
γ2 γ3 Δ1 ⎥⎢z 2 ⎥
⎢ ⎥
·⎢ ⎥⎢ ⎥
⎣0 0 Δ1 Δ2 −γ3 Δ1 Δ2 ⎦⎣ z ⎦
0 0 0 Δ1 Δ2 Δ3 1
(16.7b)
hence
⎡ ⎤
1 −(γ1 + γ2 + γ3 ) γ1 γ2 + γ2 γ3 + γ3 γ1 −γ1 γ2 γ3
1 ⎢0 Δ1 −(γ2 + γ3 )Δ1 γ2 γ3 Δ1 ⎥
⎢ ⎥
P = ⎢ ⎥
Δ1 Δ2 Δ3 ⎣0 0 Δ1 Δ2 −γ3 Δ1 Δ2 ⎦
0 0 0 Δ1 Δ2 Δ3
(16.7c)
Referring to (16.7b), with the choice of {ρi (z)| i = 1, 2, · · · , n} in (16.5) it
is possible to specify the corresponding transformation matrix P and scalar
κ = Δ1 Δ 2 · · · Δ n .
From (16.6a), it follows that
qi (z) ρi+1 (z)ρi+2 (z) · · · ρn (z)
= = ρ−1 −1 −1
1 (z)ρ2 (z) · · · ρi (z) (16.8)
q0 (z) ρ1 (z)ρ2 (z) · · · ρn (z)
16.2 Structural Transformation 387
wi (k) = ρ−1
i (z) [wi+1 (k) + βi u(k) − αi y(k)]
(16.11)
for i = 1, 2, · · · , n − 1
wn (k) = ρ−1
n (z) [βn u(k) − αn y(k)] , wn+1 (k) = 0
Δi
ρ−1
i (z) = for i = 1, 2, · · · , n (16.12)
z − γi
we can write (16.11) as
which leads to
(z − γi )xi (k) = −αi Δ1 x1 (k) + Δi+1 xi+1 (k) + (βi − αi β0 )u(k)
i = 1, 2, · · · , n
(16.14a)
16.3 Equivalent State-Space Realization 389
or, equivalently,
where xn+1 (k) = 0. Using (16.14b) and the first equation in (16.13), an
equivalent state-space realization (Aρ , bρ , cρ , β0 )n can be constructed as
From (16.15), the transfer function from the input u(k) to the output y(k) is
given by
H(z) = cρ (zI n − Aρ )−1 bρ + β0 (16.16)
390 Generalized Transposed Direct-Form II Realization
where
1
ρ−1
i (z) = for i = 1, 2, · · · , n (16.17b)
z − γi
The transposed direct-form II structure of a ρ operator-based IIR digital filter
in (16.17a) is depicted in Figure 16.4, and an implementation of ρ−1 i (z) in
case Δi = 1 is drawn in Figure 16.5.
where ei indicates an n × 1 unit vector whose ith element equals unity. Con-
sequently, noting that T = diag Δ−1 −1 −1 −1 −1
1 , Δ1 Δ2 , . . ., Δ1 Δ2 · · · Δn
−1 in
Therefore, if the filter under discussion is l2 -scaled, then (16.5) and (16.6a)
imply that
n n
n
1 1
q0 (z) = ρl (z) = (z − γl ) = (z − γl )
Δ1 Δ2 · · · Δ n eT K e
l=1 l=1 n ρ n l=1
n
n
1
qi (z) = ρl (z) = (z − γl ) (16.29)
Δi+1 Δi+2 · · · Δn
l=i+1 l=i+1
n
eTi K ρ ei
= (z − γl )
eTn K ρ en l=i+1
qn (z) = 1 for i = 1, 2, · · · , n − 1
and we have
n
κ= Δi = eTn K ρ en (16.30)
i=1
The parameters {Δi } is called the coupling coefficients [4]. These parameters
affect the dynamic range of the signals at the branch nodes, which are actually
the state variables {xi (k)}. The analysis presented above suggests that one
can avoid overflow oscillations if these coupling coefficients are used to scale
the state variables.
corresponding output deviation. Then the transfer function from ψ(γi )ωi (k)
to Δy(k) becomes Hi (z) defined above. Actually, this roundoff noise can be
viewed as the one generated by βi u(k). Hence
J4 (γi ) = ψ(γi )J2 (βi ) = ψ(γi )eTi W ρ ei for i = 1, 2, · · · , n (16.43)
Based on the above analysis, the total roundoff noise gain of the filter
structure in Figure 16.2 is defined as
n
n
Jρ = J1 (αi ) + J2 (βi ) + J3 (β0 )
i=1 i=1
(16.44)
n−1
n
+ J2 (Δi+1 ) + J3 (Δ1 ) + J4 (γi )
i=1 i=1
W o = AT W o A + cT c (16.47b)
Q is a diagonal matrix whose ith diagonal element qi is the number of
coefficients in the ith rows of A and b that are neither 0 nor ±1, and μ + ν is
the number of neither 0 nor ±1 constants in c and d.
If (16.47a) is applied to the equivalent state-space realization in (16.15),
the corresponding roundoff noise gain, say ISρ , is given by
where
and d = β0 . Hence
ISρ = 3 tr W ρ + tr ΨW ρ − eTn W ρ en + 2 − ψ(γ1 ) eT1 W ρ e1 (16.49)
Notice that
This reveals that for a given set of {γi }, the equivalent state-space realization
always has lower roundoff noise gain than the corresponding ρ-operator
transposed direct form II structure in Figure 16.2.
Definition 16.2
Let X(z) be an m × n complex matrix-valued function of a complex variable
z and let xpq (z) be the (p, q)th entry of X(z). The l2 -norm of X(z) is then
defined as
2π m n
1
2
1
||X(z)||2 = |xpq (ejω )|2 dω
2π 0
p=1 q=1
(16.52)
1
2
1 dz
= tr X(z)X H (z)
2πj |z|=1 z
Based on Definitions 16.1 and 16.2, the overall l2 -sensitivity measure for
ρ-operator transposed direct form II structure in Figure 16.2 is defined as
∂H(z) 2 ∂H(z) 2 ∂H(z) 2
Mρ = + +
∂α 2 ∂β 2 ∂β0 2
n
n
(16.53)
∂H(z) 2 ∂H(z) 2
+
∂Δi + ψ(γi )
∂γi 2
i=1 2 i=1
From (16.15) and (16.16), it follows that
∂H(z)
= −H(z)(zI n − ATρ )−1 cTρ
∂α
∂H(z)
= (zI n − ATρ )−1 cTρ
∂β
∂H(z)
= 1 − cρ (zI n − Aρ )−1 α
∂β0
16.5 Analysis of l2 -Sensitivity 399
∂H(z)
= 1 − cρ (zI n − Aρ )−1 α eT1 (zI n − Aρ )−1 bρ
∂Δ1
∂H(z)
= cρ (zI n − Aρ )−1 ei−1 eTi (zI n − Aρ )−1 bρ for i = 2, 3, · · · , n
∂Δi
∂H(z)
= cρ (zI n − Aρ )−1 ei eTi (zI n − Aρ )−1 bρ for i = 1, 2, · · · , n
∂γi
(16.54)
Since ∂H(z)/∂α, ∂H(z)/∂Δi , and ∂H(z)/∂γi can be expressed as
−1
∂H(z) ATρ cTρ cρ β0 cTρ
= − I n 0 zI 2n −
∂α 0 Aρ bρ
−1
∂H(z) T Aρ bρ cρ bρ
= e1 0 zI 2n −
∂Δ1 0 Aρ −α
−1
∂H(z) Aρ ei−1 eTi 0
= cρ 0 zI 2n − for i = 2, 3, · · · , n
∂Δi 0 Aρ bρ
−1
∂H(z) T Aρ bρ cρ 0
= ei 0 zI 2n − for i = 1, 2, · · · , n
∂γi 0 Aρ ei
(16.55)
substituting (16.54) and (16.55) into (16.53) leads to
β0 cTρ
Mρ = β0 cρ bTρ P + tr[W ρ ] + 1 + αT W ρ α
bρ
n
T T
bρ T
0
+ bρ −α N 1 + 0 bρ M i (16.56)
−α i=2
bρ
n
T
0
+ ψ(γi ) 0 ei N i
i=1
ei
T
ATρ cTρ cρ ATρ cTρ cρ In 0
P = P +
0 Aρ 0 Aρ 0 0
T
Aρ ei−1 eTi Aρ ei−1 eTi cT c ρ 0
Mi = Mi + ρ
0 Aρ 0 Aρ 0 0
(16.57)
for i = 2, 3, · · · , n
T
Aρ bρ cρ Aρ bρ cρ ei eTi 0
Ni = Ni +
0 Aρ 0 Aρ 0 0
for i = 1, 2, · · · , n
where
⎡ ⎤ ⎡ ⎤
a11 a12 · · · a1n b1
⎢ a21 a22 · · · a2n ⎥ ⎢ b2 ⎥
⎢ ⎥ ⎢ ⎥
A = ⎢ .. .. .. .. ⎥ , b = ⎢ .. ⎥, c = c1 c2 · · · cn
⎣ . . . . ⎦ ⎣ . ⎦
an1 an2 · · · ann bn
n
1 ∂H(z) 2 dz 1 ∂H(z) 2 dz
+ +
2πj |z|=1 ∂cl z 2πj |z|=1 ∂d z
l=1
(16.59)
16.5 Analysis of l2 -Sensitivity 401
where
∂H(z) ∂H(z)
= g(z)ei eTl f (z), = g(z)ei
∂ail ∂bi
∂H(z) ∂H(z)
= eTl f (z), =1
∂cl ∂d
with
f (z) = (zI n − A)−1 b, g(z) = c(zI n − A)−1
Since coefficients 0 and ±1 can be realized precisely in the implementation
of FWL digital filters, the l2 -sensitivity is not affected by these coefficients.
Consequently, the sensitivity of individual elements of coefficient matrices A,
b and c should be changed to [7]
∂H(z) ∂H(z)
= ψ(ail )g(z)ei eTl f (z), = ψ(bi )g(z)ei
∂ail ∂bi
(16.60)
∂H(z) ∂H(z)
= ψ(cl )eTl f (z), = ψ(d)
∂cl ∂d
where
1 for ail =
0, ±1 1 for bi =
0, ±1
ψ(ail ) = , ψ(bi ) =
0 for ail = 0, ±1 0 for bi = 0, ±1
1 for cl =
0, ±1 1 for d = 0, ±1
ψ(cl ) = , ψ(d) =
0 for cl = 0, ±1 0 for d = 0, ±1
Lemma 16.1
The improved l2 -sensitivity measure for the state-space model (A, b, c, d)n
in (16.46) is presented by [7]
n
n n
cT
SI = ψ(ail ) [ c 0 ] R(i, l) + ψ(bi )Wii
i=1 l=1
0 i=1
n
(16.61)
+ ψ(cl )Kll + ψ(d)
l=1
K c = AK c AT + bbT , W o = A T W o A + cT c
The improved l2 -sensitivity measure given in (16.61) can be modified to two
novel forms so that the number of the Lyapunov equations to be solved is
reduced from n2 + 2 to n + 2. [8]
Theorem 16.1
The improved l2 -sensitivity measure in (16.61) can be expressed in the form
n
n n
el
SI = ψ(ail ) [ eTl 0 ] M (i) + ψ(bi )Wii
i=1 l=1 0 i=1
n
(16.62a)
+ ψ(cl )Kll + ψ(d)
l=1
where M (i) is obtained by solving the Lyapunov equations
T
A bc A bc 0 0
M (i) = M (i) +
0 A 0 A 0 ei eTi (16.62b)
for i = 1, 2, · · · , n
Proof
Noting that
f (z)g(z) = (zI n − A)−1 bc(zI n − A)−1
−1 (16.63)
A bc 0
= In 0 zI 2n −
0 A In
and defining Φ(z) = f (z)g(z), (16.60) clearly implies that
1 ∂H(z) 2 dz 1 dz
T
= ψ(ail ) el Φ(z)ei eTi ΦT (z −1 ) el
2πj |z|=1 ∂ail z 2πj |z|=1 z
el
= ψ(ail ) [ eTl 0 ] M (i)
0
(16.64)
16.5 Analysis of l2 -Sensitivity 403
where
∞
k T k
A bc 0 0 AT 0
M (i) =
0 A ei ei (bc)T AT
k=0
Theorem 16.2
The improved l2 -sensitivity measure in (16.61) can be modified to
n n n
T 0
SI = ψ(ail ) [ 0 ei ] N (l) + ψ(bi )Wii
i=1
ei i=1
l=1
n
(16.65a)
+ ψ(cl )Kll + ψ(d)
l=1
Since Jρ and ISρ are highly nonlinear and nonconvex functions with respect
to γ, it is very difficult to find the optimal solutions. However, the problems
can be solved easily using exhaustive searching since the space S γ includes
(2Bγ +1 + 1)n elements where n is the filter order, and Bγ is the number
of bits for implementing {γi } with 4 to 8 bits typically. Hence by repeating
the procedure summarized
opt inSection 16.6.1 a finite number of times, we
opt
can find the γ Jρ and γ ISρ eventually. For comparison purposes,
we define
Finally, we should mention that just like the roundoff noise gains Jρ
and ISρ , the l2 -sensitivity measures Mρ and SIρ are all function of γ, and
therefore the problem of minimizing either Mρ or SIρ with respect to γ is also
considered. That is
γ Mρopt = arg min Mρ
γ ∈S γ
opt (16.74)
γ SIρ = arg min SIρ
γ ∈S γ
We can solve these problems
by
repeating
optthe
same procedure a finite number
of times and find the γ Mρopt and γ SIρ eventually.
0.262375 2.623753
408 Generalized Transposed Direct-Form II Realization
2.623671
cρ = 10−1 2.264581 0 0 0 , β0 = 3.123898 × 10−5
Consequently, the roundoff noise gains Jρ and ISρ were computed from
(16.45) and (16.49) as
respectively.
16.8 Summary 409
0.8750 0.8750
⎡ ⎤ ⎡ ⎤
0.9375 1.0000
⎢ 0.9375 ⎥ opt ⎢ 0.9375 ⎥
γ Mρopt = ⎢⎣ 0.8750 ⎦
⎥, γ SIρ = ⎢ ⎣ 0.8750 ⎦
⎥
0.9375 0.8750
16.8 Summary
In this chapter, the transposed direct-form II structure of an nth-order IIR digi-
tal filter using a set of special operators has been introduced, and its equivalent
state-space realization has been constructed. Moreover, the roundoff noise and
l2 -sensitivity have been analyzed for the generalized transposed direct-form II
structure and its equivalent state-space realization. Given a transfer function
and a set of n free parameters, a concrete procedure for evaluating the roundoff
noise gain has been presented and the l2 -sensitivity measure of each structure
has been addressed. Numerical experiments are presented to illustrate the
validity and effectiveness of the present techniques.
410 Generalized Transposed Direct-Form II Realization
References
[1] R. H. Middleton and G. C. Goodwin, “Improved finite word length
characteristics in digital control using delta operators,” IEEE Trans.
Autom. Control, vol. AC-31, no. 11, pp. 1015–1021, Nov. 1986.
[2] J. Kauraniemi, T. I. Laakso, I. Hartimo and S. J. Ovaska, “Delta operator
realizations of direct-form IIR filters,” IEEE Trans. Circuits Syst.-II,
vol. 45, no. 1, pp. 41–52, Jan. 1998.
[3] N. Wong and T.-S. Ng, “Roundoff noise minimization in a modified
direct-form delta operator IIR structure,” IEEE Trans. Circuits Syst.-II,
vol. 47, no. 12, pp. 1533–1536, Dec. 2000.
[4] N. Wong and T.-S. Ng, “A generalized direct-form delta operator-based
IIR filter with minimum noise gain and sensitivity,” IEEE Trans. Circuits
Syst.-II, vol. 48, no. 4, pp. 425–431, Apr. 2001.
[5] G. Li and Z. Zhao, “On the generalized DFIIt structure and its state-space
realization in digital filter implementation,” IEEE Trans. Circuits Syst.-I,
vol. 51, no. 4, pp. 769–778, Apr. 2004.
[6] S. Y. Hwang, “Minimum uncorrelated unit noise in state-space digital
filtering,” IEEE Trans. Acoust., Speech, Signal Process., vol. 25, no. 4,
pp. 273–281, Aug. 1977.
[7] C. Xiao, “Improved L2 -sensitivity for state-space digital system,” IEEE
Trans. Signal Process., vol. 45, no. 4, pp. 837–840, Apr. 1997.
[8] Y. Hinamoto and A. Doi, “Simplified computation of l2 -sensitivity for
1-D and a class of 2-D state-space digital filters considering 0 and
±1 elements,” Proc. SIGMAP 2013 – Int. Conf. Signal Process. and
Multimedia Appl., pp. 53–58, Reykjavik, Iceland, Jul. 2013.
[9] A. V. Oppenheim and R. W. Schafer, Digital Signal Processing, Engle-
wood Cliffs, NJ: Prentice Hall, 1975.
[10] R. H. Middleton and G. C. Goodwin, Digital Control and Estimation:
A Unified Approach, Englewood Cliffs, NJ: Prentice Hall, 1990.
[11] W.-Y. Yan and J. B. Moore, “On L2 -sensitivity minimization of lin-
ear state-space systems,” IEEE Trans. Circuits Syst. I, vol. 39, no. 8,
pp. 641–648, Aug. 1992.
17
Block-State Realization of IIR Digital Filters
17.1 Preview
An important issue involved in the implementation of IIR digital filters using
fixed-point arithmetic is reducing roundoff noise at the filter’s output. As is
well known, roundoff noise is critically dependent on the internal structure
of IIR digital filters. In this regard, state-space models for digital filters
provide a suitable platform in which the internal structure of a filter can be
explored so as to minimize its roundoff noise by choosing an appropriate
linear transformation for state-space coordinates without altering the input-
output characteristic of the filter. Effective techniques for constructing an
optimal filter structure that minimizes the roundoff noise at the filter output
subject to l2 -scaling constraints have been explored [1–3]. However, such a
realization requires (n + 1)2 multiplications to compute each output sample
for an nth-order filter, an increase of n2 multiplications over canonical direct-
form structures. This is a major disadvantage especially for high-order digital
filters as its effect on data throughput rate becomes much greater when n
is large. Alternatively, block-state realization of IIR digital filters has been
proposed as a method of increasing data throughput rate and reducing finite-
word-length (FWL) effects [4–6]. In the block-state realization, we implement
single-input/single-output (SISO) state-space model by dividing the scalar
input data stream into data vectors of length L, process the data vectors
with an L-input/L-output state-space model, say (L, L) system, and then
reconstruct the scalar output stream from the processed data vectors [5].
At the input of an (L, L) system, a serial-in/parallel-out register converts
the scalar input into a vector input. At the output of the (L, L) system, a
parallel-in/serial-out register converts the vector output into a scalar output.
Obviously, the scalar sample throughput rate is L times the fundamental clock
rate of the (L, L) system. It has
√ been shown [6] that for an nth-order filter, the
optimal blocklength is L = 2n which is noninteger and requires rounding
411
412 Block-State Realization of IIR Digital Filters
to the closest integer. This optimal block length minimizes average √ number of
multiplications needed to compute each output sample to (2+ 2)n+1/2 [6].
Another important and related issue is reducing the effects of quatizing
filter coefficients. It is of importance to note that coefficient quantization
usually alters filter characteristics. For instance, a stable filter designed under
the assumption of infinite precision may become unstable after coefficient
quantization. This has motivated the study of coefficient sensitivity and its
minimization for digital filters. Several techniques has also been explored
to analyze l2 -sensitivity and to synthesize the state-space filter structure that
minimizes l2 -sensitivity for digital filters [7, 8]. In addition, the minimization
problem of l2 -sensitivity subject to l2 -scaling constraints has been treated for
state-space digital filters [9–11]. It is known that the use of scaling constraints
can be beneficial for suppressing overflow oscillations [2, 3].
In this chapter, we shall consider the block-state realization for a given
SISO state-space model, and examine some of the properties of the block-
state realization. Second, we analyze the roundoff noise in the block-state
realization and minimize the average roundoff noise gain subject to l2 -scaling
constraints. Third, we present a quantitative analysis on l2 -sensitivity for the
block-state realization of state-space digital filters. Following the analysis,
we study two techniques for minimizing a sensitivity measure known as
average l2 -sensitivity subject to l2 -scaling constraints for the block-state
realization of state-space digital filters. One of the techniques is based on
a Lagrange function, while the other relies on an efficient quasi-Newton
algorithm. Finally, numerical experiments are presented to demonstrate the
validity and effectiveness of the techniques addressed in this chapter.
x(k+1) x(k)
u(k) b z -1In c y(k)
multiplications are required to compute the output y(k) during each sample
interval.
From (17.1), it follows that for some integer L > 0,
+ cbu(kL + i − 1) + du(kL + i)
i = 0, 1, · · · , L − 1
which leads to
x(kL + L) = AL x(kL)
⎡ ⎤
u(kL)
⎢
⎢
⎥
⎥u(kL + 1)
+ AL−1 b AL−2 b · · · b ⎢ ⎥ ..
⎣ ⎦ .
u(kL + L − 1)
⎡ ⎤ ⎡ ⎤
y(kL) c
⎢ y(kL + 1) ⎥ ⎢ cA ⎥
⎢ ⎥ ⎢ ⎥
⎢ .. ⎥ = ⎢ .. ⎥ x(kL)
⎣ . ⎦ ⎣ . ⎦
y(kL + L − 1) cAL−1
⎡ ⎤⎡ ⎤
d 0 ··· 0 u(kL)
⎢ .. . ⎥ ⎢ u(kL + 1) ⎥
⎢ cb d . .. ⎥
+⎢⎢ ⎥⎢ ⎥
.. ⎥⎢ .. ⎥
. 0⎦ ⎣ ⎦
.. ..
⎣ . . .
cA L−2
b · · · cb d u(kL + L − 1)
(17.3)
414 Block-State Realization of IIR Digital Filters
⎡ ⎤ ⎡ ⎤
c d ··· 00
⎢ ⎥ ⎢ .. .⎥
⎢ cA ⎥ ⎢ cb d . .. ⎥
Ĉ = ⎢ ..⎥, ⎢
D̂ = ⎢ ⎥
⎣ ⎦ .. .. .. ⎥
. ⎣ . . . 0⎦
cAL−1 cAL−2 b · · · cb d
(17.4b)
This result compares favorably with the processing complexity for the
canonical forms of the state-space model in (17.1), which require (2n + 1)
multiplications per output sample, and reveals that the system in (17.4a)
enables us to perform fast processing for high-order digital filters.
In the rest of this chapter, the L-input/L-output state-space model
described by (17.4a) is referred to as block-state realization, (Â, B̂, Ĉ, D̂)n ,
that is generated by the SISO state-space model (A, b, c, d)n in (17.1). In
this way, (17.4b) defines a mapping (A, b, c, d)n −→ (Â, B̂, Ĉ, D̂)n that
transforms the state-space model in (17.1) to the block-state realization in
(17.4a). This block-state realization corresponds to the time-invariant case for
the block-state realization of periodically time-varying digital filter, that was
derived by Meyer and Burrus [12].
The system in (17.4a) can be realized by an L-input/L-output IIR digital
filter implemented with serial-in/parallel-out and parallel-in/serial-out regis-
ters, as shown in Figure 17.2. It is obvious that the serial input and output
sample rates are L times the fundamental clock rate of the L-input/L-output
system. The internal structure of the block-state realization for block length
of L = 3 is illustrated by the flow graph in Figure 17.3.
We now examine some of the properties of the mapping (A, b, c, d)n →
(Â, B̂, Ĉ, D̂)n , which is defined by (17.4b).
Lemma 17.1
Since  = AL , the eigenvalues of matrix  are the Lth power of those of
matrix A, i.e., the poles of the block-state realization are the Lth power of the
poles of the associated SISO state-space model.
u(k) REGISTER
^ ^ ^ ^
(A, B, C, D)n
REGISTER y(k)
Figure 17.2 Block-state realization using serial-in/parallel-out and parallel-in/serial-out
registers.
416 Block-State Realization of IIR Digital Filters
cb
cAb
cb
c cA cA2
A2b Ab b
z-1In
A3
Figure 17.3 Flow graph structure of a block-state realization for block length of three.
Lemma 17.2
Since  = AL , the dimension of the state space of the block-state realization
is the same as that of the associated SISO state-space model.
Proof
Let the controllability matrix for (A, b, c, d)n be denoted by
V n = b Ab · · · An−1 b
17.2 Block-State Realization 417
and let the controllability matrix for (Â, B̂, Ĉ, D̂)n be denoted by
n−1
V̂ n = B̂ ÂB̂ · · · Â B̂
Proof
Due to the duality, the proof of this theorem is essentially the same as that of
Theorem 17.1.
Proof
This proof follows directly from the definition of the mapping (A, b, c, d)n →
(Â, B̂, Ĉ, D̂)n given by (17.4b). That is, Â = AL if and only if T −1 ÂT =
T −1 AL T = (T −1 AT )L , etc.
418 Block-State Realization of IIR Digital Filters
Proof
Let the controllability Grammians for (A, b, c, d)n and (Â, B̂, Ĉ, D̂)n be
denoted by
∞
∞
k k
Kc = Ak b(Ak b)T and K̂ c = Â B̂(Â B̂)T
k=0 k=0
where
B̂ = AL−1 b AL−2 b · · · Ab b
ÂB̂ = A2L−1 b A2L−2 b · · · AL+1 b AL b
2
 B̂ = A3L−1 b A3L−2 b · · · A2L+1 b A2L b
..
.
This completes the proof of the theorem.
Proof
Suppose that the observability Grammians for (A, b, c, d)n and (Â, B̂,
Ĉ, D̂)n are denoted by
∞
∞
k k
Wo = (cAk )T cAk and Ŵ o = (Ĉ Â )T Ĉ Â
k=0 k=0
17.3 Roundoff Noise Analysis and Minimization 419
where
⎡ ⎤ ⎡ ⎤ ⎡ ⎤
c cAL cA2L
⎢ ⎥ cA ⎢ cAL+1 ⎥ ⎢cA2L+1 ⎥
⎢ ⎥ ⎢ ⎥ 2 ⎢ ⎥
Ĉ = ⎢ ⎥, .. Ĉ Â = ⎢ .. ⎥, Ĉ Â = ⎢ .. ⎥, ···
⎣ ⎦ . ⎣ . ⎦ ⎣ . ⎦
L−1
cA cA2L−1 cA3L−1
for i = 1, 2, · · · , L.
When the individual outputs are combined by a parallel-in/serial-output
register to form a single output, the resulting noise will no longer be stationary.
The autocorrelation function of the single output can be written as
Ry (kL+i−1, lL+j −1) = E{y(kL+i−1)y(lL+j −1)} = Rŷ (k−l) i,j
(17.18)
for i = 1, 2, · · · , L. Hence the variance of the nonstationary output noise is
given by
σ̂y2 (kL + i − 1) = σŷ2i (17.19)
for i = 1, 2, · · · , L. From (17.19), it is observed that the noise variance is
periodic with period L.
We now examine the relationship between the roundoff noise in the block-
state realization and the roundoff noise in the associated SISO state-space
model.
For the SISO state-space model (A, b, c, d)n in (17.1), the roundoff noise
is given by [1] ∞
σy2 = cAk (cAk )T + 1 σ 2
k=0 (17.20)
2
= tr[W o ] + 1 σ
17.3 Roundoff Noise Analysis and Minimization 421
W o = AT W o A + cT c
We remark that the formula in (17.20) can also be obtained from (17.17) by
setting L = 1. Noting that
cAk (cAk )T ≥ 0
∞
cAkL+i−1 (cAkL+i−1 )T = cAi−1 (cAi−1 )T + cAL+i−1 (cAL+i−1 )T
k=0
+ cA2L+i−1 (cA2L+i−1 )T + · · ·
(17.21)
it follows that
∞
∞
kL+i−1 kL+i−1 T
cA (cA ) ≤ cAk (cAk )T (17.22)
k=0 k=0
holds for all k. This shows that the variance of the roundoff noise for block-
state realization never exceeds that of the associated SISO state-space model.
Let the average roundoff noise (averaged over one block period) in the
output of a block-state realization be defined from (17.19) by
L L
1 2 1 2
(σ̂y2 )ave = σ̂y (kL + i − 1) = σŷi (17.25)
L L
i=1 i=1
Since
∞
L ∞
kL+i−1 kL+i−1 T
cA (cA ) = cAk (cAk )T (17.26)
i=1 k=0 k=0
422 Block-State Realization of IIR Digital Filters
1
n 1
− 12
1 1 1
QZ T
2 4
T =√ θi Wo W o2 K c W o2 (17.33)
n
i=1
ZΛ−2 Z T ii
= 1 for i = 1, 2, · · · , n
Λ = diag{λ1 , λ2 , · · · , λn }
1
θ1 + θ 2 + · · · + θ n 2
λi = for i = 1, 2, · · · , n
nθi
where
B̂ = b1 b2 · · · bL
⎡ ⎤
c1 ⎧
⎢ c2 ⎥ ⎪
⎨ 0 for i<j
⎢ ⎥
Ĉ = ⎢ .. ⎥ , dij = d for i=j
⎣ . ⎦ ⎪
⎩ i−j−1
cA b for i>j
cL
We are now in a position to define the l2 -sensitivity of the block-state
realization in (17.4a).
Definition 17.1
Let X be an m × n real matrix and let f (X) be a scalar complex function of
X, differentiable with respect to all entries of X. The sensitivity function of
f (X) with respect to X is then defined as
∂f (X) ∂f (X)
SX = , (S X )ij = (17.36)
∂X ∂xij
where xij denotes the (i, j)th entry of matrix X.
Definition 17.2
Let X(z) be an m × n complex matrix-valued function of a complex variable
z and let xpq (z) be the (p, q)th entry of X(z). The l2 -norm of X(z) is then
defined as
⎡ ⎤1
2π m n 2
1
jω 2
X(z)2 = ⎣ xpq (e ) dω ⎦
2π 0
p=1 q=1
(17.37)
!1
2
1 dz
= tr X(z)X H (z)
2πj |z|=1 z
From Definitions 17.1 and 17.2, the l2 -sensitivity measure for the subsystem
in (17.35) is defined by
" " " " " " " "
" ∂Hij (z) "2 " ∂Hij (z) "2 " ∂Hij (z) "2 " ∂Hij (z) "2
Sij = "" " + " " + " " + " "
∂ Â "2 " ∂bj "2 " ∂cTi "2 " ∂dij "2
" "2 " "2 " "2
= "[f j (z)g i (z)] T "2 + "g iT (z)"2 + "f j (z)"2 + uo (i − j)
(17.38)
17.4 l2 -Sensitivity Analysis and Minimization 425
where
f j (z) = (zI n − Â)−1 bj = (zI n − AL )−1 AL−j b
where
1 dz
N ij (I n ) = [f j (z)g i (z)] T f j (z −1 )g i (z −1 )
2πj |z|=1 z
which is equivalent to
L
L
L(L + 1)
S= tr N ij (I n ) + L tr W o + L tr K c + (17.43)
2
i=1 j=1
For comparison purpose, the l2 -sensitivity measure for the SISO state-space
model in (17.1) is found to be (Sections 12.2 and 12.3)
So = tr N (I n ) + tr W o + tr K c + 1 (17.46)
where
1 dz
N (I n ) = [f (z)g(z)]T f (z −1 )g(z −1 )
2πj |z|=1 z
where
P = TTT
1 dz
N ij (P ) = [f j (z)g i (z)] T P −1 f j (z −1 )g i (z −1 )
2πj |z|=1 z
428 Block-State Realization of IIR Digital Filters
It is noted that
L L
1 T
Si (T )ave = tr T N ij (T T T )T + tr T T W o T
L
i=1 j=1 (17.53)
L+1
+ tr T −1 K c T −T +
2
For comparison purpose, it follows from (17.46) that
From (17.4b) and (17.29), it can be shown that the transfer functions
H(z) in (17.34) and Hij (z) in (17.35) are invariant under the coordinate
transformation defined by (17.28).
17.4 l2 -Sensitivity Analysis and Minimization 429
We now address problem (17.57) as the first step of our solution procedure.
To this end, we define the Lagrange function of the problem as
L L
1
J(P , λ) = tr[N ij (P )P ] + tr[W o P ] + tr[K c P −1 ]
L
i=1 j=1
(17.58)
L+1
+ + λ tr[K c P −1 ] − n
2
where λ is a Lagrange multiplier. It is well known that the solution of
problem (17.57) must satisfy the Karush-Kuhn-Tucker (KKT) conditions
∂J(P , λ)/∂P = 0 and ∂J(P , λ)/∂λ = 0 where
430 Block-State Realization of IIR Digital Filters
L L L L
∂J(P , λ) 1 1
= N ij (P ) + W o − P −1 M ij (P )P −1
∂P L L
i=1 j=1 i=1 j=1
− (λ + 1)P −1 K c P −1 (17.59)
∂J(P , λ)
= tr[K c P −1 ] − n
∂λ
The matrices M ij (P ) in (17.59) are obtained by solving the Lyapunov
equations
T
AL AL−j bcAi−1 AL AL−j bcAi−1
X ij = X ij
0 AL 0 AL
(17.60)
# $
0 0
+
0 P
and then taking the upper-left n × n block of X ij as M ij (P ), namely,
# $
In
M ij (P ) = I n 0 X ij (17.61)
0
The KKT conditions in (17.59) can be expressed compactly as
P F (P )P = G(P , λ), tr[K c P −1 ] = n (17.62)
where
L L
1
F (P ) = N ij (P ) + W o
L
i=1 j=1
L L
1
G(P , λ) = M ij (P ) + (λ + 1)K c
L
i=1 j=1
Note that the first equation in (17.62) is highly nonlinear with respect to P .
An effective approach to solving the first equation in (17.62) is to relax it into
the recursive second-order matrix equation
P k+1 F (P k )P k+1 = G(P k , λk+1 ) (17.63)
where P k is assumed to be known from the previous recursion. Note that if
the matrix sequence {P k } converges to its limit matrix, say P , then (17.63)
17.4 l2 -Sensitivity Analysis and Minimization 431
where P 1/2 is the square root of the matrix P obtained above, and U is an
n × n orthogonal matrix.
As the second step of the solution procedure, we now turn our attention
to the construction of the optimal coordinate transformation matrix T that
solves the problem of minimizing (17.53) subject to the constraints in (17.32).
To this end, we examine a procedure for determining the n × n orthogonal
matrix U in (17.68) in order for the nonsingular matrix T to satisfy the l2 -
scaling constraints in (17.32).
From (17.47) and (17.68), it follows that
1 1
K c = T −1 K c T −T = U T P − 2 K c P − 2 U (17.69)
so that (17.74) is always satisfied. Using (17.73), it follows from (17.53) that
L L
1 T T L+1
Si (T̂ )ave = tr T̂ N̂ ij (T̂ )T̂ + tr T̂ Ŵ o T̂ + n +
L 2
i=1 j=1
(17.76)
where
1 1 T 1 1 1 1
N̂ ij (T̂ ) = K c2 N ij (K c2 T̂ T̂ K c2 )K c2 , Ŵ o = K c2 W o K c2
Then, Si (T̂ )ave is a function of x and is denoted by Jo (x). The algorithm starts
with a trivial initial point x0 obtained from an initial assignment T̂ = I n .
Then, in the kth iteration, a quasi-Newton algorithm updates the most recent
point xk to point xk+1 as
xk+1 = xk + αk dk (17.78)
where
dk = −S k ∇Jo (xk ), αk = arg min Jo (xk + αdk )
α
% & T
γ Tk S k γ k δ k δ Tk − δ k γ Tk S k +S k γ k δ k
S k+1 = S k + 1 +
γ Tk δ k γ k δk
T γ k δk
T
In the above, ∇Jo (x) is the gradient of Jo (x) with respect to x, and S k is a
positive-definite approximation of the inverse Hessian matrix of Jo (x).
This iteration process continues until
where T̂ pq is the matrix obtained from T̂ with its (p, q)th component perturbed
by Δ and it is follows that [14, p. 655]
ΔT̂ g pq eTq T̂
T̂ pq = T̂ + T̂ + ΔT̂ g pq eTq T̂
1− ΔeTq T̂ g pq
(17.81)
' ( 1
tq
g pq = −∂ ||tq ||
/∂tpq = (tpq tq − ||tq ||2 ep )
||tq ||3
The gradient of Jo (x) with respect to tpq can be evaluated using closed-form
expressions as
∂Jo (x)
= 2 β1 − β2 + β3 (17.82)
∂tpq
where
L L
1 T T
β1 = eq T̂ N̂ ij (T̂ )T̂ T̂ g pq
L
i=1 j=1
L L
1 T −T T
β2 = eq T̂ M̂ ij (T̂ )g pq , β3 = eTq T̂ Ŵ o T̂ T̂ g pq
L
i=1 j=1
−1 1 T 1
− 12
M̂ ij (T̂ ) = K c 2 M ij (K c2 T̂ T̂ K c2 )K c
(17.32). This can be done by simply setting the Lagrange multiplier λ to zero
in (17.58). In this case, (17.64) is changed to
1 1 1 1 1
P k+1 = F (P k )− 2 F (P k ) 2 G(P k )F (P k ) 2 2 F (P k )− 2 (17.83)
where
L L
1
G(P ) = M ij (P ) + K c
L
i=1 j=1
where P 1/2 is the square root of the matrix P obtained above, and U is any
n × n orthogonal matrix.
−0.663010 0 0 0 0.010527
co = 1 0 0 0 , d = 3.123898 × 10−5
B. Roundoff Noise
The gain of the original average roundoff noise in (17.27) was computed as
1
tr[W o ] + 1 = 2.360365 × 104
6
which was compared with the roundoff noise gain for the SISO state-space
model shown in (17.20) as
tr[W o ] + 1 = 14.161690 × 104
17.4 l2 -Sensitivity Analysis and Minimization 437
K c = T −1 K c T −T
⎡ ⎤
1.000000 0.295942 0.341255 0.475526
⎢ 0.295942 1.000000 −0.341255 −0.475526 ⎥
=⎢⎣ 0.341255 −0.341255
⎥
1.000000 0.909588 ⎦
0.475526 −0.475526 0.909588 1.000000
W o = T T W oT
⎡ ⎤
0.138885 0.041102 0.047395 0.066044
⎢ 0.041102 0.138885 −0.047395 −0.066044 ⎥
=⎢⎣ 0.047395 −0.047395
⎥
0.138885 0.126328 ⎦
0.066044 −0.066044 0.126328 0.138885
The minimum gain of the average roundoff noise in (17.30) was computed as
1
tr[T T W o T ] + 1 = 1.092590
6
which was compared with the roundoff noise gain for the equivalent
realization, (T −1 AT , T −1 b, cT , d)n , of a SISO state-space model as
tr[T T W o T ] + 1 = 1.555541
C. Initial l2 -Sensitivity
The average l2 -sensitivity measure for the block-state realization described
by (17.34) was computed from (17.45) as
(Si )ave = 40.933372 × 104
which was compared with the l2 -sensitivity measure for the SISO state-space
model shown in (17.46) as
So = 977.917589 × 104
438 Block-State Realization of IIR Digital Filters
and the average l2 -sensitivity measure for the block-state realization described
by (17.34) was computed from (17.53) as
Si (T )ave = 8.759262
which was compared with the l2 -sensitivity measure for the equivalent
realization, (A, b, c, d)n , of a SISO state-space model shown in (17.54) as
So (T ) = 29.500326
Si (P k-1)ave
4
10
2
10
0
10
1 10
k
1
10
0
10
tr[K c Pk-1 ]
-1
-1
10
-2
10
1 10
k
Figure 17.4 Profiles of Si (P )ave and tr[K c P −1 ] during the first 84 iterations.
which is equivalent to
⎡ ⎤
−0.307934 0.205102 0.403183 −0.758913
⎢ 0.350071 −0.233366 −0.379012 0.785847 ⎥
T =⎢ ⎣ −0.385730
⎥
0.267285 0.350018 −0.813980 ⎦
0.414649 −0.303751 −0.313832 0.845979
The new controllability Grammian was found to be
⎡ ⎤
1.000000 0.609669 0.656806 −0.159006
⎢ 0.609669 1.000000 0.530787 0.197938 ⎥
Kc = ⎢⎣ 0.656806 0.530787
⎥
1.000000 −0.674646 ⎦
−0.159006 0.197938 −0.674646 1.000000
and the average l2 -sensitivity measure for the block-state realization described
by (17.34) was computed from (17.53) as
Si (T )ave = 8.759262
which was compared with the l2 -sensitivity measure for the equivalent
realization, (A, b, c, d)n , of a SISO state-space model, shown in (17.54) as
So (T ) = 29.500303
The profile of the average l2 -sensitivity measure Jo (x) during the first 22
iterations of the algorithm is depicted in Figure 17.5.
15
Jo (xk )
10
5
0 10 20
k
Figure 17.5 Profile of Jo (x) during the first 22 iterations.
References 441
Si (T )ave = 7.190177
which was compared with the l2 -sensitivity measure for the equivalent
realization, (A, b, c, d)n , of a SISO state-space model shown in (17.54) as
So (T ) = 28.210150
17.5 Summary
In this chapter, we have considered the block-state realization that is derived
from a given SISO state-space model, and examined some of the properties of
the block-state realization. Second, we have analyzed the roundoff noise in the
442 Block-State Realization of IIR Digital Filters
6
10
Si (P k-1)ave
4
10
2
10
0
10
1 10
k
Figure 17.6 Profile of Si (P )ave during the first 13 iterations.
block-state realization and minimized the average roundoff noise gain subject
to l2 -scaling constraints. Third, we have analyzed l2 -sensitivity in the block-
state realization and minimized the average l2 -sensitivity subject to l2 -scaling
constraints where two methods have been presented. One has been based on
a Lagrange function, while the other has relied on an efficient quasi-Newton
algorithm. Finally, numerical experiments have been presented to demonstrate
the validity and effectiveness of the techniques addressed in this chapter.
References
[1] S. Y. Hwang, “Roundoff noise in state-space digital filtering: A general
analysis,” IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-24,
no. 3, pp. 256–262, June 1976.
[2] C. T. Mullis and R. A. Roberts, “Synthesis of minimum roundoff noise
fixed point digital filters,” IEEE Trans. Circuits Syst., vol. CAS-23, no, 9,
pp. 551–562, Sept. 1976.
[3] S. Y. Hwang, “Minimum uncorrelated unit noise in state-space digital
filtering,” IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-25,
no. 4, pp. 273–281, Aug. 1977.
[4] C. W. Barnes and S. Shinnaka, “Finite word effects in block-state
realization of fixed-point digital filters,” IEEE Trans. Circuits Syst., vol.
CAS-27, no. 5, pp. 345–349, May 1980.
References 443
445
446 Index
finite-word-length (FWL) G
effect 273, 357, 383 Gaussian random process
finite-word-length 339, 366
implementation 338 general FIR filter design 117,
finite-word-length 129, 133
realization 411 generalized transposed direct-
FIR digital filter 38, 97, 121, 124 form II structure 384, 409
first-order Gray-Markel’s lattice
information 179 filter 46
fixed point 254, 260 group delay 44, 163, 235, 241
fixed-point arithmetic 254, 257,
357 H
fixed-point Hamming window 111, 113
implementation 263, 328, 405 Hankel matrix 85, 88, 91, 196
fixed-point number 254, 260 Hanning window 111, 113
floating point 257 high-order error feedback 327,
floating-point 328, 338, 339
arithmetic 5, 254, 257, 270 highpass filter 98, 99, 112, 338
flow-graph reversal 39
forward shift I
operator 383 image signal 2
Fourier series expansion 6, 17, improved l2 -sensitivity
18, 108 measure 400, 402, 403
Fourier transform 7, 13, 20, 33 impulse function 10, 11
frequency domain 7, 151, impulse response 38, 70, 101, 141
161, 168 incomplete Hankel matrix 88
frequency response 42, 53, initial-value theorem 9, 29
98, 113 input-normal 79, 80, 90
frequency response input-normal realization 90
error 164, 170, 171, 172 input-normal state-space
frequency transfer model 80
function 42, 100, 103, 109 input-quantization 253, 254
frequency transformation internal structure 67, 266,
111, 114 357, 415
frequency-response-masking FIR interpolated FIR filter 213,
filter 213, 239 215, 239
Frobenius norm 303 interpolation formula 21, 124
fundamental frequency 6 interpolation function 21
Index 449
matrix inversion O
formula 283, 370 observability Grammian 70, 81,
maximum rank 201, 277
decomposition 86, 89 observability Grammian
minimal 68, 85, 87 invariance 418
minimal l2 -sensitivity 277, 280 observability invariance 417
minimal partial observability
realization 67, 87, 89 matrix 69, 82, 92, 197
minimal pole observable 67, 68, 84, 204
sensitivity 299, 306, 309, 323 observable canonical
minimal realization 85, 92, form 77, 78
94, 417 one’s complement 254
minimax design 161, 172, one-dimensional (1-D) signal 1
218, 222 optimal blocklength 411, 414
minimum mean squared error optimal coordinate
design 151 transformation 287, 299,
modified least squares 323, 431
problem 173, 174 optimal realization 280, 317,
multidimensional (M-D) signal 2 364, 374
multiplier 37, 46, 180, 300 output equation 68, 419
musical sound 3 output-normal 67, 73, 80
output-normal realization 91
N output-normal state-space
new realization 281, 307, model 79
351, 422 overflow 254, 256, 258, 266
noise variance 329, 420, 422 overflow oscillation 257, 258, 270
nonlinear system 267, 268
nonrecursive digital filter 97 P
normal matrix 260 Pade’s approximation 175, 204,
normalized frequency 16, 210
146, 383 Parks-McClellan’s
normalized lattice algorithm 120, 133, 234, 248
two-pair 47, 48 Parseval’s formula 179
normalized noise Parseval’s theorem 8, 12, 13, 33
gain 329, 340, 366, 394 partial realization 67, 87, 89
notch filter 51, 52, 383 partial-fraction
notch frequency 48, 50 expansion 23, 30, 142, 143
Nyquist frequency 19, 20 peak gain 241, 248, 250
Index 451
Takao Hinamoto received his B.E. degree from the Okayama University,
Okayama, Japan, in 1969, and his M.E. degree from the Kobe University,
Kobe, Japan, in 1971, and a Doctorate in Engineering from the Osaka
University, Osaka, Japan, in 1977.
From the year 1972 to 1988, he was with the Faculty of Engineering,
Kobe University and from 1979 to 1981, he was a visiting member of staff in
the Department of Electrical Engineering, Queen’s University, Kingston, ON,
Canada. During 1988–1991, he was the Professor of Electronic Circuits in the
Faculty of Engineering, Tottori University, Tottori, Japan. During 1992–2009,
he was the Professor of Electronic Control in the Department of Electrical
Engineering, Hiroshima University, Hiroshima, Japan. Since 2009, he has
been the Professor Emeritus of Hiroshima University. His research interests
include digital signal processing, system theory, and control engineering.
He has published almost 450 papers in these areas. He is the coeditor and
coauthor of Two-Dimensional Signal and Image Processing (Tokyo, Japan:
SICE, 1996).
He was the Guest Editor of the special sections on Digital Signal Pro-
cessing as well as Adaptive Signal Processing and Its Applications in the
IEICE Transactions on Fundamentals in August 1998 and March 2005,
respectively. He was the Co-Guest Editor of the special section on Recent
Advances in Circuits and Systems in the July and August 2005 issues of
the IEICE Transactions on Information and Systems. In 1997, he was the
Chair of the 12th DSP Symposium held in Hiroshima, Japan, sponsored by
the DSP Technical Committee of IEICE. From 1993 to 2000, he was a Senator
or Member of the Board of Directors in the Society of Instrument and Control
Engineers (SICE), and from 1999 to 2001 he was Chair of the Chugoku
Chapter of SICE. From 2003 to 2004, he served as Chair of the DSP Technical
Committee of IEICE and Chair of the Chugoku Chapter of IEICE.
From 1993 to 1995, he served as an Associate Editor of the IEEE Transac-
tions on Circuits and Systems II. During 2002–2003 and 2006–2007, he served
as an Associate Editor of the IEEE Transactions on Circuits and Systems I.
453
454 About the Authors
In 2004, he served as the General Chair of the 47th IEEE International Midwest
Symposium on Circuits and Systems held in Hiroshima, Japan. Since 1995,
he has been a Steering Committee Member of the IEEE International Midwest
Symposium on Circuits and Systems. Since 1998, he has been a Digital Signal
Processing Technical Committee Member in the IEEE Circuits and Systems
Society. He played a leading role in establishing the Hiroshima Section of
IEEE and served as Interim Chair of the Section.
He received the IEEE Third Millennium Medal in January 2000. He was
elected a Fellow of the IEEE in 2001. In 2004, he was elected a Fellow of the
Institute of Electronics, Information and Communication Engineers (IEICE).
In 2005, he was elected a Fellow of the SICE. He became a Life Fellow of the
IEEE in 2011.