You are on page 1of 32

4.

Signal-flow Graphs 35

4. Signal-flow Graphs

4.1 Introduction
Just as "a picture is worth a thousand words" it might be said that "a signal-flow graph
(sfg) is worth a dozen equations (or so)". Thus a sfg is indeed a graphical representation of
a system described by a set of equations. Just as the equations can be solved to establish
various relations between variables of the system, so the sfg can be "solved" to obtain the
same relations. As observed above, the graphical interconnection between the variables of
the system provides visual "insights" into the system in terms of complexity, feedback loops
and feedforward paths that are more difficult, if not impossible, to recognize in a set of
equations. Furthermore, using the theory and reduction rules introduced in 1953 by S.J.
Mason, signal-flow graphs provide a bridge from the transfer functions between input­
output, or intermediate variables of a system, to possible topologies of a corresponding
system. This makes signal-flow graph theory an invaluable tool for the synthesis of
systems, starting out from their transfer functions. Note that we have not specified our
systems, because signal-flow graph theory can be applied to most systems, be they linear or
non-linear, discrete- or continuous-time. In line with our treatment, in the next and further
chapters, of linear discrete-time systems or LDSs, we shall, in what follows, restrict
ourselves to a discussion of signal-flow graphs pertaining to linear systems.

4.2 Definitions and Construction Rules


The original and most direct application of signal-flow graphs is to visualize the
describing equations of a system in graphical form. Before discussing the rules required for
the construction of signal-flow graphs, some basic terms must first be explained. Referring
to the general signal-flow graph in Fig. 4.2.1 we shall use the following terms in the manner
explained below:
Node: Represents a specified quantity (e.g., signal) or a variable.
Branch: Represents the functional dependence between the variables (i,e., nodes).
The value of a variable represented by a node is obtained by adding the
branch outputs entering that node. Signals travel along branches only in
the direction described by the arrows of the branches (i.e., in the branch
direction).
Source node: . A node with no branches entering (e.g., node Xl in Fig. 4.2.1). It
represents an independent variable.
Sink node: .... A node with no branches leaving (node X s). It represents a variable that
no other variable in the system is dependent on.
36 ZDS

a d

Xs

Fig. 42.1: Example of a general signal-flow graph.

