You copied the Doc URL to your clipboard.

4.2. Exception types

Various types of exceptions exist in the processor. A fault is an exception that results from an error condition. Faults can be reported synchronously or asynchronously with respect to the instruction that caused them. In general, faults are reported synchronously. Faults caused by writes over the external AHB bus are asynchronous faults. A synchronous fault is always reported with the instruction that caused the fault. An asynchronous fault does not guarantee how it is reported with respect to the instruction that caused the fault.

For more information on exceptions, see the ARMv6-M Architecture Reference Manual.

Table 4.1 shows the exception type, position, and priority. Position refers to the word offset of the exception vectors from the start of the vector table, which is always at address 0x0. The lower numbers shown in the Priority column of the table are higher priority. How the types are activated, synchronously or asynchronously, is also shown. The exact meaning and use of priorities is explained in Exception priority.

Exception types
PositionException typePriorityDescriptionActivated
---Stack top is loaded from first entry of vector table on reset.-
1Reset–3 (highest)Invoked on power up and warm reset. On first instruction, drops to lowest priority, Thread mode.Asynchronous
2Non-maskable Interrupt–2

This exception type cannot be:

  • masked or prevented from activation by any other exception

  • pre-empted by any other exception other than Reset.

3Hard Fault–1All classes of Fault. Synchronous or asynchronous
11SVCConfigurableSystem service call using the SVC instruction.Synchronous
14PendSVConfigurablePendable request for system service. This is only pended by software.Asynchronous
15SysTickConfigurableSystem tick timer has fired. Asynchronous
16-47External InterruptConfigurableAsserted from outside the processor or pended by software. Asynchronous
Was this page helpful? Yes No