Start transfer
No
More
data
?
DSP ready
(GPIO26=0)
?
Yes
Load GPIO[15:0] with data
Signal that data
is ready
(GPIO27=0)
DSP ack
(GPIO26=1)
?
No
Yes
Acknowledge DSP
(GPIO27=1)
Yes
No
End transfer
Parallel_Boot Function (GPIO)
Figure 2-16. Parallel GPIO Mode - Host Transfer Flow
Figure 2-17 and Figure 2-18 show the flow used to read a single word of data from the parallel port. The
loader uses the method shown in Figure 2-6 to read the key value and to determine if the incoming data
stream width is 8-bit or 16-bit. A different GetWordData function is used by the parallel loader depending
on the data size of the incoming data stream.
• 16-bit data stream
For an 16-bit data stream, the function Parallel_GetWordData16bit is used. This function reads all
16-bits at a time. The flow of this function is shown in Figure 2-17 .
• 8-bit data stream
For an 8-bit data stream, the function Parallel_GetWordData8bit is used. The 8-bit routine, shown in
Figure 2-18 , discards the upper 8 bits of the first read from the port and treats the lower 8 bits as the
least significant byte (LSB) of the word to be fetched. The routine will then perform a second read to
fetch the most significant byte (MSB). It then combines the MSB and LSB into a single 16-bit value to
be passed back to the calling routine.
SPRU722C – November 2004 – Revised October 2006 Bootloader Features 37
Submit Documentation Feedback