Intermediate node: A node with branches entering and leaving (nodes X 2 , X 3, X 4 ,


and X 6 ) .
Pat h: A continuous unidirectional succession of branches, all of which
are traveling in the same direction.
Openpath: Any path along which a node is encountered only once (abed or
aeh; aef is not open).
Forwardpath: An open path between a source node and a sink node (abed or
aehd).
L0 0 p : A closed path which returns to the starting node and in which no
node is encountered more than once, excepting the starting node
(loops g and ef, but not eg{).
Self loop: A feedback loop consisting of a single branch and node (loop g).
Branch transmission: The linear quantity, regardless of its dimension, relating one node
of a branch to the other. Thus, for example, a signal X k , travel­
ing along a branch between X k and X j, is multiplied by the
transmission (e.g., gain) tkj of the branch, so that a signal of
tkjXk is delivered at node X j.
Loop transmission:..... The product of the transmission of branches in the closed loop.

With these definitions, we can now summarize the construction of a signal-flow graph
by a few basic rules:
1. The variables (e.g., signals) at the nodes of a signal-flow graph represent the
variables of a set of linear equations, while transmittances of the branches represent
the relating constants or coefficients.
2. Signals travel along branches only in the direction of the arrows.
3. A signal traveling along any branch is multiplied by the transmittance of that branch.
4. Signal-flow Graphs 37

4. The value of the variable represented by any node is the sum of all signals entering
the node.
5. The value of the variable represented by any node is transmitted on all branches
leaving that node.

The signal-flow graph of a physical linear system is nothing more than a graphical
representation of the set of linear equations characterizing that system; indeed it is generally
derived directly from those equations. Since there are many different forms in which the
equations of a system can be written there are equally many different forms of signal-flow
graphs that can be used to describe that same system. Naturally some sets of equations
produce simpler signal-flow graphs for a given system than others. Generalizations are
difficult, however, because the form of system equations providing the simplest flow graph
depends on the system in question, that is, on its topolojy,jts c.fmple~~, and on the
number of independent variables contained in it. Thus thti1ei:ie1{tY"~thwhich a complex
system can be converted into a tractable signal-flow graph depends, to some extent, on
experience. On the other hand, as we shall see shortly, one of the big advantages of signal-;
/1{.J.jj{~t:J//A1 ql<tJffl42-.t?1
. th at, even iequations
flow grap hs IS f' are c hosen that res u1t m
. an unnecessarily CUI1ll.Jl:;rso~
graph, the easily implemented rules for reducing the graph to its basic and simplest possible
form make its usefulness independent of the elegance with which the initial graph was
derived.

Consider, for example, the following set of equations:

Xt[k] = xo[k] + ax2[k] + bX2[k]


x2[k]= cxt[k]
x3[k] = dxo[k] +ex2[k]. (4.2.1)
The corresponding signal-flow graph is shown in Fig. 4.2.2.

Fig. 422: Signal-flow graph corresponding to eqs. (4.2.1).

Since we are dealing with discrete-time systems, the node variables are likely to be discrete­
time signals, or sequences. This is indicated with the notation Xi[k] or, less common in this
context - but consistent with our notation, xJ]. A sequence delayed by m time units would
similarly be indicated with Xi [k - m] or xi['-m]. According to the deflnitions above, xo[k]
is a source node, x3[k] a sink node. Since the branch transmission from xo[k] to xt[k] is
unity, it is often omitted altogether, thereby indicating identity between the two
38 ZDS

corresponding node variables. When a signal-flow graph contains at least one feedback
loop, as in Fig. 4.2.2, it is sometimes called a[eedback graph. By contrast, the signal-flow
graph in Fig. 4.2.3 which contains only forward paths, i.e., no loops or closed paths, is
then called a cascade graph.

t24
Fig. 4.23: Signal-flow graph with only forward paths ("cascade graph").

The corresponding set of equations is:

x2[k] = t12Xl[k]
x3[k] =t13xl[k] + t23X2[k]
x4[k] =t24x2[k] + t 34x3[k] (4.2.2)

and xl[k] represents a source node, x4[k] a sink node. Note that here a branch trans­
mittance t jk originates at node j and terminates at node k, this also being the direction,
indicated by the direction of the arrowhead, of the branch. This designation of transmittance
directivity is cOJ:?ID.on in signal-flow graph theory, but is the transpose of the designation
commonly used in a matrix equation. Thus, for example, the j-th row of the matrix equation
(4.2.3)

is, in general,

(4.2.4)

and the corresponding signal-flow graph:

xl[k] 0 - -_ _
t ..
J)

x2[k] o-----~_

xn[k] o-----~-~

Fig. 42.4: Signal-flow graph ofj-th row ofa matrix equation.


4. Signal-flow Graphs 39

Xo lie]

L...-_ _- - - ( a )----1------( bl )-----'


x4[k]

Fig. 425: Block diagram corresponding to eqs. (4.2.5).

This may appear to be a trivial point, but since it often leads to confusion, it should be
noted.

Since we are dealing with discrete-time systems, the corresponding describing set of
equations are generally difference (rather than differential) equations. The basic components
required for the realization of these systems are adders, multipliers and delay elements.
. Consider, for example, the following set of equations and the corresponding block diagram
shown in Fig. 4.2.5. Branching points, adders, multipliers and delay elements (symbol D)
should be obvious from the figure.

xI[k] = ax4[k] + xo[k]


x2[k]=XI[k]
x3[k] = b ox2[k] + b IX4[k]
x4[k] = x2[k-l]
xs[k] = x3[k]. (4.2.5)

Taking the z-transform (see chapter 3) of the equations (4.2.5) we obtain:

Xl (z) = aX4 (z) + Xo(z)


X 2(z)= XI(z)
X 3(z)= b oX2(z)+ bIX4 (Z)
X 4(z)= Z­ IX 2(z)
Xs(z)= X 3(z). (4.2.6)

The corresponding signal-flow graph is shown in Fig. 4.2.6.

Note that there is a direct correspondence between branches in the sfg and branches in
the block diagram (Fig. 4.2.5). One important difference between the two is that nodes in
the sfg represent both branching points and adders, whereas in the block diagram a special
symbol is used for adders. A branching point in the block diagram is represented in the sfg
by a node that has only one incoming branch and one or more outgoing branches. An adder
in the block diagram is represented in the sfg by a node that has two or more incoming
40 ZDS

branches. Nevertheless sfgs are equivalent to block diagrams as pictorial representations of


difference equations, but they are simpler to draw. More importantly, using sfg theory,
arbitrary relationships can be obtained, often by inspection, and useful reduction rules often
permit the complexity of a given graph to be significantly reduced. The most important
reduction rules are dealt with in the next section.

X 4 (z)

Fig. 4.2.6: Signal-flow graph corresponding to eqs. (4.2.6).

4.3 Reduction Rules


We have seen in the previous section that the signal-flow graph of a system does not
contain more information than the describing equations from which it is derived. Never­
theless, there are numerous good reasons for converting a set of system equations into an
equivalent graphical form. For one thing it permits the visualization of the signal trans­
mission paths in the system; for another, it indicates the interaction between variables within
the system and points out existing feedback loops. Finally, and perhaps most important of
all, having obtained a given graph of arbitrary complexity (depending on the equivalent
system equations from which it is derived) a set of simple rules permit its reduction to
simpler and more tractable forms by successive elimination of dependent variables, or, in
other words, by elimination of graph nodes. Thus the reduction of signal-flow graphs is
equivalent to solving a corresponding set of system equations but, due to the existence of
certain systematic rules, the reduction of a graph is often more convenient. As demonstrated
in what follows, almost every one of the reduction rules corresponds directly to an equi­
valent manipulation of linear equations in which a dependent variable is eliminated. Note that
for simplicity node variables are scalar. The transition to time sequences or z-transform
variables should be obvious.

0
Xl
..a
0
x2
..b
0
x3
x2 =axl' x3 = bX2

ab
0
Xl
• 0
x3
x3 =abxI

Fig. 4.3.1: Reduction rule 1: cascade transformation.


I
4. Slgnal-Ilow Graphs 41

Rule 1. Cascade transformation

The total transmission of a series of branches in cascade (i.e.,path) equals the product
of the individual branch transmissions. An example is given in Fig. 4.3.1 together with the
equivalent equations.

Rule 2. Parallel transformation

The total transmission of parallel branches equals the sum of the individual branch
transmissions, as shown in Fig. 4.3.2.

X2 = axl + bXl

Xl X2

a+b
0
Xl
• 0
X2
X2 = (a+ b)Xl

Fig. 432: Reduction rule 2: parallel transformation.

Rule 3. Removal ofa node

The node of origin or termination of a transmission may be removed or shifted, as


long as the transmittance between nodes of interest in the systemremains unchanged. (Also
see rule 4 below.) A node may be removed as shown in Fig. 4.3.3.

b d

c:Y:'\ a c

bd

ac
Fig. 433: Reduction rule 3: removal of a node.
42 ZDS

Rule 4. Shifting a transmittance

Starting out with the signal-flow graph shown in Fig. 4.3.4a. the starting point of a
branch may be shifted as shown in Fig. 4.3.4b. the termination of an internal branch shifted
as shown in Fig. 4.3.4c. and the termination of a branch containing a source node (X4)
shifted as shown in Fig. 4.3.4d. Notice that a new variable x3 must be introduced when the
termination of the internal branch is shifted (see Fig. 4.3.4c). A consequence of the trans­
mittance shifting rules is the "Y" transformation shown in Fig. 4.3.5a and the star-to-mesh
transformation shown in Fig. 4.3.5b.

Xl a x2 b x3 C x4
(a)

~ ~ :7
0

x2 = axl

x4 = (be + d)x2

(b)
Xl
0
a

x2
0 ..
b x3 C x4

X3 = abx. \:::7
X4 = [c + (d/b] X3 %

(c)
Xl
0 ..
a X2 b
X'3
..
C X4
0

X2 = axl \::7
x'3=[b+ (d/c]x2 ~v
X4 = cx'3

(d)

Fig. 43.4: Reduction rule 4: shifting a transmittance. (a) Original


signal-flow graph. (b) Shifting the starting point of a
branch. (c) Shifting the termination point of an
internal branch. (d) Shifting the termination point of a
branch containing a source.
4. Slgnal-flow Graphs 43

(a) x2 X2
Xl a
- Xl

X3 X3

X2 X2
(b)

b
a
Xl X3 - Xl X3
C

X4 x4

Fig. 43.5: (a) "Y" transformation. (b) Star-to-mesh transformation.

Rule 5. Path inversion

In order to invert a path originating at a source node xi and terminating at a node Xj


whose branch transmission is Jl. we replace it by a path from X j to xi having a branch
transmission lfJl. Furthermore. all other branches originally terminating at X j are shifted to
terminate at xi and their branch transmissions are multiplied by -lfJl. This is demonstrated
in Fig. 4.3.6. where the path a from x2 to Xl (Fig. 4.3.6a) is inverted (Fig. 4.3.6b). Notice
that the inversion of a path (whose starting node must. by definition, be a source) has the
effect of shifting the source from one end of the path to the other. Thus a succession of
inversions in a flow graph will successively transfer the corresponding source accordingly.
This is demonstrated in Fig. 4.3.7. where the path from Xl to Xs is inverted in four steps.
and it is shown how the source consequentlytravels from Xl to xs'

(a) (b)

Fig. 43.6: Reductionrule 5: path inversion. (a) Original signal-flow


graph. (b) Signal-flow graph with path a inverted.
44 ZDS

Source
(a) t a
o----..---Q----a.---o--.....--~ X4

d Xs

Source
(b)
1/a 1 b

Source
(c) 1/a 1/b ;
Xl X4
X3

-d/a Xs

Source
(d) l/a ;
Xl ~-.........,...---O--.........I_--O-----i4_-~ X4

--cia JSource
Xs"

(e)
l/a

Fig. 4.3.7: Stepwise inversion of a path. (a) Original graph. (b-e) successive
inversions. Note the shifting of the source through each node.
4. Signal-flow Graphs 45

Rule 6. Removal of a self loop

A self loop whose loop transmission is equal to L is removed from a node by dividing
the transmission of all other branches entering that node by (l-L). An example is shown in
Fig. 4.3.8.

c
1-b

a c
(a) (b) Xl = - X2 o f - x3
1- b 1- b
Fig. 4.3.8: Rule 6: Removal of a self loop. (a) Original signal­
flow graph with selfloop b. (b) Signal-flow graph
with self loop b removed.

Rule 7. Loop reduction

a. Single loop. The transmissionfrom an independentvariable Xi (i.e., source node)


to a dependent variable Xj (i.e., internal or sink: node) in a signal-flow graph containing only
one loop and one path equals
p..
T·=_IJ_ (4.3.1)
IJ 1-L

where Pij is the forward path transmission from Xi to Xj' and L is the transmission of the
loop. An example is shown in Fig. 4.3.9.

abc

1-bcde

X5 Pl 5
TI5 =- =­
Xl 1-L
where
Pl 5 (forward path) = abc
L (loop transmission) =bcde
(a) (b)

Fig. 4.3.9: Rule 7a: Reduction of a single loop..(a) Original


signal-flow graph.(b) Flow graph with loop reduced.
46 ZDS

b. Multiloop with nontouching loops. With a cascade of nontouching loops (i.e.,


loops possessing no common nodes) the overall transmission is the product of the individual
transmissions as given by (4.3.1), namely,
p.. p·k
To =__IJ_. J P(n-l)n
(4.3.2)
m l-L j l-L k l-Ln

Applying (4.3.2) to the example shown in Fig. 4.3. lOa we obtain

TIS = Xs =~. P3S = PIS = abed (4.3.3)


Xl 1- L I 1- L 2 1- L I - L 2 + L IL2 1- be - df + bedf

It is important to note here, that the two loops do not share a node. When they do we obtain
another result, as shown in the next case.

c. Multiloop with touching loops. For the case that the two loops do share at least
one node, as shown in Fig. 4.3. IOb, the overall transmission is given by:

(4.3.4)

Comparison of this with (4.3.3) shows that the cross term L IL2 is missing here because the
two loops of the signal-flow graph are touching at node x3' In fact the question whether the
loops of a multiloop do or do not have common nodes is very important in the evaluation of
the corresponding signal-flow graphs. Fortunately these and all other cases can be
summarized in the two general rules discussed next

(a) e f

0
Xl
~
a
m
x2 b x3
~
C
&
x4 d Xs

abed
Xs = 1- be -elf + bedf Xl

(b) e f

0
Xl
•a ~
X2 b X3 C X4
~
d
0
Xs

abed
xs= Xl
l-be-cf
Fig. 43.10: Multiloops (a) with nontouching loops, (b) with two touching loops.
4. Signal-flow Graphs 47

Rule 8. The generalmultiloop single-path reduction rul e

We consider here the multiloop case where only one path exists between a source node
xi to a dependent node Xj' whereby this path touches every loop in the signal-flow graph,
(i.e., has at least one node in common with each). Stated briefly, the rule for the reduction
of a single-path multiloop is
p..
T.. =..J!.. (4.3.5)
IJ /).

The quantity /). is known as the graph or system determinant and is evaluated as follows:

/). = 1 - (sum of all loops" taken one at a time) + (sum of products of all nontouching
loops taken two at a time) - (sum of products of all nontouching loops taken three at a
time) + ...

For a graph containing n loops, /). may be expressed mathematically as


