24. Nested vectored interrupt controller (NVIC)

24.1 NVIC features

The NVIC includes the following features:

The NVIC and the processor core interface are closely coupled, which enables low-latency interrupt processing and efficient processing of late-arriving interrupts.

All interrupts, including the core exceptions, are managed by the NVIC.

24.1.1 SysTick calibration value register

The SysTick calibration value (SYST_CALIB) is fixed to 0x3E8. It provides a reference timebase of 1 ms based when the SysTick clock frequency is 1 MHz. To match the 1 ms timebase whatever the application frequency, the SysTick reload value must be programmed as follows in the SYST_RVR register:

\[ \text{reload value} = (F_{\text{HCLK}} \times \text{SYST\_CALIB}) - 1 \]

\[ \text{reload value} = ((F_{\text{HCLK}} / 8) \times \text{SYST\_CALIB}) - 1 \]

where \( F_{\text{HCLK}} \) refers to the AHB frequency expressed in MHz

For example, to achieve a timebase of 1 ms when the SysTick clock source is the 100 MHz HCLK:

\[ \text{reload value} = (100 \times \text{SYST\_CALIB}) - 1 = 0x1869F \]

24.1.2 Interrupt and exception vectors

Exception vectors connected to the NVIC are the following: reset, NMI, HardFault, MemManage, BusFault, UsageFault, SVCall, DebugMonitor, PendSV, and SysTick

Table 134. STM32N6x5/x7xx vector table

NVIC positionPriorityPriority typeAcronymDescriptionAddress
----Reserved0x0000 0000
--3FixedResetReset0x0000 0004

Table 134. STM32N6x5/x7xx vector table (continued)

NVIC positionPriorityPriority typeAcronymDescriptionAddress
--2FixedNMINon-maskable interrupt. The RCC clock security system (HSE CSS) is linked to the NMI vector.0x0000 0008
--1FixedHardFaultAll classes of fault0x0000 000C
-0FixedMemManageMemory management0x0000 0010
-1SettableBusFaultPrefetch fault, memory-access fault0x0000 0014
-2SettableUsageFaultUndefined instruction or illegal state0x0000 0018
---ReservedReserved0x0000 001C
0x0000 002B
-3SettableSVCallSystem service call via SWI instruction0x0000 002C
-4SettableDebug MonitorDebug monitor0x0000 0030
---ReservedReserved0x0000 0034
-5SettablePendSVPendable request for system service0x0000 0038
-6SettableSysTickSystem tick timer0x0000 003C
07SettablePVD_PVMPVDOUT or PVM through the EXTI line0x0000 0040
----Reserved0x0000 0044
29SettableDTSThermal sensor interruption0x0000 0048
310SettableRCCRCC global interrupt0x0000 004C
411SettableLOCKUPLOCKUP - No overstack in Cortex-M550x0000 0050
512SettableCACHE_ECCCache ECC error0x0000 0054
613SettableTCM_ECCTCM ECC error0x0000 0058
714SettableBCKRAM_ECCBackup RAM interrupts (SEC and DED)0x0000 005C
815SettableFPUFPU safety flag0x0000 0060
-16-Reserved (product safety)Reserved0x0000 0064
1017SettableRTC_SRTC secure interrupt0x0000 0068
1118SettableTAMPTAMP secure and nonsecure synchronous interrupt line0x0000 006C
1219SettableRIFSC_TAMPERRIF can generate an interrupt when a laser attack is detected0x0000 0070
1320SettableIACIAC global interrupt0x0000 0074
1421SettableRCC_SRCC global secure interrupt0x0000 0078
-22-Reserved (product secure)Reserved0x0000 007C
1623SettableRTCRTC interrupt0x0000 0080
1724SettableReservedReserved0x0000 0084

Table 134. STM32N6x5/x7xx vector table (continued)

