You copied the Doc URL to your clipboard.

Security state of fault exceptions

If the Security Extension is implemented in the processor, fault exceptions can target either the Secure state or Non-secure state. This is a change to the behavior in the ARMv6-M and ARMv7-M architectures.

Fault exception

Target state

HardFault

Default to Secure state.

This can be configured to allow Non-secure HardFault by Secure software. However, security violations are still handled by the HardFault exception in Secure state.

BusFault

Default to Secure state.

This can be configured to allow Non-secure BusFault by Secure software.

UsageFault

Can either be Secure or Non-secure state.

Depends on the current state when the error event occurs.

MemManage

Can either be Secure or Non-secure state.

Depends on the current state when the error event occurs.

SecureFault

Secure state only.

Only available

A programmable bit in the Application Interrupt and Reset Control Register (AIRCR) called BFHFNMINS (BusFault, HardFault, and NMI Non-secure enable), bit [13] is used in the ARMv8-M architecture to permit Secure software to define whether fault exceptions and NMI are handled by Non-secure software.

The target state of the fault exception determines which vector table is used for fetching the exception vector and the execution state of the ISR. Because the vector tables for Secure and Non-secure software are separated, different fault handlers can be used when the fault events are targeted at different states.

Was this page helpful? Yes No