. $
/). = [(1- L I )(I - L 2 )(I - L 3 ) · · · (1- L n ) ] , (4.3.6)

where $ denotes that after (1- L I )(I - L 2 )(I - L 3 ) ••• (1- L n ) has been expanded into a sum
of products, those products containing any touching loops are set to zero. The quantity Pij is
defined as the path from the independent variable** Xi (source) to the dependent variable Xj.

Although the definition of the graph determinant seems rather complicated, a few
examples will show how easily it can be evaluated.

EXAMPLES:

As our first example we consider the signal-flow graph in Fig. 4.3.11. Applying
(4.3.5) to obtain the overall transmission we have

T,1-7x7 _ P17
----
Xl /).

abcdef
=-------------------------~ (4.3.7a)
1- (L1 + L z + L3 + L4 + Ls) + (L1L3 + L 1L4 + L1Ls + L zL4 + LzLs + L3L s) - L1L3L s

abcdef
=-----------------------
1- (bg + ch + di + ej + fk) + (bgdi + bge] + bgfk + chej + chfk + difk) - bgdifk
(4.3.7b)

* We refer here.for brevity. to loops. wherelooptransmissions are. of course, intended.


** If Xi is not a source it can either be transformed into one by inversion and other manipulations. or else
the transmission from the realsource (e.g.• x s ) to Xi (Tsi) and to x j (Tsj) can be obtainedseparately. Then
T ij = Tsj/Tsi .
48 ZDS