NVIC positionPriorityPriority typeAcronymDescriptionAddress
1825SettableWDGLSIndependent watchdog interrupt0x0000 0088
1926SettableWWDGWindow watchdog interrupt0x0000 008C
2027SettableEXTI0EXTI line 0 interrupt0x0000 0090
2128SettableEXTI1EXTI line 1 interrupt0x0000 0094
2229SettableEXTI2EXTI line 2 interrupt0x0000 0098
2330SettableEXTI3EXTI line 3 interrupt0x0000 009C
2431SettableEXTI4EXTI line 4 interrupt0x0000 00A0
2532SettableEXTI5EXTI line 5 interrupt0x0000 00A4
2633SettableEXTI6EXTI line 6 interrupt0x0000 00A8
2734SettableEXTI7EXTI line 7 interrupt0x0000 00AC
2835SettableEXTI8EXTI line 8 interrupt0x0000 00B0
2936SettableEXTI9EXTI line 9 interrupt0x0000 00B4
3037SettableEXTI10EXTI line 10 interrupt0x0000 00B8
3138SettableEXTI11EXTI line 11 interrupt0x0000 00BC
3239SettableEXTI12EXTI line 12 interrupt0x0000 00C0
3340SettableEXTI13EXTI line 13 interrupt0x0000 00C4
3441SettableEXTI14EXTI line 14 interrupt0x0000 00C8
3542SettableEXTI15EXTI line 15 interrupt0x0000 00CC
3643SettableSAESSAES global interrupt0x0000 00D0
3744SettableCRYPCRYP global interrupt0x0000 00D4
3845SettablePKAPKA global interrupt0x0000 00D8
3946SettableHASHHASH global interrupt0x0000 00DC
4047SettableRNGRNG global interrupt0x0000 00E0
-48-ReservedReserved0x0000 00E4
4249SettableMCE1MCE1 global interrupt0x0000 00E8
4350SettableMCE2MCE2 global interrupt0x0000 00EC
4451SettableMCE3MCE3 global interrupt0x0000 00F0
4552SettableMCE4MCE4 global interrupt0x0000 00F4
4653SettableADC12ADC1/ADC2 global interrupt0x0000 00F8
4754SettableCSICSI global interrupt0x0000 00FC
4855SettableDCMIPPDCMIPP global interrupt0x0000 0100
-56-ReservedReserved0x0000 0104

Table 134. STM32N6x5/x7xx vector table (continued)

NVIC positionPriorityPriority typeAcronymDescriptionAddress
-57-ReservedReserved0x0000 0108
-58-ReservedReserved0x0000 010C
5259SettablePAHB_ERRWrite posting errors on Cortex-M55 PAHB interface0x0000 0110
5360SettableNPU0 (1)NPU mst_ints[0] line0x0000 0114
5461SettableNPU1 (1)NPU mst_ints[1] line0x0000 0118
5562SettableNPU2 (1)NPU mst_ints[2] line0x0000 011C
5663SettableNPU3 (1)NPU mst_ints[3] line0x0000 0120
5764SettableCACHEAXI (1)CACHEAXI NPU interrupt cache0x0000 0124
5865SettableLTDC_LOLCD low-layer global interrupt0x0000 0128
5966SettableLTDC_LO_ERRLCD low-layer error interrupt0x0000 012C
6067SettableDMA2DDMA2D global interrupt0x0000 0130
6168SettableJPEGJPEG global interrupt0x0000 0134
6269SettableVENCVENC global interrupt0x0000 0138
6370SettableGFXMMUGFXMMU global interrupt0x0000 013C
6471SettableGFXTIMGFXTIM global interrupt0x0000 0140
6572SettableGPU2DGPU2D global interrupt0x0000 0144
6673SettableGPU2D_ERRORGPU2D error interrupt0x0000 0148
6774SettableICACHEGPU2D cache interrupt0x0000 014C
6875SettableHPDMA1_CH0HPDMA1 channel 0 interrupt0x0000 0150
6976SettableHPDMA1_CH1HPDMA1 channel 1 interrupt0x0000 0154
7077SettableHPDMA1_CH2HPDMA1 channel 2 interrupt0x0000 0158
7178SettableHPDMA1_CH3HPDMA1 channel 3 interrupt0x0000 015C
7279SettableHPDMA1_CH4HPDMA1 channel 4 interrupt0x0000 0160
7380SettableHPDMA1_CH5HPDMA1 channel 5 interrupt0x0000 0164
7481SettableHPDMA1_CH6HPDMA1 channel 6 interrupt0x0000 0168
7582SettableHPDMA1_CH7HPDMA1 channel 7 interrupt0x0000 016C
7683SettableHPDMA1_CH8HPDMA1 channel 8 interrupt0x0000 0170
7784SettableHPDMA1_CH9HPDMA1 channel 9 interrupt0x0000 0174
7885SettableHPDMA1_CH10HPDMA1 channel 10 interrupt0x0000 0178
7986SettableHPDMA1_CH11HPDMA1 channel 11 interrupt0x0000 017C
8087SettableHPDMA1_CH12HPDMA1 channel 12 interrupt0x0000 0180

Table 134. STM32N6x5/x7xx vector table (continued)

