Introduction
1-6 Copyright © 2005-2008 ARM Limited. All rights reserved. ARM DDI 0337G
Non-Confidential
Unrestricted Access
• Hardware divide.
• Thumb and Debug states.
• Handler and Thread modes.
• Low latency ISR entry and exit.
— Processor state saving and restoration, with no instruction fetch overhead.
Exception vector is fetched from memory in parallel with the state saving,
enabling faster ISR entry.
— Support for late arriving interrupts.
— Tightly coupled interface to interrupt controller enabling efficient
processing of late-arriving interrupts.
— Tail-chaining of interrupts, enabling back-to-back interrupt processing
without the overhead of state saving and restoration between interrupts.
• Interruptible-continued LDM/STM, PUSH/POP.
• ARMv6 compatible BE8 and LE access support.
• ARMv6 compatible unaligned access support.
Registers
The processor contains:
• 13 general purpose 32-bit registers, R0 to R12
• Link Register (LR)
• Program Counter (PC)
• Program Status Register, xPSR
• two banked SP registers.
Memory interface
The processor has a Harvard interface to enable simultaneous instruction fetches with
data load/stores. Memory accesses are controlled by:
•A separate Load Store Unit (LSU) that decouples load and store operations from
the Arithmetic and Logic Unit (ALU).
• A 3-word entry Prefetch Unit (PFU). One word is fetched at a time. This can be
two Thumb instructions, one word-aligned Thumb 32-bit instruction, or the
upper/lower halfword of a halfword-aligned Thumb 32-bit instruction with one
Thumb instruction, or the lower/upper halfword of another halfword-aligned
Thumb 32-bit instruction. All fetch addresses from the core are word aligned. If