dsp56800 Freescale Semiconductor, Inc, dsp56800 Datasheet - Page 407

no-image

dsp56800

Manufacturer Part Number
dsp56800
Description
16-bit Digital Signal Controllers
Manufacturer
Freescale Semiconductor, Inc
Datasheet
Freescale Semiconductor
; R1 now points to {location(B_Vec6)-1}
EndDO1_6:
;
;
; R1 now points to Twiddle factors (by selecting appropriate locations for vectors)
opt
MOVE
MOVE
MOVE
MOVEI #B_Vec6,R3
MOVEI #ToDummyLOC,N
MOVEI #N_BFlies,LC
MOVE
MOVE
MOVE
MOVEI
DO
PUSH
MAC
MACR
MOVE
MOVE
ASL
SUB
MOVE
MAC
POP
MACR
ASL
SUB
MOVE
cc
#Twiddle_fac,R1
#A_Vec6,R0
R0,R2
LC,EndDO1_6
X0
Y0,X0,B
-Y1,X0,B
A
B,A
Y0,X0,B
X0
Y1,X0,B
A
B,A
m
X:(R1)+,Y0
X:(R0),B
X:(R1)+N,Y1
#0,N
X:(R3)+,X0
A,X:(R1)+
X:(R0)+,A
B,X:(R2)+
X:(R0)+N,B
A,X:(R1)+
X:(R0)+,A
X:(R3)+,X0
B,X:(R2)+
X:(R0)+N,B
A,X:(R1)+
DSC Benchmarks
X:(R3)+,X0 ; 1
Total:
; 2
; 2
; 1
; 2
; 2
; 2
; 1
; 1
; 1
;
; 2
; 2
; 1
; 1
; 1
;
; 1
; 1
; 1
; 1
; 1
; 1
; 1
;
; 1
; 1
;
;
;
; 1
__________
32
2
2
1
2
2
2
1
1
1
1
3
2
1
1
1
1
1
1
1
1
1
1
1
1
1
14N+19
Twiddle Fac address
A_vec start address
X {xr,xi} strt addr
B_vec start address
to set R1=loc{B}-1
for loop count
Y0=wr
B=ar
Y1=wi
for emulating X:(Rn)
repeat butterflies
save br
B=ar+wrbr
B=ar+wrbr+wibi=Xr
STORE Yi fr previous
(1st is dummy store)
A=ar R0 points to ai
A=2ar
A=2ar-Xr=Yr
STORE Yr
B=ai+wrbi
restore br
B=ai+wrbi+wibr=Xi
X0=(next)br
A=2ai
A=2ai-Xi=Yi
b=(next)ar
R0 points (next)ar
end butterfly
STORE last Yi
addressing mode
X0=br
R1=(loc)B-1
STORE Xr
STORE Xi
X0=bi
A=ai
B=ai
B-11

Related parts for dsp56800