STMicroelectronics SPC572L series Reference Manual page 197

Table of Contents

Advertisement

RM0400
The SSCM releases reset to the core and then turns on the clock to the core. The start
address is transferred to the core at this time under the control of the SSCM and the core
begins execution of the BAF code.
7.4.4.6
Core begins BAF code execution (state 22)
After the reset signal is released and the respective clocks are turned on to the core, the
core begins execution of code in the Boot Assist Flash.
7.4.4.7
Core continues BAF code execution (state 23)
The BAF code begins by initializing registers and applying device settings. The BAF code is
written by the device manufacturer and changes from device to device.
7.4.4.8
Core searches for boot header (state 31)
The core continues code execution by searching for the boot header. In the present
example, it is assumed that no boot header file is present.
This is the header file for the CPU that starts executing the user application code.
The Boot CPU header is programmed into flash memory at the same time the user
application program is programmed into flash memory. The core searches for the boot
header, which can be located at one of four addresses:
0x100_0000
0x104_0000
0x108_0000
0x10C_0000
A valid Boot Header_ID begins with the value 0x005A.
The boot header structure consists of the following words:
1.
Boot Header_ID/Boot_CPU
2.
Start address
To indicate a valid boot header, the 16-bit Boot_Header_ID field is written with the value
0x005A.
7.4.4.9
Valid boot header is not found (decision point N)
The core, executing code in the Boot Assist Flash, does not find a valid boot header file in
flash memory. Because there is no valid boot header, serial boot mode must be entered to
obtain an application program.
Note:
This mode receives a program to be executed over a serial port implemented using the
LINFlexD port. Once the program is received, using a defined format, the core jumps to the
start address of the program and begins execution.
7.4.4.10
Initialize RAM (state 35)
The core, executing code in the Boot Assist Flash, initializes RAM in preparation for entering
serial boot mode. Serial boot mode configures the LINFlexD port to receive code from an
external source. The LINFlexD port comes in a number of hardware configurations. The
SPC572Lx uses LINFlexD, which implements a basic UART. Code in the BAF operates the
LINFlexD module and implements the protocol.
DocID027809 Rev 4
Reset and Boot
197/2058
204

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the SPC572L series and is the answer not in the manual?

Table of Contents