MPC5510 Microcontroller Family Reference Manual, Rev. 1
Freescale Semiconductor
32-1
Preliminary
Chapter 32
Boot Assist Module (BAM)
32.1
Introduction
The MPC5510 boot assist module (BAM) is a 4-KB block of read-only memory (ROM) that contains the
BAM program. The BAM program is compiled to variable length encoding (VLE) code. The BAM
program is executed by the e200z1 when the MPC5510 performs a power-on-reset (POR), or any other
reset, when the CRP_Z1VEC register remains in its reset state. The BAM program initializes the MCU,
transitions to the user application code in the internal flash or downloads the user code into internal RAM
via CAN or SCI serial links, and passes control to the user code.
32.1.1
Features
The BAM program provides the following functionality:
•
Initial e200z1 core MMU setup with no address translation to allow the core to access all internal
MCU resources and external memory address space
•
Location and detection of user code in the internal flash
•
Automatic switch to serial boot mode if internal flash is blank or invalid
•
Supports user programmable 64-bit password protection for serial boot mode
•
Supports serial bootloading via CAN bus or eSCI to the internal SRAM
•
Supports censorship protection for internal flash memory
•
Provides an option to disable the miscellaneous control module (MCM) software watchdog timer
(enabled by default)
•
Configures MMU to start user application, compiled in either classic Power Book E code or as
Freescale VLE code
NOTE
The BAM program is intended to be run on e200z1 (main core) only.
Attempting to execute the BAM program by the e200z0 core may cause
erratic MCU behavior.
NOTE
During BAM program execution, the default reset values of various system
registers (e.g. SIU, FlexCAN, eSCI, MCM SWT) may be updated.