Bootstrap loader
5
Bootstrap loader
ST10F276E
ST10F276E implements innovative boot capabilities in order to
● support a user defined bootstrap (see Alternate bootstrap loader);
● support bootstrap via UART or bootstrap via CAN for the standard bootstrap.
5.1
Selection among user-code, standard or alternate bootstrap
The selection among user-code, standard bootstrap or alternate bootstrap is made by
special combinations on Port0L[5...4] during the time the reset configuration is latched from
Port0.
The alternate boot mode is triggered with a special combination set on Port0L[5...4]. Those
signals, as other configuration signals, are latched on the rising edge of RSTIN pin.
The alternate boot function is divided in two functional parts (which are independent from
each other):
Part 1: Selection of reset sequence according to the Port0 configuration: User mode and
alternate mode signatures
● Decoding of reset configuration (P0L.5 = 1, P0L.4 = 1) selects the normal mode and
the user Flash to be mapped from address 00’0000h.
● Decoding of reset configuration (P0L.5 = 1, P0L.4 = 0) selects ST10 standard bootstrap
mode (Test-Flash is active and overlaps user Flash for code fetches from address
00'0000h; user Flash is active and available for read and program).
● Decoding of reset configuration (P0L.5 = 0, P0L.4 = 1) activates new verifications to
select which bootstrap software to execute:
– if the user mode signature in the user Flash is programmed correctly, then a
software reset sequence is selected and the user code is executed;
– if the user mode signature is not programmed correctly but the alternate mode
signature in the user Flash is programmed correctly, then the alternate boot mode
is selected;
– if both the user and the alternate mode signatures are not programmed correctly in
the user Flash, then the user key location is read again. Its value will determine
the behavior of the selected bootstrap loader.
Part 2: Running of user selected reset sequence
● Standard bootstrap loader: Jump to a predefined memory location in Test-Flash
(controlled by ST)
● Alternate boot mode: Jump to address 09’0000h
● Selective bootstrap loader: Jump to a predefined location in Test-Flash (controlled by
ST) and check which communication channel is selected
● User code: Make a software reset and jump to 00’0000h
46/235
Doc ID 12303 Rev 3