4.3.7. Configuration and Control Register

The CCR controls entry to Thread mode and enables:

See the register summary in Table 4.12 for the CCR attributes.

The bit assignments are:

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.

Table 4.20. CCR bit assignments


Always reads-as-one. It indicates branch prediction is enabled.


Enables L1 instruction cache. This bit is optional:


L1 instruction cache disabled.


L1 instruction cache enabled.


Enables L1data cache. This bit is optional:


L1 data cache disabled.


L1 data cache enabled.


Always reads-as-one. It indicates stack alignment on exception entry is 8-byte aligned.

On exception entry, the processor uses bit[9] of the stacked PSR to indicate the stack alignment. On return from the exception it uses this stacked bit to restore the correct stack alignment.


Enables handlers with priority -1 or -2 to ignore data BusFaults caused by load and store instructions. This applies to the hard fault, NMI, and FAULTMASK escalated handlers:


Data bus faults caused by load and store instructions cause a lock-up.


Handlers running at priority -1 and -2 ignore data bus faults caused by load and store instructions.

Set this bit to 1 only when the handler and its data are in absolutely safe memory. The normal use of this bit is to probe system devices and bridges to detect control path problems and fix them.


Enables faulting or halting when the processor executes an SDIV or UDIV instruction with a divisor of 0:


Do not trap divide by 0.


Trap divide by 0.

When this bit is set to 0, a divide by zero returns a quotient of 0.


Enables unaligned access traps:


Do not trap unaligned halfword and word accesses.


Trap unaligned halfword and word accesses.

If this bit is set to 1, an unaligned access generates a UsageFault.

Unaligned LDM, STM, LDRD, and STRD instructions always fault irrespective of whether UNALIGN_TRP is set to 1.


Enables unprivileged software access to the STIR, see Software Trigger Interrupt Register:






Indicates how the processor enters Thread mode:


Processor can enter Thread mode only when no exception is active.


Processor can enter Thread mode from any level under the control of an EXC_RETURN value, see Exception return.

Copyright © 2015, 2018 Arm. All rights reserved.ARM DUI 0646C