SWCU194 March 2023 CC1314R10 , CC1354P10 , CC1354R10 , CC2674P10 , CC2674R10
The Vector Table Offset Register (CPU_SCB:VTOR) in the System Control Block (SCB) determines the starting address of the vector table. The VTOR is banked so there is a VTOR_S and a VTOR_NS. The initial values of VTOR_Sand VTOR_NS are 0. The vector table used depends on the target state of the exception. For exceptions targeting the Secure state, VTOR_S is used. For exceptions targeting the Non-secure state, VTOR_NS is used.
Table 5-2 shows the order of the exception vectors in the Secure and Non-secure vector tables. The least-significant bit of each vector is 1, indicating that the exception handler is written in Thumb® code.
Exception Number | IRQ Number | Secure Vector | Non-secure Vector | Offset |
62 | 46 | IRQ46 | IRQ46 | 0xF8 |
. |
. . . |
. | ||
. | . | |||
. | . | |||
18 | 2 | IRQ2 | IRQ2 | 0x48 |
17 | 1 | IRQ1 | IRQ1 | 0x44 |
16 | 0 | IRQ0 | IRQ0 | 0x40 |
15 | -1 | SysTick_S | SysTick_NS | 0x3C |
14 | -2 | PendSV_S | PendSV_NS | 0x38 |
13 | Reserved | Reserved | 0x30 | |
12 | -3 | DebugMonitor | DebugMonitor | |
11 | -5 | SVCall_S | SVCall_NS | 0x2C |
10 | Reserved | Reserved | ||
9 | ||||
8 | ||||
7 | -9 | SecureFault | 0x1C | |
6 | -11 | UsageFault_S | UsageFault_NS | 0x18 |
5 | -12 | BusFault_S | BusFault_NS | 0x14 |
4 | -13 | MemManage_S | MemManage_NS | 0x10 |
3 | -13 | HardFault_S | HardFault_NS | 0x0C |
2 | -14 | NMI_S | NMI_NS | 0x08 |
1 | Reset | 0x04 | ||
Initial SP Value | 0x00 |
Because reset always targets Secure state, the Non-secure reset and Non-secure initial SP value are ignored by the hardware.