Motorola DSP96002 User Manual page 648

32-bit digital signal processor
Table of Contents

Advertisement

;amatrix
dc A(1,1),A(1,2),...,A(1,N),A(2,1),A(2,2),...,A(2,N), ...
;
;Matrix A is in X memory, while matrices B and C are in Y memory.
;Since modulo N**2 addressing is used for all matrices, the first
;k least significant bits of the address of the beginning of any
;matrix storage area must be equal to zero, where 2**k >= N**2.
;
;This routine takes
;
;
;
;
page 132,60,1,1
N
equ 4
N_sqr
equ N*N
amatrix
dc .5,.6,.7,.8
dc .9,.1,.2,.3
dc .4,.5,.6,.7
org y:$0
bmatrix
dc .5,1.0,.5,.5
dc .5,1.0,.5,.5
dc .5,1.0,.5,.5
org y:$20
cmatrix
org p:$100
move #amatrix,r0
move #N,n4
move #N_sqr-1,m0
move #bmatrix,r4
move #cmatrix+N_sqr-1,r5
move m0,m4
move n4,n5
move m0,m5
fclr d1 x:(r0)+,d4.s
fclr d5 y:(r4)+n4,d8.s
do
#4,endall
fmpy.s d4,d8,d3
fmpy d4,d0,d3 fadd.s d3,d1 x:(r0)+,d4.s y:(r4)+n4,d6.s 1
fmpy d4,d6,d3 fadd.s d3,d1 x:(r0)+,d4.s y:(r4)+n4,d7.s 1
fmpy d4,d7,d3 fadd.s d3,d1 x:(r0)+,d4.s y:(r5)+,d2.s
MOTOROLA
15 + 4*18 = 87 instruction cycles to complete.
org x:$0
dc .1,.2,.3,.4
dc .5,1.0,.5,.5
ds N_sqr
; modulo-N addressing
DSP96002 USER'S MANUAL
x:(r0)+,d4.s y:(r4)+n4,d0.s 1
;junk into d2.s
Program ICycles
Words
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
3
1
1
1
1
1
B-129

Advertisement

Table of Contents
loading

Table of Contents