Motorola DSP56156 Manual page 269

Table of Contents

Advertisement

MOVE
MOVE
ROL
BCC
ORI
MOVE
MOVE
MOVE
BFSET
;
INLOOP MOVE
DO
BFTSTH
BCC
;
; This is the second routine. It loads from the Host Interface pins or from the SSI0 pins.
;
BLC
; Bootstrap byte per byte from SSI0
;
_SSILD
DO #2,_LOOP2
_SSIWT BFTSTL
BCS
MOVEP
ASR4
ASR4
BRA
;
; This is the first routine. Its loads from external P: memory
;
_MEMLD DO
MOVE
_PACK
MOVE
ASR4
ASR4
_LOOP2
BRA
Figure A-1 Listing of the DSP56156 Bootstrap Program (Continued)
A - 6
BOOTSTRAP MODE — OPERATING MODE 0 OR 1
BOOTSTRAP ROM
P:(R1),A
A0,R0
A
<INLOOP
#$40,CCR
R0,X:M_CRA0
#$2000,A
A,X:M_CRB0
#$E,X:(R3)
#PRAMSIZE,B1
B1,_LOOP1
#1,OMR
<_MEMLD
<_HOSTLD
#$80,X:M_SR0
_SSIWT
X:M_RX0,B
B
B
<_PACK
#2,_LOOP2
P:(R1)+,B
B1,A2
A
A
<_STORE
; Get P:$C000 (clears A0)
; R0=(0) Starting P: address of
; internal memory where program
; will begin loading
; Shift bit 15 into the carry flag
; Perform load from memory or
; host interface if carry is zero.
; Set L bit if not (0)
; Set CRA0 of SSI0 to 8 bit mode
; Set CRB0 to external clock, async.mode
; with reception enabled
; Set PC1,PC2,PC3 to SRD0,SCK0,RFS0
; Load PRAM size into B1
; Load PRAMSIZE instruction words.
; Perform load from Host
; Load from memory if MA=0.
; Load from Host Interface
; if the limit flag is clear
; Test RDF flag
; Wait for RDF to go high
; Put receive SSI0 data in B
; where the received byte
; Each instruction has 2 bytes.
; Get 8-bit from external P:
; Move the 8-bit into A2
; Shift 4 bit data into A1
; Shift 4 bit data into A1
; Then put the word in P: memory
MOTOROLA

Advertisement

Table of Contents
loading

Table of Contents