g h i j k

o
a
~
Fig. 4.3.11: Multiloop single-path signal-flow graph with touching loops.

If we consider three nontouching loops, as shown in Fig. 4.3.12, the general


reduction rule (4.3.5) supplies the overall transmission directly by inspection:
_ x6 _ Pl6
TI6 - - - -
Xl A
abcde
=--:--------:-~~-----~~---
1- (L I + L 2 + L 3 ) + (L IL2 + L IL3 + L 2L3 ) ..... LIL2~
abcde
=--------------­
1- af - cg - eh + afcg +afeh + cgeh - afcgeh (4.3.8)

instead of by cascading the individual loops as was done in (4.3.3).

f g h

W-.. . .--(W)--.-----IW
a
.. ~
b c d e

Fig. 43.12: Multiloop with three nontouching loops.

As a final example we consider the multiloop signal-flow graph in Fig. 4.3.13.


Application of (4.3.5) provides the overall transmission by inspection:

T
l6
= X6 = Pl6 = abcde = abcde (4.3.9)
Xl A 1-(Lt +L 2 +L3)+L2L3 1- bcdg-cf -eh +cfeh

Notice that no significance should be given to the fact that a branch of loop L 2 is contained
within loop Lt.

a
Fig. 43.13: Multiloop single-path signal-flow graph.
4. Signal-flow Graphs 49

. Rule 9. The generalmultiloop multipatb reduction rule"

If a signal-flow graph contains more than one path from soutce to sink (or to an inter­
mediate node), as shown in Fig. 4.3.14, then the transmission may be evaluated as follows:
x6
l6 P PI P2 PI P2
Tl 6 =-=7=T I +T2 = - - + =-+-
Xl L1 l-LI l-L2 li 2 iiI

= Plli l +P2li2 = abc(l-eh)+def(l-bg)


(4.3.10)
Ii 1- bg - eh + bgeh

where

h
Fig. 4.3.14: Multipath multiloop signal-flow graph.

Note that each path Pk is modified by li k , i.e., by the determinant of that part of the graph
. not touching the kth path. This modification of Pk permits us to drop the provision required
in role 8, that the path considered "touches every loop in the signal-flow graph." We may
therefore generalize the previous results (role 8) to obtain the following formula for the
transmission of an arbitrary signal-flow graph:

• This rule is oftencalled Mason's gain formula, after S. J. Mason, who first introduced it
50 ZDS

Mason's Rule

(4.3.11)

where

Pk is the transmission of the kth path between xi and Xj' where xi must be a source, Xj
however not necessarily being a sink (i.e., intermediate nodes permitted);

II is the graph or system determinant; and

llk is the cofactor of the kth path, i.e., the determinant of the part of the graph that does not
touch, i.e., does not have any common nodes with, the kth path.

Equation (4.3.11) above represents the most general relationship defining the trans­
mission of a signal-flow graph. It can be applied directly to any flow graph without first
going through the reduction processes described earlier. Often this is the.most expedient
or
course to take. If, however, sensitivity stability studies are to be undertaken, then it will
be more useful to reduce a general flow graph into one of the essential signal-flow graphs
described later. First, however, we shall illustrate the application of (4.3.11) to some typical
examples.

