B-6 DSP96002 USER’S MANUAL MOTOROLA

B.1.9 Complex Update

dr + jdi = ( cr + jci ) + ( ar + jai ) * ( br + jbi )
dr = cr + ar * br - ai * bi R0

a R4

b R1

c R

d
di = ci + ar * bi + ai * br

Program ICycles
Words

move y:(r1),d1.s 1 1
move x:(r0),d5.s y:(r4),d6.s 1 1
fmpy.s d6,d5,d2 x:(r4),d4.s y:(r0),d7.s 1 1
fmpy d4,d7,d2 fadd.s d2,d1 x:(r1),d0.s 1 1
fmpy d4,d5,d2 fadd.s d2,d1 1 1
fmpy d6,d7,d2 fadd.s d2,d0 d1.s,y:(r2) 1 1
fsub.s d2,d0 1 1
move d0.s,x:(r2) 1 1
--- ---

Totals:

8 8
(7 7)

B.1.10 N Complex Updates

dr(I)+jdi(I) = {cr(I)+jci(I)}+{ar(I)+jai(I)}*{br(I)+jbi(I)}, I=1,...,N
dr(I) = cr(I) + ar(I) * br(I) - ai(I) * bi(I)
di(I) = ci(I) + ar(I) * bi(I) + ai(I) * br(I)
D5 = ar D4 = ai D6 = br D7 = bi

X Memory Organization Y Memory Organization

. .
ci2 di2
cr2 dr2
ci1 di1
R1

cr1 CADDRR5

dr1 DADDR
. .
. .
ai2 bi2
ar2 br2
R0

ai1 bi1
ar1 AADDR R4

br1 BADDR