DSP Slide 1 Graph theory x y y = x x y a y = a x x z y y = x and z = x xz y z = x + y z = x - y xz y...

13
DSP Slide 1 Graph theory Graph theory x y y = x x y a y = a x x z y y = x and z = x x z y z = x + y z = x - y x z y - y = z -1 x x y z - 1 DSP graphs are made up of points directed lines special symbols points = signals all the rest = signal processing systems splitter = tee connector unit delay adde r identity = assignment gai n

Transcript of DSP Slide 1 Graph theory x y y = x x y a y = a x x z y y = x and z = x xz y z = x + y z = x - y xz y...

DSP Slide 1

Graph theoryGraph theory

x y y = x

x ya

y = a x

x

z

yy = x

and z = x

x z

yz = x + y

z = x - y

x z

y

-y = z-1 x

x yz-1

DSP graphs are made up of • points • directed lines• special symbolspoints = signalsall the rest = signal processing systems

splitter = tee connector

unit delay

adder

identity = assignment

gain

DSP Slide 2

Why is graph theory useful ?Why is graph theory useful ?

DSP graphs capture both• algorithms and• data structures

Their meaning is purely topological

Graphical mechanisms for simplifying (lowering MIPS or

memory)

Four basic transformations1. Topological (move points around)2. Commutation of filters (any two filters commute!)3. Unification of identical signals (points) and removal of redundant branches4. Transposition theorem

DSP Slide 3

Basic blocksBasic blocks

yn = a0 xn + a1 xn-1

yn = xn - xn-1

Explicitly draw point only when need to store value (memory point)

DSP Slide 4

Basic MA blocksBasic MA blocks

yn = a0 xn + a1 xn-1

DSP Slide 5

General MAGeneral MA

we would like to build

but we only have 2-input adders !

tapped delay line = FIFO

L

l

lnln xay0

DSP Slide 6

General MA (cont.)General MA (cont.)

Instead we can build

We still have tapped delay line = FIFO (data structure)

But now iteratively use basic block D (algorithm)

L

l

lnln xay0

MACs

DSP Slide 7

General MA (cont.)General MA (cont.)

There are other ways to implement the same MA

still have same FIFO (data structure)

but now basic block is A (algorithm)

Computation is performed in reverse

There are yet other ways (based on other blocks)

L

l

lnln xay0

FIFO MACs

DSP Slide 8

Basic AR blockBasic AR block

One way to implement

Note the feedback

Whenever there is a loop, there is recursion (AR)

There are 4 basic blocks here too

1 nnn byxy

DSP Slide 9

General AR filtersGeneral AR filters

M

m

mnmnn ybxy0

There are many ways to implement the general AR

Note the FIFO on outputsand iteration on basic blocks

DSP Slide 10

ARMA filtersARMA filters

M

m

mnm

L

l

lnln ybxay01

The straightforward implementation :

Note L+M memory points

Now we can demonstrate

how to use graph theory

to save memory

DSP Slide 11

ARMA filters (cont.)ARMA filters (cont.)

M

m

mnm

L

l

lnln ybxay01

We can commute

the MA and AR filters

(any 2 filters commute)

Now that there are points representing

the same signal !

Assume that L=M (w.o.l.g.)

DSP Slide 12

ARMA filters ARMA filters (cont.)(cont.)

M

m

mnm

L

l

lnln ybxay01

So we can use only one point

And eliminate redundant branches

DSP Slide 13

Allowed transformationsAllowed transformations

1. Geometrical transformations that do no change topology

2. Commutation of any two filters

3. Unification of identical points (signals)

and elimination of redundant branches

4. Transposition theorem exchange input and output reverse all arrows replace adders with splitters replace splitters with adders