Motorola DSP96002 User Manual page 592

32-bit digital signal processor
Table of Contents

Advertisement

B.1.40.1 32 Bit Block Transfer
32 Bit Block Transfer
org
source ds
dest
ds
offset ds
count
ds
org
p:$50
move
move
sub
d0,d1
move
move
move
lsl
d1,d4
move
do
n0,bitblt
lsr
d1,d4
lsl
d0,d5
or
d4,d5
move
bitblt
lsr
d1,d4
lsr
d0,d5
lsl
d0,d5
or
d4,d5
move
Where N represents 32 bits transferred. At a 13.5 MIPS, a total of (13.5/4) * 32 = 108 MBits/Second transfer
rate is possible.
MOTOROLA
BITBLT
x:0
1
;source address
1
;destination address
1
;bit number start (0-31)
1
;number of 32 bit source words
x:offset,d0.l ;get output bit position
#32,d1.l
x:source,r0
x:dest,r1
d1.l,d1.h
y:(r1),d4.l
d0.l,d0.h
x:count,n0
y:(r0)+,d5.l
d5.l,d3.l
d3.l,d4.l
d5.l,y:(r1)+
y:(r1),d5.l
d5.l,y:(r1)
DSP96002 USER'S MANUAL
;get 32
;32-offset, point to source
;point to destination address
;move shift factor
;get first bits of dest
;shift bits, move shift fact
;get source word count
;do transfer
;shift old bits, get source bits 1
;shift new bits, save new bits
;merge bits, save new as old bit 1
;save new dest field
;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
1
1
2
2
2
2
1
1
1
1
1
1
2
2
2
3
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
---
---
Totals: 24
4N+20
B-73

Advertisement

Table of Contents
loading

Table of Contents