EXAMPLES:

Consider the signal-flow graph shown in Fig. 4.3.15. Applying.(4.3.11) to calculate


the overall transmission we obtain
- X8 _ P181118
T1 8 (4.3.12)
---
Xl II

where

II = 1- LL i + LLiLj - L,Li'Lj'L k+... (4.3.13)


i,j i,j,k

and
LiL i is the sum of all loop transmissions;
LiLj is the product of the loop transmissions of any two loops that do not have a node or
a branch in common;
L' .LiLJ~ is the sum of all such products;
1,J

Li'Lj'Lk is the product of the loop transmission of any three loops that do not have any
branches or nodes in common; and so on.
4. Slgnal-flow Graphs 51

i
Fig. 4.3.15: Multiloop signal-flow graph.

For a complex graph such as that shown in Fig.4.3.l5 it is best to find the sums and
products of A in a systematic way. Thus to find Li
L, we start out with branch a and list all
loops containing a, then go on to branch b and take all loops containing b that have not
already been listed, and so on. Thus

LiL, = bch + cdek + cdefl + defgi + efj. (4.3.14)

Next we find Li .LiLj, which is the sum of the products of the loop transmissions taken
two at a time, omftting all those that have any node or any branch in common. To evaluate
~ .. LiLj~' the list in ~
L,1.j ~ .L,; is bch. The other terms
L,1.L, is examined.The first term in L,1
are scanned to detect those that do not contain b. c, or h. The first term satisfying this
condition is defgi, but on examining the graph we find that it has a node in common with
bch and therefore cannot be included. However, the last term efj has no branches or nodes
in common with bch, and therefore bchefj appears in Li .LiLj. Next we note the second
term in LiLi , i.e., cdek, and examine as above. In this wJ
y we find that

LLiLj = (bch)(efj). (4.3.15)


i.j

Since ~. ~ .. kLi'Vj'!Lk to exist. Thus


,LiL'j' contains only one term it is impossible for L,1.j.
L,1,j

A = 1- I,Li + I,LiLj = 1-(bch + cdek + cdefl+ defgi +efj)+ bchefj. (4.3.16)


i.j

Continuing with the evaluation of PI8 and A I8 we obtain


PI8 = abcdefg. (4.3.17)

Since each loop in I,.1 L i has at least one branch present in PI8 we have
.

AI8 = 1 (4.3.18)

and
(4.3.19)
S2 ZDS

The fact that ~IS =1 is clear from inspection of the signal-flow graph, which is
actually a multiloop graph with a single path. Naturally (4.3.11) of rule 9 is general enough
to include the analysis of single-path multiloops as well. Substituting the expressions
obtained above into (4.3.12) the overall transmission TIS is obtained.

To illustrate the application of (4.3.11) to genuine mu1tipath multiloops let us now


consider the signal-flow graph shown in Fig 4.3.16. With (4.3.11) we have

LPk~k
T = x2
l2
=k = PI~1 +P2~2 =PI(1-L2)+P2 = a(l-ef)+cd (4.3.20)
xl ~ ~ 1~LI-L2 1-db-ef

Note that ~2 equals unity, since P2 =cd touches every loop in the graph.

Another multipath multiloop is shown in Fig. 4.3.17. Applying (4.3.11) the following
transmissions are obtained by inspection:

T = x2 = PI~1 + P2~2 + P3~3 = a(l- cg) + de + dcf (4.3.21a)


l2
xl ~ 1- be- bcf -cg

Tn = x3 = P4~4 +P5~5 = ab+d (4.3.21b)


xl ~ 1- be- bcf -cg

T
14
= x4 = P6~6 + P7~7 = abc + dc (4.3.21c)
xl ~ 1- be - bcf - cg

Notice that ~ (the determinant of the network) is defined for a given graph, irrespective of
the transmission required, and therefore need be evaluated only once.

d f

c
Fig. 43.16: Multipath multiloop.
4. Signal-flew Graphs 53

a
Xl O----I~--c:>_-......- - _ c ) _ - - - - - _ O x4

d g
Fig. 43.17: Multipath multiloop.

4.4 The Essential Signal-flow Graph


It will be apparent from the preceding sections that the complexity of a signal-flow
graph is the result of the complexity of the particular set of equations used to describe a
given system rather than an indication of the system complexity itself. We need only
consider the two flow graphs shown in Fig. 4.4.1 to see that the number of feedback loops
is no indication of the complexity of a system. The two graphs represent the same system
and an equivalent set of equations, yet Fig. 4.4.1a exhibits two feedback loops, Fig. 4.4.1b
only one. The order (or essential complexity) of a system depends on the number of
independent feedback loops, where the term independent" means that the loops cannot be
II

combined by simple addition.

(a) c (b)

1 1 1

a
..
1
0

D
0
Xl x2 Xl X2

b b+c
Fig. 4.4.1: Two signal-flow graphs of different complexity representing the equation
x2/xl = aJ[1- a(b + c)]. (a) Two feedback loops. (b) Single feedback loop.

The concept of order may be further clarified by defining essential nodes of a signal­
flow graph, i.e., those nodes which must be removed in order to open all feedback loops.
The removal of a node must not be confused with the elimination of a node according to rule
7. It must be interpreted here as an equating of the value of the node variable to zero or,
equivalently, as a deletion of all branches leaving the node. Then we can state that theorder
of a signal-flow graph corresponds to the number ofits essential nodes, i.e., to the number
of nodes which must be removed in order to open all feedback loops. Examples of signal­
flow graphs of orders one, two, and three are shown in Fig. 4.4.2.
54 ZDS

