
Boot Assist Module (BAM)
PXN20 Microcontroller Reference Manual, Rev. 1
Freescale Semiconductor
9-11
9.3.3.2.3
Serial-Boot Mode Processing
The BAM program executes the serial boot as following:
1. Download 64-bit password.
The received 8-byte password is checked for validity. It is checked to ensure that none of the
4
16-bit halfwords are illegal passwords, such as 0x0000 or 0xFFFF. A password must have at
least one 0 and one 1 in each halfword lane to be considered legal.
The BAM program then checks the censorship status of the MCU by checking the DISNEX bit in
the SIU_CCR register. If Nexus is disabled, the MCU is considered to be censored and the
password is compared with a password stored in the shadow row in internal flash memory.
If Nexus is enabled, the MCU is not considered to be censored and the password is compared to
the fixed value = 0xFEED_FACE_CAFE_BEEF.
If the password fails any validity test, the MCU stops responding to all stimulus. Then the RESET
signal must be asserted or the software watchdog must be allowed to time out. If the password is
valid, the BAM refreshes the software watchdog timer and performs the next step in the protocol.
2. Download start address, size of download, and VLE bit.
The next 8 bytes received by the MCU are considered to contain a 32-bit start address, the VLE
mode bit, and a 31-bit code length (see
Figure 9-6. Start Address, VLE Bit and Download Size in Bytes
The start address defines where the received data is stored and where the MCU branches after the
download is finished. The two least significant bits of the start address are ignored by the BAM
program, such that the loaded code should be 32-bit word aligned.
The length defines how many data bytes are loaded.
The VLE mode bit instructs the MCU to program MMU pages with VLE attribute. If it is 1, the
downloaded code must be compiled to VLE instructions. If it is 0, the code contains classic Power
Book E architecture instructions.
3. Download data.
Each byte of data received is stored in the MCU’s memory, starting at the address specified in the
previous protocol step and incrementing through memory until the number of bytes of data
received and stored in memory matches the number specified in the previous protocol step.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
START_ADDRESS[0:15]
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
START_ADDRESS[16:31]
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
VLE
CODE_LENGTH[0:14]
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
CODE_LENGTH[15:30]
Summary of Contents for PXN2020
Page 1: ...PXN20 Microcontroller Reference Manual Devices Supported PXN2020 PXN2120 PXN20RM Rev 1 06 2011...
Page 42: ...PXN20 Microcontroller Reference Manual Rev 1 lxiv Freescale Semiconductor...
Page 64: ...Introduction PXN20 Microcontroller Reference Manual Rev 1 1 22 Freescale Semiconductor...
Page 112: ...Signal Description PXN20 Microcontroller Reference Manual Rev 1 3 44 Freescale Semiconductor...
Page 118: ...Resets PXN20 Microcontroller Reference Manual Rev 1 4 6 Freescale Semiconductor...
Page 372: ...e200z6 Core Z6 PXN20 Microcontroller Reference Manual Rev 1 13 8 Freescale Semiconductor...
Page 412: ...e200z0 Core Z0 PXN20 Microcontroller Reference Manual Rev 1 14 14 Freescale Semiconductor...
Page 821: ...Media Local Bus MLB PXN20 Microcontroller Reference Manual Rev 1 Freescale Semiconductor 27 49...
Page 822: ...Media Local Bus MLB PXN20 Microcontroller Reference Manual Rev 1 27 50 Freescale Semiconductor...
Page 1376: ...Memory Map PXN20 Microcontroller Reference Manual Rev 1 A 118 Freescale Semiconductor...