Motorola DSP96002 User Manual page 593

32-bit digital signal processor
Table of Contents

Advertisement

B.1.40.2
64 Bit Block Transfer
A more efficient implementation of BITBLT may be performed by transferring 64 bits at a time. Thus, the
value of COUNT specifies the number of 64 bit transfers (two 32 bit words).
64 Bit Block Transfer
org
source ds
dest
ds
offset ds
count
ds
org
p:$50
move
move
move
sub
move
move
lsl
move
move
move
move
move
do
lsr
lsl
or
lsr
lsl
or
bitblt
move
lsr
lsr
lsl
or
move
Where N represents 64 bits transferred. At a 13.5 MIPS, a total of (13.5/6) * 64 = 144 MBits/Second transfer
rate is possible.
B-74
BITBLT
x:0
1
;source address
1
;destination address
1
;bit number start (0-31)
1
;number of 64 bit source words
x:offset,d0.l ;get output bit position
x:offset,d0.l ;get output bit position
#32,d1.l
d0,d1
x:source,r0
x:dest,r1
d1.l,d1.h
d1,d4
d0.l,d0.h
x:count,n0
(r1)-
y:(r1)+,d6.l
y:(r1)-,d4.l
y:(r0)+,d5.l
n0,bitblt
d1,d4
d6.l,y:(r1)+
d0,d5
d5.l,d3.l
d4,d5
y:(r0)+,d6.l
d1,d3
d5.l,y:(r1)+
d0,d6
d6.l,d4.l
d3,d6
y:(r0)+,d5.l
d6.l,y:(r1)+
d1,d4
y:(r1),d5.l
d0,d5
d0,d5
d4,d5
d5.l,y:(r1)
DSP96002 USER'S MANUAL
;get 32
;32-offset, get source address
;point to destination address
;move shift factor
;shift bits, move shift factor
;get source word count
;backup pointer
;init pipe
;get first bits of dest
;get source bits
;do transfer
;shift old bits, get dest bits
;shift dest bits
;shift dest bits back
;part of dest with source bits
;save new destination bits
Program
ICycles
Words
2
2
2
2
2
2
2
2
2
2
1
1
1
1
2
2
1
1
1
1
1
1
1
1
2
3
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
---
---
Totals:
32
6N+27
MOTOROLA

Advertisement

Table of Contents
loading

Table of Contents