(a) t 32 t 22
(b)

t 14 4 1 t 13 3
0
1
., 6:2\ ..
2 3 4 5
.0
6

Fig. 4.42: Essential signal-flow graphs of varying order.


(a) Order one. (b) Order two. (c) Order three.

In a complex signal-flow graph with order greater than 2, evaluation of the order is'
often a difficult task, requiring a trial-and-error analysis to determine which nodes form the
essential set. However, in general it is not too important to be able to ascertain the exact
order of a system. If the order determined is inaccurately high, the analysis is not basically
affected, although it may be more complicated than it would have been if it had been
recognized that the graph possesses a lower order. Fortunately, in the great majority of
feedback systems encountered in practice, the order is less than or equal to 2.

A fundamental characteristic of an essential node is that its elimination (in contrast to


its removal) involves division of all branches entering it by the one-minus-loop-gain term.
All other nodes can be eliminated by a process of addition and multiplication of
transmittances of the original graph.'" As a consequence, if the transmittances in the original
graph are stableti.e., without poles on, or outside, the unit circle in the z-plane, or in the

'" In terms of network equations. the reduction to an essential signal-flow graph corresponds to the
elimination of variables in the original equations by direct substitution. No division of coefficients is
necessary.
4. Signal-flow Graphs ss

right-half plane in the s-domain), then all essential transmittances are also stable," For the
purposes of stability and sensitivity analysis, the simpler essential flow graph should be
usedrather than the more complex multiloop signal-flow graph drawn directlyfrom a given
system.

4.4.1 The Essential Signal-flow Graph of Order One

In what follows, we shall first show that the four basic transmittances of an essential
signal-flow graph of order one can be derivedfrom a multiloop graph in one steprather than
in the many steps required by the reduction rules described earlier. Consider the essential
signal-flow graph shown in Fig. 4.4.3. Besides the input and output nodes an essential
signal-flow graph contains essential nodes equal in numberto the orderof the graph. In this
case the essential signal-flow graph has the single essential node Ex besides the input and
output nodes Ei and Eo. Furthermore, in an essential graph of order one, there are only
four possible transmittances tio' tix' t xo and t xx • The determination of an essential signal­
flow graph therefore reducesto an evaluation of thesefour transmittances. That these can be
obtained directly by inspection of the original signal-flow graph will now be illustrated by an
example.

Consider the signal-flow graph shown in Fig. 4.4.4. Notice that we can immediately
identify the node x7 as what must be the essential node. Our assignment is now to find the
essential transmittances of Fig. 4.4.3 in terms of the branch transmittances of Fig. 4.4.4.

The essentialtransmission tio measures the total transmission from input to output without
passingthrough node Ex. By inspection of Fig. 4.4.4 there is only one such path, namely
the horizontal one from input to output; any downward digression immediately leads to Ex.
Hence
tio = abcde.

Fig. 4.4.3: Essential signal-flow graph of order one.

* Thisis notnecessarily true if, say, a second-order signal-flow graph is reduced to one of fast order.
56 ZDS

Fig. 4.4.4: Signal-flow graph of order one.

The total transmission tix from the input xl to Ex, without departing from Ex' involves two
parallel paths. By inspection of Fig. 4.4.4 and comparison with Fig. 4.4.3 we obtain

tix = ab(h + cdk). (4.4.2)

The transmittance t xo from the essential node Ex to the output without re-entering the node
Ex is the sum of the four separate transmittances representing the four possible paths of
departure from Ex:
t xo = fbcde + gcde + ide + je. (4.4.3)

Finally t xx can be calculated by considering each of the four paths leaving and re-entering
Ex:
t xx = tb(h + cdk) + g(h + cdk) + idk + jk , (4.4.4)

Notice that a number of terms in each of the last two equations can be combined. As a
general procedure, however, it is convenient first to consider the paths leaving each node
individually.

Two additional examples should help to illustrate the reduction of a general signal­
flow graph to its essential form. Consider first the graph in Fig. 4.4.5a. Despite the
presence of three feedback loops in this graph, its order is only unity, since the removal of
node 3 opens all the feedback loops. The essential node of the essential signal-flow graph
must therefore be node 3, and it will have the form of the essential graph in Fig. 4.4.5b. By
inspection of Fig. 4.4.5a the four basic transmittances are:
tIS (leakage path, i.e., all paths from input to output not entering 3) =ah
t13 (all paths from input which enter node 3) = ab
t35 (all paths to output, leaving node 3) =cd + eh + cgh
t33 (all self loops of node 3) =eb + cf+ cgb.
4. Signal-Ilow Graphs 57

Once the transmittances of any essential signal-flow graph of order one have been
obtained, the transfer function follows directly from inspection of Fig. 4.4.3:

(4.4.5)

Multiplying out we obtain

(4.4.6)

Equations (4.4.5) and (4.4.6) give the transfer function of a typical system with feedback.

1 a 2 3 c 4 5 1 5
(a) (b)

Fig. 4.45: Signal-flow graph of order one. (a) Original graph.


(b) Equivalent essential graph.

4.5 Including Analog Gain Devices


In the case of sampled-data systems, e.g., switched-capacitor or switched-current
filters (see Chapter 12, 6th semester), discrete-time, switched networks consisting of
switches and capacitors are combined with analog gain devices such as operational
amplifiers (opamps) or operational transconductance amplifiers (OTAs). As with most other
filter types (e.g., digital filters, active RC filters), signal-flow graphs are useful not only for
the analysis, but also for the synthesis of such networks. Consequently we must now
briefly consider the signal-flow graph representation of analog active devices and their
combination with switched networks.

