Section Start
Address
Reset Vector
+
CPU Vector Table
0x003F8000
0x003FFFFF
C-Boot ROM
contents
0x003FFFC0
64x16
Reset fetched from here when
VMAP=1
Other vectors fetched from
here when VMAP=1, ENPIE=0
C-Boot ROM Description
618
SPRUHE8E – October 2012 – Revised November 2019
Copyright © 2012–2019, Texas Instruments Incorporated
ROM Code and Peripheral Booting
6.6.1.5
C-Boot ROM Vector Table
A CPU vector table resides in boot ROM memory from address 0x3F FFC0 - 0x3F FFFF. This vector table
is active after reset when VMAP = 1, ENPIE = 0 (PIE vector table disabled).
Figure 6-10. C-Boot ROM Vector Table Map
A
The VMAP bit is located in Status Register 1 (ST1). VMAP is always 1 on reset. It can be changed after reset by
software, however, the normal operating mode will be to leave VMAP=1.
B
The ENPIE bit is located in the PIECTRL register. The default state of this bit at reset is 0, which disables the
Peripheral Interrupt Expansion block (PIE).
The only vector that will normally be handled from the internal boot ROM memory is the reset vector
located at 0x3F FFC0. The reset vector is factory programmed to point to the InitBoot function stored in
the boot ROM. This function starts the boot load process.
PIE and all the peripheral interrupts are disabled by default on reset on the control subsystem. ITRAP and
NMI exceptions are enabled by default, so until PIE is enabled, the control subsystem CPU will fetch for
interrupt vector from the CPU vector table in C-Boot ROM for NMI, ITRAP or Reset exceptions as shown
in
For TI silicon debug and test purposes the interrupt vectors (not the NMI and ITRAP exceptions) located in
the boot ROM memory point to locations in the M0 SARAM block as described in below table. During
silicon debug, user can program the specified locations in M0 with branch instructions to catch any vectors
fetched from boot ROM. This is not required for normal device operation.
Table 6-13. C-Boot ROM CPU Vector Table
Vector Name (Number)
Vector Address or Location in
BootROM – When PIE is disabled
Contents (Handler address)
RESET
0x003FFFC0
InitBoot
INT1
0x003FFFC2
0x00000042
INT2
0x003FFFC4
0x00000044
INT3
0x003FFFC6
0x00000046
INT4
0x003FFFC8
0x00000048
INT5
0x003FFFCA
0x0000004A
INT6
0x003FFFCC
0x0000004C
INT7
0x003FFFCE
0x0000004E
INT8
0x003FFFD0
0x00000050