TC1796
System Units (Vol. 1 of 2)
Reset and Boot Operation
User’s Manual
4-21
V2.0, 2007-07
Reset, V2.0
4.4.1
Bootstrap Loader Mode 1 - ASC Boot via ASC0 Pins
The ASC boot mode of the bootstrap loader moves 128 bytes of program code/data into
the SPRAM and starts executing the loaded code from address D400 0000
H
(address of
the first transmitted byte). Most probably the initially-loaded program code will load
additional code or data. For that purpose, it can directly use the ASC0 interface that has
already been initialized during the bootstrap loader execution.
shows the
actions that take place in bootstrap loader mode 1.
Figure 4-2
ASC0 Bootstrap Loader Sequence (Mode 1)
As the first task, the ASC0 determines the baud rate at which the external host is
communicating. This task requires the external host to transmit an initialization byte to
the TC1796 at the RXD0A input line of the ASC0. The initialization byte is built up by one
low level start bit, eight low-level data bits, and 1 stop bit (a low pulse with a width of nine
serial bit cells). The bootstrap loader software measures the width of the initialization
byte, calculates the baud rate, and writes the corresponding ASC0 registers with the
values that select the detected baud rate.
After the baud rate calculation and initialization (receive pin remains disabled during this
time), an identification byte (D5
H
) is sent to the external host indicating that the TC1796
is ready to accept a data transfer from the host of exactly 128 bytes (32 words). After the
BRKIN
PORST or
HDRST
HWCFG[3:0]
1
2
3
Boot ROM
4
Byte
1
Byte
2
Byte
127
Byte
128
5
RXD0A
TXD0A
Program Exec.
Location
ASC Bootstrap Loader Routine
User Code
6
MCT05610
D5
H
Latching the input levels of BRKIN and HWCFG[3:0].
1
Bootstrap loader initialization and selection.
2
Reception of a zero byte (1 start bit, eight “0“ data bits, 1 stop bit)
3
Identifcation byte is sent to the external host. Receiver is disabled.
4
128 bytes of code/data are sent by the external host.
5
Last byte received; jump to D4000000
H
executed.
6