Consider the representative switched-capacitor network topology shown in Fig. 4.5.1.

We assume a perfect voltage source at the input to the network and, due to the high gain of
the opamp, a virtual ground at the opamp input. Assuming z-transformed transmittances and
signals, the basic circuit of Fig. 4.5.1 can be represented by the diagram in Fig. 4.5.2,
where the Zi (z) are time-dependent, discrete-time transfer-impedance functions.
58 ZDS

~/
-u­c

Fig. 45.1: Symbolic representation of typical switched-capacitor


circuit.

I
Z,in ~oo

Fig. 45.2: Switched capacitor inverter circuit in terms of z-trans­


formed impedances.

In order to draw a signal-flow graph of a circuit (continuous- or discrete-time) con­


taining an opamp, we first require the sfg of the opamp itself. An opamp with finite gain A
can be represented as in Fig. 4.5.3a or b. A simple method of modelling infinite gain with
finite (unity) gain transmittances is shown in Fig. 4.5.3c.

As pointed out above, the sfg representation of a system or circuit is not unique. Thus,
for example, it will depend on the set of equations used to describe the system or circuit.
This can be shown even for the simple sampled-data opamp inverter circuit of Fig. 4.5.2.
For the set of equations:

1) 11 = (VI - V2)/ZI
2) V2=-V3/A (4.5.1)
3) V3 = V2 - Z211

we obtain the sfg of Fig. 4.5.4.


4. Signal-flow Graphs 59

Qparnp SEQ

V-I
V-1 VO=A(Vn-\'i)
Vo
Vn
Vn

V-I
A
a) Differentialinput, Vo
fmite gain A
Vn

Vi
Vo ViO •
-A
OVo

Vn=O

b) Single-endednegative input,
fmite gain A

V-I V-1
Vo
Vn
Vn
c) Infinite gain
Fig. 453: Sfg representation of a finite and infinite gain opamp.

Fig. 45.4: Sfg of circuit in Fig. 4.5.2 according to eqs. (4.5.1).

1:.{ IJ,
_. .","

,', \
._~---~--_._---

/ -!;, -!-L~
60 ZDS

For a different formulation of the same equations, namely

1) V2 = VI - ZI 11
2) V3 =-AV2 (4.5.2)
3) 11 =(V2 - V3)/Z2

we obtain the sfg of Fig. 4.5.5.

1
Fig. 455: Sfg of circuit in Fig. 4.5.2 according to eqs. (4.5.2).

Note, in this example, how the new variable (V2 - V3) can be accounted for. Naturally,
solving either the sfg of Fig. 4.5.4 or 4.5.5 for the input-ouput relationship using, say,
Mason's formula, results in the same transfer function, namely:

(4.5.3)

In continuous-time opamp circuits this is the transfer function of an inverting amplifier.

Another approach in sfg analysis is to postulate a physically reasonable signal-flow


graph and then to consistently derive the individual transmittances, taking the physical nature
of the system or network into account. In the case of the circuit in Fig. 4.5.2 the sfg shown
in Fig. 4.5.6 is a reasonable configuration.

-A
Fig. 45.6: Postulated sfg for circuit of Fig. 4.5.2.

From this sfg we obtain the transmittances t 12 and t32 as follows:

V2 = t12VI + t32V3· (4.5.4)


4. Signal-flow Graphs 61

Thus:

(4.5.5)

and from Fig. 4.5.2 it follows that:

t -
Z 2 (4.5.6)
12 - Zl +Z2

The reader will appreciate that this is nothing but the application of the superposition
principle to the linear circuit of Fig. 4.5.2 in which VI and V3 are assumed to be outputs of
ideal voltage sources, which, in practice, will be more or less the case. Using Mason's rule
we obtain - as we must - the transfer function given by eq. (4.5.3). Finally, assuming an
infinite-gain opamp, and thus virtual ground at its input, and using the signal-flow graph of
Fig. 4.5.3c, we obtain for the circuit of Fig. 4.5.2 the sfg of Fig. 4.5.7. This, of course,
directly gives the transfer function for infinite gain, namely

(4.5.7)

Incidentally, since the opamp gain is infinite, the polarity and value of the path between 12
and V3 is arbitrary as long as it is finite and not equal to zero. We use -1 more for intuitive
than for any other reason.

Fig. 45.7: Sfg for circuit of Fig. 4.5.2 with an infinite-gain opamp.

4.6 Inversion and Transposition


In our Rule 5 in Section 4.3, we introduced the concept of path inversion from a
source node and illustrated how a step-wise inversion of a whole sfg results in an "inverted"
sfg. It is important to distinguish between the inversion and the transposition of a signal­
flow graph, because, inspite of the similarities, the outcome is quite different Consider the
sfg in Fig. 4.6.1a, whose transfer function is given by
X4 abc
T14 = - =- - - - (4.6.1)
Xl 1- bee-cd
62 ZDS

e
a) original sfg:

b) inverted sfg:
-%

e
c) transposed sfg:

Fig. 4.6.1: Inversion and transposition of a sfg.

Going through the step-by-step inversion described in section 4.3 (Rule 5) we obtain the
.inverted sfg of Fig. 4.6.1 b. Typically a non-causal representation of the original system or
network has resulted, in that the driving signal xl becomes the sink and the output signal x4
the source. Furthermore, as also generally occurs after inversion, the resulting sfg contains
only forward, and no feedback paths. The resulting non-causal transfer function is obtained
as the sum of all paths from the new source x4 to sink xl' i.e.