NVIC positionPriorityPriority typeAcronymDescriptionAddress
8188SettableHPDMA1_CH13HPDMA1 channel 13 interrupt0x0000 0184
8289SettableHPDMA1_CH14HPDMA1 channel 14 interrupt0x0000 0188
8390SettableHPDMA1_CH15HPDMA1 channel 15 interrupt0x0000 018C
8491SettableGPDMA1_CH0GPDMA1 channel 0 interrupt0x0000 0190
8592SettableGPDMA1_CH1GPDMA1 channel 1 interrupt0x0000 0194
8693SettableGPDMA1_CH2GPDMA1 channel 2 interrupt0x0000 0198
8794SettableGPDMA1_CH3GPDMA1 channel 3 interrupt0x0000 019C
8895SettableGPDMA1_CH4GPDMA1 channel 4 interrupt0x0000 01A0
8996SettableGPDMA1_CH5GPDMA1 channel 5 interrupt0x0000 01A4
9097SettableGPDMA1_CH6GPDMA1 channel 6 interrupt0x0000 01A8
9198SettableGPDMA1_CH7GPDMA1 channel 7 interrupt0x0000 01AC
9299SettableGPDMA1_CH8GPDMA1 channel 8 interrupt0x0000 01B0
93100SettableGPDMA1_CH9GPDMA1 channel 9 interrupt0x0000 01B4
94101SettableGPDMA1_CH10GPDMA1 channel 10 interrupt0x0000 01B8
95102SettableGPDMA1_CH11GPDMA1 channel 11 interrupt0x0000 01BC
96103SettableGPDMA1_CH12GPDMA1 channel 12 interrupt0x0000 01C0
97104SettableGPDMA1_CH13GPDMA1 channel 13 interrupt0x0000 01C4
98105SettableGPDMA1_CH14GPDMA1 channel 14 interrupt0x0000 01C8
99106SettableGPDMA1_CH15GPDMA1 channel 15 interrupt0x0000 01CC
100107SettableI2C1_EVI2C1 event interrupt0x0000 01D0
101108SettableI2C1_ERI2C1 error interrupt0x0000 01D4
102109SettableI2C2_EVI2C2 event interrupt0x0000 01D8
103110SettableI2C2_ERI2C2 error interrupt0x0000 01DC
104111SettableI2C3_EVI2C3 event interrupt0x0000 01E0
105112SettableI2C3_ERI2C3 error interrupt0x0000 01E4
106113SettableI2C4_EVI2C4 event interrupt0x0000 01E8
107114SettableI2C4_ERI2C4 error interrupt0x0000 01EC
108115SettableI3C1_EVI3C1 event interrupt0x0000 01F0
109116SettableI3C1_ERI3C1 error interrupt0x0000 01F4
110117SettableI3C2_EVI3C2 event interrupt0x0000 01F8
111118SettableI3C2_ERI3C2 error interrupt0x0000 01FC
112119SettableTIM1_BRKTIM1 break interrupt0x0000 0200

Table 134. STM32N6x5/x7xx vector table (continued)

NVIC positionPriorityPriority typeAcronymDescriptionAddress
113120SettableTIM1_UPTIM1 update interrupt0x0000 0204
114121SettableTIM1_TRG_COMTIM1 trigger and commutation interrupts0x0000 0208
115122SettableTIM1_CCTIM1 capture compare interrupt0x0000 020C
116123SettableTIM2TIM2 global interrupt0x0000 0210
117124SettableTIM3TIM3 global interrupt0x0000 0214
118125SettableTIM4TIM4 global interrupt0x0000 0218
119126SettableTIM5TIM5 global interrupt0x0000 021C
120127SettableTIM6TIM6 global interrupt0x0000 0220
121128SettableTIM7TIM7 global interrupt0x0000 0224
122129SettableTIM8_BRKTIM8 break interrupt0x0000 0228
123130SettableTIM8_UPTIM18 update interrupt0x0000 022C
124131SettableTIM8_TRG_COMTIM8 trigger and commutation interrupts0x0000 0230
125132SettableTIM8_CCTIM8 capture compare interrupt0x0000 0234
126133SettableTIM9TIM9 global interrupt0x0000 0238
127134SettableTIM10TIM10 global interrupt0x0000 023C
128135SettableTIM11TIM11 global interrupt0x0000 0240
129136SettableTIM12TIM12 global interrupt0x0000 0244
130137SettableTIM13TIM13 global interrupt0x0000 0248
131138SettableTIM14TIM14 global interrupt0x0000 024C
132139SettableTIM15TIM15 global interrupt0x0000 0250
133140SettableTIM16TIM16 global interrupt0x0000 0254
134141SettableTIM17TIM17 global interrupt0x0000 0258
135142SettableTIM18TIM18 global interrupt0x0000 025C
136143SettableLPTIM1LPTIM1 global interrupt0x0000 0260
137144SettableLPTIM2LPTIM2 global interrupt0x0000 0264
138145SettableLPTIM3LPTIM3 global interrupt0x0000 0268
139146SettableLPTIM4LPTIM4 global interrupt0x0000 026C
140147SettableLPTIM5LPTIM5 global interrupt0x0000 0270
141148SettableADF1_FLT0ADF1 filter 0 global interrupt0x0000 0274
142149SettableMDF1_FLT0MDF global Interrupt for filter 00x0000 0278
143150SettableMDF1_FLT1MDF global Interrupt for filter 10x0000 027C
144151SettableMDF1_FLT2MDF global Interrupt for filter 20x0000 0280

