
MAXQ612/MAXQ622 User’s Guide
Maxim Integrated 2-21
Figure 2-8 shows the code memory with passwords and the location of the values that are programmed into the ULDR/
UAPP registers.
The user loader starting page address is located at 0Fh, one word before the system password. The user application
starting page address is stored one word before the user loader password (i.e., ULDR*Flash page size + 0Fh).
The startup sequence is as follows:
1) The system resets at 8000h and starts running utility ROM code. On a 64KB part with flash pages of 512 bytes,
ULDR and UAPP are at their reset values of 80h (end of flash memory). The PRIV register is at its reset value of
high. The MPE (memory protection enable bit) is at its reset value of 1 (enable).
2) Utility ROM initialization code checks the system password and disables MPE if the password is empty.
3) After utility ROM initialization is complete, the utility ROM passes execution to system code memory at address
0000h.
4) System code starts executing and uses a CP of 0Fh to read the user loader starting page address and writes it into
the ULDR register.
5) After system initialization is complete, system code jumps to address ULDR*Flash page size + 0000h. This jump
automatically drops PRIV to medium.
6) The user-loader code starts executing and uses a CP of ULDR*Flash page size + 0Fh to read the user application
starting page address and writes it into the UAPP register.
7) After user loader initialization is complete, user-loader code jumps to address UAPP*Flash page size + 0000h. This
jump automatically drops PRIV to low.
Figure 2-8. Overview of Memory Regions
ULDR
UAPP
0000
TOP (128KB)
SYSTEMUSER
APPL
USER
LDR
RESET/STARTUP DEBUG LOCK
SYS PASSWORD
USR LDR START
IVT IVT IVT
IVT IVT IVT
STARTUP
USR LDR PASSWORD
USR APP START
10h
20h
+10h
STARTUP
USR APP PASSWORD
+10h
Kommentare zu diesen Handbüchern