Professional Documents
Culture Documents
Signal Flow Graphs
Signal Flow Graphs
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.
a d
Xs
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.
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").
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)
xl[k] 0 - -_ _
t ..
J)
x2[k] o-----~_
xn[k] o-----~-~
Xo lie]
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.
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
X 4 (z)
0
Xl
..a
0
x2
..b
0
x3
x2 =axl' x3 = bX2
ab
0
Xl
• 0
x3
x3 =abxI
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.
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
b d
c:Y:'\ a c
bd
ac
Fig. 433: Reduction rule 3: removal of a node.
42 ZDS
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)
(a) x2 X2
Xl a
- Xl
X3 X3
X2 X2
(b)
b
a
Xl X3 - Xl X3
C
X4 x4
(a) (b)
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
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.
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)
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
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) + ...
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)
g h i j k
o
a
~
Fig. 4.3.11: Multiloop single-path signal-flow graph with touching loops.
f g h
W-.. . .--(W)--.-----IW
a
.. ~
b c d e
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
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
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);
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:
where
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
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
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.
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
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.
(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
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.
'" 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.
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.
* Thisis notnecessarily true if, say, a second-order signal-flow graph is reduced to one of fast order.
56 ZDS
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
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)
(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)
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
~/
-uc
I
Z,in ~oo
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
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.
1:.{ IJ,
_. .","
,', \
._~---~--_._---
/ -!;, -!-L~
60 ZDS
1) V2 = VI - ZI 11
2) V3 =-AV2 (4.5.2)
3) 11 =(V2 - V3)/Z2
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)
-A
Fig. 45.6: Postulated sfg for circuit of Fig. 4.5.2.
Thus:
(4.5.5)
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.
e
a) original sfg:
b) inverted sfg:
-%
e
c) transposed 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.
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
d) interchange input!
output nodes:
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)
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.
-1 -1
a)
Xo gl g4 Xs
-1
+1 +1
'" ,
..• b)
Xo gl 1- g4 Xs
".
'" ........... , .. , ,.
+1
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).