(4.6.2)

Thus inversion of a sfg results in the inverted transfer function; it is simply an alternative
(namely non-causal) representation of the original graph * .

* This "non-causal" representation of an inverted sfg has been used consistently to treat feedback systems
without requiring feedback loops, in the book by F. D. Waldhauer: "Feedback", John Wiley, 1982,and in:
"Anticausal analysis of Feedback Amplifiers", Bell System Techn. Journal, Vol. 56, No.8, pp. 1337-1386,
1977 by the same author.
4. Signal-flow Graphs 63

Now let us look at the definition of a transposed sfg. Briefly, it consists of three steps,
namely:
(i) reverse the direction of all branch transmittances, but retain the transmittance
value
(ii) flip around the resulting sfg
(iii) interchange the designation of input and output nodes.

This is shown for the sfg of Fig. 4.6.1a in Fig. 4.6.2.

a) original sfg:

T14
abe
1- bee-cd
0
xl
~

a
C 2=\
X2 b X3 C X4

C 2=\
b) reverse branch
directions:

0 ~

xl a X2 b X3 C X4

c) flip around sfg:

d) interchange input!
output nodes:

Fig. 4.62: Transposition of a sfg.

The resulting topology, shown also in Fig. 4.6.1c is the so-called transposed version
of the original sfg. Its transfer function is identical with that of the original sfg given by eq.
64 ZDS

(4.6.1), but its topology is different. As can be seen from the two corresponding block dia­
grams in Fig. 4.6.3, this may have significant practical consequences in terms of rounding
errrors, required bit lengths, etc. Thus for example the configuration of Fig. 4.6.3a (which
corresponds to that of Fig. 4.6.1a) requires two adders, while that of Fig. 4.6.3b (see Fig.
4.6.1c) requires only one. Transposition is therefore an important method for the derivation
of alternative practical topologies with identical transfer functions.

a) r------( e

r------( d }----1

b)

Fig. 4.6.3~· Block diagram of systems corresponding to a) sfg in


Fig.4.6.1a b) sfg in Fig. 4.6.1c.

4.7 Scaling
Very often the signal level at a node within a system or network must be adjusted e.g.
to prevent overdriving or to improve the dynamic range of the comprehensive system. The
process by which such an adjustment can be carried out, without changing the input-output
behaviour of the system, is by scaling, and this in turn, is readily performed on the signal­
flow graph representing the signal or network.

We first consider the cutset of a sfg. A cutset is a minimal set of branches which,
when removed, will separate the graph into exactly two parts. The cutset will divide the
nodes of the graph into two sets Na and N b- Without loss of generality we take Nato be
the set containing the input node xo. The scaling operation then consists of multiplying the
weight of each branch in the cutset by a factor A. or 1/A.. If a branch is directed towards N b'
then its weight is multiplied by A., if it is directed away from N b its weight is multiplied by
1/A.. As a result, the signal level at the nodes in the set N b will be scaled by a factor A.
relative to the signal level at the input of the system or network. As an example, consider the
sfg shown in Fig. 4.7.1, where the cutset {01.a2.a3.03} is indicated by the broken line.
Since the cutset branches O}o a2. and a3 are directed towards the set of nodes N b • their
weights are multiplied by A., and since the branch 0 3 is directed away from N b , its weight
4. Signal-flow Graphs 65

is multiplied by 1/A.. As a result, the signal levels at nodes x2 and x3 have been scaled by
the factor A.. It can be shown, with the help of Mason's role, that scaling does not affect the
transfer function of the system, unless the cutset separates the input node (e.g. xo) from the
output node (e.g. X4), i.e. when the output node is in the set N b • If this is the case, the
transfer function is multiplied by the factor A..

Xo Go Xl A.G I ', X2 G2 X3 G3 X4
.•
'" Nb ,-­
..............
I
j

A.

Fig. 4.7.1: Graph, separated by cutset {Gl>a2,a3,G3} into graph


x, ={GO,al} and N b ={G2}.
The scaling operation may be applied, in turn, to any number of different cutsets of a
sfg, and the set of nodes of N b may consist of only one node. Furthermore, A. may be a
constant, as it will be for signal-level scaling, a function of frequency, in which case
subsections of the graph take on different characteristics, or simply -I, in which case
inverting and non-inverting branches are distributed in some desired way. The latter case is
demonstrated in Fig. 4.7.2, in which three inverting branches (Fig. 4.7.2a) become positive
multipliers and the inverters become part of the forward path (Fig. 4.7.2b).

-1 -1

a)
Xo gl g4 Xs

-1
+1 +1

'" ,
..• b)
Xo gl 1- g4 Xs

".
'" ........... , .. , ,.­
+1

Fig. 4.72: Scaling by (-1) in order to distribute inverting and


non-inverting branches in a defined way.
66 ZDS

When usedto maximize the dynamic rangeof a system, the factor A. will be a positive
constant Typically, the scaling operation will then be used a numberof times to adjust in­
dependently the signal levels at each criticalnodeof the system or networkin question. By
scaling the maximum signallevelsto be equalat each node, the maximum possible dynamic
range canbe attained. '

Finally, it is interesting to note already here that it can be shown that therather power­
ful scaling operation described in this section, which can be used, among other things, to
maximize dynamic range, eliminate inverters and change gain and signal levels within a
system, is independent of the systemtopology and has no affect on the differential or [mite
difference sensitivity of the system transfer function with respect to changesin the signal­
flow graph branch transmittances. More will be said about system sensitivity in chapter 12,
section 12.8 ("Digital SignalProcessing andFiltering" course,6th semester).

You might also like