Bootloader Features
www.ti.com
188
SPRUI07–March 2020
Submit Documentation Feedback
Copyright © 2020, Texas Instruments Incorporated
Boot ROM
2.2.16 McBSP_Boot Function
The McBSP bootloader synchronously transfers code from McBSP-A to internal memory. McBSP-A is
configured for slave mode operation. that is, it receives the frame sync and clock from the host. Upon
receiving a word, the McBSP echoes the data back to the host. The host could use this feature to ensure
that the previous word was received and copied by the McBSP before transmitting the next word. The host
can download a kernel to reconfigure the McBSP if higher data throughput is desired. This can be done by
choosing a faster PLL multiplier and also by choosing the /1 divider for the PLL output.
NOTE: Version 1 of the McBSP loader does not echo back data to the host. This feature is new as
of Version 2 included on Rev A devices.
The McBSP-A loader uses pins shown in Table 2-6.
Table 2-6. Pins Used by the McBSP Loader
C28x Slave Device Pin Number Host Signal
MDXA GPIO20 MDR
MDRA GPIO21 MDX
MCLKXA GPIO22 CLKX
MFSXA GPIO23 FSR
MCLKRA GPIO7 CLKX
MFSXA GPIO5 FSXA
The bit rates achieved for different XCLKIN values as shown in Table 2-7. The SYSCLKOUT values
shown are for the default PLLCR of 0 and PLLSTS[DIVSEL] set to 2.
Table 2-7. Bit-Rate Values for Different XCLKIN Values
XCLKIN SYSCLKOUT LSPCLK CLKG
30 MHz 15 MHz 3.75 MHz 1.875 MHz
15 MHz 7.5 MHz 1.875 MHz 937.5 KHz
The host should transmit MSB first and LSB next. For example, to transmit the word 0x10AA to the
device, transmit 10 first, followed by AA. The program flow of the McBSP bootloader is identical to the SCI
bootloader, with the exception that 16-bit data is used. The data sequence for the McBSP bootloader
follows the 16-bit data stream and is shown in Table 2-8.
Table 2-8. McBSP 16-Bit Data Stream
Word Contents Description
1 10AA 10AA (KeyValue for memory width = 16bits)
2 0000 8 reserved words (words 2-9)
... ... ...
9 0000 Last reserved word
10 AABB Entry point PC[22:16]
11 CCDD Entry point PC[15:0] (PC = 0xAABBCCDD)
12 MMNN Block size (number of words) of the first block of data to load = 0xMMNN words
13 AABB Destination address of first block Addr[31:16]
14 CCDD Destination address of first block Addr[15:0] (Addr = 0xAABBCCDD)
15 XXXX First word of the first block in the source being loaded
...
...
...
... Data for this section.