Chapter 6
Digital Filter Structures
The convolution sum description of an
LTI discrete-time system can,in
principle,be used to implement the
system
For an IIR finite-dimensional system
this approach is not practical as here the
impulse response is of infinite length
However,a direct implementation of the
IIR finite-dimensional system is
practical
§ 6.1 Introduction
Here the input-output relation involves a
finite sum of products:
Mk kNk k knxpknydny 01 ][][][
Nk knxkhny 0 ][][][
§ 6.1 Introduction
On the other hand,an FIR system can be
implemented using the convolution sum
which is a finite sum of products:
The actual implementation of an LTI
digital filter can be either in software or
hardware form,depending on
applications
In either case,the signal variables and
the filter coefficients cannot be
represented with finite precision
§ 6.1 Introduction
A structural representation using
interconnected basic building blocks is
the first step in the hardware or
software implementation of an LTI
digital filter
The structural representation provides
the key relations between some pertinent
internal variables with the input and
output that in turn provides the key to
the implementation
§ 6.1 Introduction
§ 6.1.1 Block Diagram
Representation
In the time domain,the input-output
relations of an LTI digital filter is given
by the convolution sum
k knxkhny ][][][
Mk kNk k knxpknydny 01 ][][][
or,by the linear constant coefficient
difference equation
§ 6.1.1 Block Diagram
Representation
For the implementation of an LTI digital filter,
the input-output relationship must be
described by a valid computational algorithm
To illustrate what we mean by a
computational algorithm,consider the causal
first-order LTI digital filter shown below
§ 6.1.1 Block Diagram
Representation
The filter is described by the difference
equation
y[n]=-d1y[n-1]+p0x[n]+p1x[n-1]
Using the above equation we can
compute y[n] for n?0 knowing the initial
condition y[n-1] and the input x[n] for
n?-1
§ 6.1.1 Block Diagram
Representation
y[0]=-d1y[-1]+p0x[0]+p1x[-1]
y[1]=-d1y[0]+p0x[1]+p1x[0]
y[2]=-d1y[1]+p0x[2]+p1x[1]
.…
We can continue this calculation for
any value of the time index n we
desire
§ 6.1.1 Block Diagram
Representation
Each step of the calculation requires a
knowledge of the previously calculated value
of the output sample (delayed value of the
output),the present value of the input sample,
and the previous value of the input sample
(delayed value of the input)
As a result,the first-order difference equation
can be interpreted as a valid computational
algorithm
§ 6.1.2 Basic Building Blocks
The computational algorithm of an LTI digital
filter can be conveniently represented in block
diagram form using the basic building blocks
shown below
x[n] y[n]
w[n]
Ax[n] y[n]
y[n]1?zx[n]
x[n] x[n]
x[n]
Adder
Unit delay
Multiplier
Pick-off node
§ 6.1.2 Basic Building Blocks
Advantages of block diagram
representation
(1) Easy to write down the
computational algorithm by inspection
(2) Easy to analyze the block diagram to
determine the explicit relation between
the output and input
§ 6.1.2 Basic Building Blocks
(3) Easy to manipulate a block diagram to
derive other,equivalent” block diagrams
yielding different computational algorithms
(4) Easy to determine the hardware
requirements
(5) Easier to develop block diagram
representations from the transfer function
directly
§ 6.1.3 Analysis of Block
Diagrams
Carried out by writing down the expressions
for the output signals of each adder as a sum
of its input signals,and developing a set of
equations relating the filter input and output
signals in terms of all internal signals
Eliminating the unwanted internal variables
then results in the expression for the output
signal as a function of the input signal and the
filter parameters that are the multiplier
coefficients
§ 6.1.3 Analysis of Block
Diagrams
The output E(z) of the adder is
E(z) = X(z)+G2(z)Y(z)
But from the figure
Y(z) = G1(z)E(z)
Example - Consider the single-loop feedback
structure shown below
§ 6.1.3 Analysis of Block
Diagrams
Eliminating E(z) from the previous two
equations we arrive at
[1-G1(z)G2(z)]Y(z)=G1(z)X(z)
which leads to
)()(1
)(
)(
)(
)(
21
1
zGzG
zG
zX
zY
zH

§ 6.1.3 Analysis of Block
Diagrams
Example - Analyze the cascaded lattice
structure shown below where the z-
dependence of signal variables are not
shown for brevity
§ 6.1.3 Analysis of Block
Diagrams
The output signals of the four adders are
given by
W1= X -?S2 W2= W1 -?S1
W3= S1 -?W2 Y=?W1 -? S2
From the figure we observe
S2= z-1 W3 S1= z-1 W2
§ 6.1.3 Analysis of Block
Diagrams
Substituting the last two relations in the
first four equations we get
W1=X-? z-1 W3 W2= W1 -? z-1 W2
W3= z-1 W2 +?W2 Y=?W1 +? z-1
W3
From the second equation we get
W2= W1 /(1+? z-1 ) and from the third
equation we get W3=(? + z-1 )W2
§ 6.1.3 Analysis of Block
Diagrams
Combining the last two equations we get
113 1
1 WW
z
z


,311 WzXW 311 WzWY
21
21
)(1
)()(




zz
zz
X
YzH
we finally arrive at
Substituting the above equation in
§ 6.2 Equivalent Structures
Two digital filter structures are defined
to be equivalent if they have the same
transfer function
We describe next a number of methods
for the generation of equivalent
structures
However,a fairly simple way to generate
an equivalent structure from a given
realization is via the transpose operation
§ 6.2 Equivalent Structures
Transpose Operation
(1) Reverse all paths
(2) Replace pick-off nodes by adders,and vice
versa
(3) Interchange the input and output nodes
All other methods for developing equivalent
structures are based on a specific algorithm
for each structure
§ 6.2 Equivalent Structures
There are literally an infinite number of
equivalent structures realizing the same
transfer function
It is thus impossible to develop all
equivalent realizations
In this course we restrict our attention
to a discussion of some commonly used
structures
§ 6.2 Equivalent Structures
Under infinite precision arithmetic any
given realization of a digital filter
behaves identically to any other
equivalent structure
However,in practice,due to the finite
wordlength limitations,a specific
realization behaves totally differently
from its other equivalent realizations
§ 6.2 Equivalent Structures
Hence,it is important to choose a
structure that has the least quantization
effects when implemented using finite
precision arithmetic
One way to arrive at such a structure is
to determine a large number of
equivalent structures,analyze the finite
wordlength effects in each case,and
select the one showing the least effects
§ 6.2 Equivalent Structures
In certain cases,it is possible to develop
a structure that by construction has the
least quantization effects
We defer the review of these structures
after a discussion of the analysis of
quantization effects
Here,we review some simple
realizations that in many applications
are quite adequate
§ 6.3 Basic FIR Digital Filter
Structures
which is a polynomial in z-1
In the time-domain the input-output
relation of the above FIR filter is given
by
Nn nznhzH 0 ][)(
Nk knxkhny 0 ][][][
A causal FIR filter of order N is
characterized by a transfer function H(z)
given by
§ 6.3.1 Direct Form FIR Digital
Filter Structures
An FIR filter of order N is characterized
by N+1 coefficients and,in general,
require N+1 multipliers and N two-input
adders
Structures in which the multiplier
coefficients are precisely the coefficients
of the transfer function are called direct
form structures
§ 6.3.1 Direct Form FIR Digital
Filter Structures
A direct form realization of an FIR filter
can be readily developed from the
convolution sum description as indicated
below for N = 4
§ 6.3.1 Direct Form FIR Digital
Filter Structures
which is precisely of the form of the
convolution sum description
The direct form structure shown on the
previous slide is also known as a tapped
delay line or a transversal filter
][][][][ 4433 nxhnxh
][][][][][][][ 22110 nxhnxhnxhny
An analysis of this structure yields
§ 6.3.1 Direct Form FIR Digital
Filter Structures
The transpose of the direct form
structure shown earlier is indicated
below
§ 6.3.2 Cascade Form FIR Digital
Filter Structures
A higher-order FIR transfer function can also
be realized as a cascade of second-order FIR
sections and possibly a first-order section
To this end we express H(z) as
Kk kk zzhzH 1 221110 )(][)(
where k=N/2 if N is even,and k=(N+1)/2 if N is
odd,with?2k=0
§ 6.3.2 Cascade Form FIR Digital
Filter Structures
A cascade realization for N = 6 is shown
below
Each second-order section in the above
structure can also be realized in the
transposed direct form
§ 6.3.3 Linear-Phase FIR Structures
The symmetry (or antisymmetry) property of
a linear-phase FIR filter can be exploited to
reduce the number of multipliers into almost
half of that in the direct form implementations
Consider a length-7 Type 1 FIR transfer
function with a symmetric impulse response
321 3210 zhzhzhhzH ][][][][)(
654 012 zhzhzh ][][][
§ 6.3.3 Linear-Phase FIR Structures
Rewriting H(z) in the form
)]([)]([)( 516 110 zzhzhzH
342 32 zhzzh ][)]([
we obtain the realization shown below
§ 6.3.3 Linear-Phase FIR Structures
A similar decomposition can be applied
to a Type 2 FIR transfer function
For example,a length-8 Type 2 FIR
transfer function can be expressed as
)]([)]([)( 617 110 zzhzhzH
)]([)]([ 4352 32 zzhzzh
The corresponding realization is shown
on the next slide
§ 6.3.3 Linear-Phase FIR Structures
Note,The Type 1 linear-phase structure for a
length-7 FIR filter requires 4 multipliers,
whereas a direct form realization requires 7
multipliers
§ 6.3.3 Linear-Phase FIR Structures
Note,The Type 2 linear-phase structure
for a length-8 FIR filter requires 4
multipliers,whereas a direct form
realization requires 8 multipliers
Similar savings occurs in the realization
of Type 3 and Type 4 linear-phase FIR
filters with antisymmetric impulse
responses
§ 6.4 Basic IIR Digital Filter
Structures
The causal IIR digital filters we are concerned
with in this course are characterized by a real
rational transfer function of z-1 or,
equivalently by a constant coefficient
difference equation
From the difference equation representation,
it can be seen that the realization of the causal
IIR digital filters requires some form of
feedback
§ 6.4 Basic IIR Digital Filter
Structures
An N-th order IIR digital transfer
function is characterized by 2N+1
unique coefficients,and in general,
requires 2N+1 multipliers and 2N two-
input adders for implementation
Direct form IIR filters,Filter structures
in which the multiplier coefficients are
precisely the coefficients of the transfer
function
§ 6.4.1 Direct Form IIR Digital
Filter Structures
Consider for simplicity a 3rd-order IIR
filter with a transfer function
3
3
2
2
1
1
3
3
2
2
1
10
1



zdzdzd
zpzpzpp
zD
zPzH
)(
)()(
We can implement H(z) as a cascade of
two filter sections as shown on the next
slide
§ 6.4.1 Direct Form IIR Digital
Filter Structures
)(1 zH
)(zH2)(zW)(zX )(zY
33221101 zpzpzppzP
zX
zWzH )(
)(
)()(
3322112 1
11
zdzdzdzDzW
zYzH
)()(
)()(
§ 6.4.1 Direct Form IIR Digital
Filter Structures
The filter section
H1(z) can be seen to
be an FIR filter and
can be realized as
shown right
]3[]2[]1[][][ 3210 nxpnxpnxpnxpnw
§ 6.4.1 Direct Form IIR Digital
Filter Structures
The time-domain representation of H2(z)
is given by
][][][][][ 321 321 nydnydnydnwny
Realization of
follows from the
above equation
and is shown on
the right
§ 6.4.1 Direct Form IIR Digital
Filter Structures
A cascade of the two structures realizing
H1(z) and H2(z) leads to the realization
of H(z) shown below and is known as the
Direct Form I structure
§ 6.4.1 Direct Form IIR Digital
Filter Structures
Note,The direct form I structure is
noncanonic as it employs 6 delays to
realize a 3rd-order transfer function
A transpose of
the direct form I
structure is shown
on the right and is
called the direct
form I structure
§ 6.4.1 Direct Form IIR Digital
Filter Structures
Various other noncanonic direct form
structures can be derived by simple block
diagram manipulations as shown below
§ 6.4.1 Direct Form IIR Digital
Filter Structures
1
'1
Observe in the
direct form
structure shown
right,the signal
variable at nodes
and are the
same,and hence the
two top delays can
be shared
§ 6.4.1 Direct Form IIR Digital
Filter Structures
Following the same argument,the bottom
two delays can be shared
Sharing of all delays reduces the total
number of delays to 3 resulting in a
canonic realization shown on the next
slide along with its transpose structure
2'2
Likewise,the signal variables at nodes
and are the same,permitting the
sharing of the middle two delays
§ 6.4.1 Direct Form IIR Digital
Filter Structures
Direct form realizations of an N-th order
IIR transfer function should be evident
§ 6.4.2 Cascade Form IIR Digital
Filter Structures
By expressing the numerator and the
denominator polynomials of the transfer
function as a product of polynomials of lower
degree,a digital filter can be realized as a
cascade of low-order filter sections
Consider,for example,H(z) = P(z)/D(z)
expressed as
)()()(
)()()(
)(
)()(
321
321
zDzDzD
zPzPzP
zD
zPzH
§ 6.4.2 Cascade Form IIR Digital
Filter Structures
Examples of cascade realizations
obtained by different pole-zero pairings
are shown below
§ 6.4.2 Cascade Form IIR Digital
Filter Structures
Examples of cascade realizations obtained by
different ordering of sections are shown below
§ 6.4.2 Cascade Form IIR Digital
Filter Structures
based on pole-zero-pairings and ordering
Due to finite wordlength effects,each
such cascade realization behaves
differently from others
)()()(
)()()()(
zDzDzD
zPzPzPzH
321
221?
There are altogether a total of 36
different cascade realizations of
§ 6.4.2 Cascade Form IIR Digital
Filter Structures
Usually,the polynomials are factored
into a product of 1st-order and 2nd-
order polynomials:






k kk
kk
zz
zzpzH
2
2
1
1
2
2
1
1
0 1
1

)(
022 kk
In the above,for a first-order factor
§ 6.4.2 Cascade Form IIR Digital
Filter Structures
Consider the 3rd-order transfer function








2
22
1
12
2
22
1
12
1
11
1
11
1
1
1
1
0 zzpzH
zz
z
z


)(
One possible realization is shown below
§ 6.4.2 Cascade Form IIR Digital
Filter Structures
Example - Direct form II and cascade
form realizations of
321
321
20180401
0203 6 20440




zzz
zzzzH
...
...)(





1
1
21
21
40150801
0203 6 20440
z
z
zz
zz
...
...
are shown on the next slide
§ 6.4.2 Cascade Form IIR Digital
Filter Structures
Direct form II
Cascade form
§ 6.4.3 Parallel Form IIR Digital
Filter Structures
A partial-fraction expansion of the
transfer function in z-1 leads to the
parallel form I structure
Assuming simple poles,the transfer
function H(z) can be expressed as


k zz
z
kk
kkzH
2
2
1
1
1
10
10
)(
012 kk In the above for a real pole
§ 6.4.3 Parallel Form IIR Digital
Filter Structures
The two basic parallel realizations of a 3rd-
order IIR transfer function are shown below
Parallel form I Parallel form II
§ 6.4.3 Parallel Form IIR Digital
Filter Structures
Example - A partial-fraction expansion
of
321
321
20180401
0203 6 20440




zzz
zzzzH
...
...)(
21
1
1 50801
2050
401
6010




zz
z
z
zH
..
..
.
..)(
in z-1 yields
§ 6.4.3 Parallel Form IIR Digital
Filter Structures
The
corresponding
parallel form I
realization is
shown right
§ 6.4.3 Parallel Form IIR Digital
Filter Structures
Likewise,a partial-fraction expansion of
H(z) in z yields
21
11
1
1
50801
25020
401
240




zz
zz
z
zzH
..
..
.
.)(
The
corresponding
parallel form II
realization is
shown on the
right
§ 6.5 Realization Using
MATLAB
The cascade form requires the
factorization of the transfer function
which can be developed using the M-file
zp2sos
The statement sos = zp2sos(z,p,k)
generates a matrix sos containing the
coefficients of each 2nd-order section of
the equivalent transfer function H(z)
determined from its pole-zero form
§ 6.5 Realization Using
MATLAB
whose i-th row contains the coefficients {pil}
and {dil},of the the numerator and
denominator polynomials of the i-th
2nd-order section
sos is an L?6 matrix of the form
2L1L0L2L1L0L
221202221202
211101211101
dddppp
dddppp
dddppp
s o s
§ 6.5 Realization Using
MATLAB
L denotes the number of sections
The form of the overall transfer function
is given by




L
i iii
iii
L
i
i zdzdd
zpzppzHzH
1
2
2
1
10
2
2
1
10
1
)()(
Program 6_1 can be used to factorize an
FIR and an IIR transfer function
§ 6.5 Realization Using
MATLAB
Parallel forms I and II can be
developed using the functions
residuez and residue,respectively
Program 6_2 uses these two
functions
Homework
Read the textbook from p.359 to 378
Problems
6.4,6.10,6.26,6.28,6.56
M6.1,M6.2,M6.10