Table 134. STM32N6x5/x7xx vector table (continued)

NVIC positionPriorityPriority typeAcronymDescriptionAddress
145152SettableMDF1_FLT3MDF global Interrupt for filter 30x0000 0284
146153SettableMDF1_FLT4MDF global Interrupt for filter 40x0000 0288
147154SettableMDF1_FLT5MDF global Interrupt for filter 50x0000 028C
148155SettableSAI1_ASAI1 global interrupt A0x0000 0290
149156SettableSAI1_BSAI1 global interrupt B0x0000 0294
150157SettableSAI2_ASAI2 global interrupt A0x0000 0298
151158SettableSAI2_BSAI2 global interrupt B0x0000 029C
152159SettableSPDIFRX1SPDIFRX global interrupt0x0000 02A0
153160SettableSPI1SPI1 global interrupt0x0000 02A4
154161SettableSPI2SPI2 global interrupt0x0000 02A8
155162SettableSPI3SPI3 global interrupt0x0000 02AC
156163SettableSPI4SPI4 global interrupt0x0000 02B0
157164SettableSPI5SPI5 global interrupt0x0000 02B4
158165SettableSPI6SPI6 global interrupt0x0000 02B8
159166SettableUSART1USART1 global interrupt0x0000 02BC
160167SettableUSART2USART2 global interrupt0x0000 02C0
161168SettableUSART3USART3 global interrupt0x0000 02C4
162169SettableUART4UART4 global interrupt0x0000 02C8
163170SettableUART5UART5 global interrupt0x0000 02CC
164171SettableUSART6UART5 global interrupt0x0000 02D0
165172SettableUART7UART5 global interrupt0x0000 02D4
166173SettableUART8UART5 global interrupt0x0000 02D8
167174SettableUART9UART9 global interrupt0x0000 02DC
168175SettableUSART10USART10 global interrupt0x0000 02E0
169176SettableLPUART1LPUART1 global interrupt0x0000 02E4
170177SettableXSPI1XSPI1 global interrupt0x0000 02E8
171178SettableXSPI2XSPI2 global interrupt0x0000 02EC
172179SettableXSPI3XSPI3 global interrupt0x0000 02F0
173180SettableFMCFMC global interrupt0x0000 02F4
174181SettableSDMMC1SDMMC1 global interrupt0x0000 02F8
175182SettableSDMMC2SDMMC2 global interrupt0x0000 02FC
176183SettableUCPD1UCPD global interrupt0x0000 0300

Table 134. STM32N6x5/x7xx vector table (continued)

NVIC positionPriorityPriority typeAcronymDescriptionAddress
177184SettableOTG1USB OTG1 HS global interrupt0x0000 0304
178185SettableOTG2USB OTG2 HS global interrupt0x0000 0308
179186SettableETH1Ethernet global interrupt0x0000 030C
180187SettableFDCAN1_IT0FDCAN1 interrupt 00x0000 0310
181188SettableFDCAN1_IT1FDCAN1 interrupt 10x0000 0314
182189SettableFDCAN2_IT0FDCAN2 interrupt 00x0000 0318
183190SettableFDCAN2_IT1FDCAN2 interrupt 10x0000 031C
184191SettableFDCAN3_IT0FDCAN3 interrupt 00x0000 0320
185192SettableFDCAN3_IT1FDCAN3 interrupt 10x0000 0324
186193SettableFDCAN_CUClock calibration unit interrupt line (FDCAN1 only)0x0000 0328
187194SettableMDIOSMDIOS global interrupt0x0000 032C
188195SettableDCMI_PSSIDCMI/PSSI global interrupt0x0000 0330
189196SettableWAKEUP_PINWake-up pin interrupts0x0000 0334
190197SettableCTI0Debug monitor (Cortex-M55 related)0x0000 0338
191198SettableCTI1Debug monitor (Cortex-M55 related)0x0000 033C
-199-ReservedReserved0x0000 0340
193200SettableLTDC_UPLCD up-layer global interrupt0x0000 0344
194201SettableLTDC_UP_ERRLCD up-layer error interrupt0x0000 0348

1. Reserved on STM32N6x5xx devices.