EasyManuals Logo

ARM Cortex-M3 User Manual

ARM Cortex-M3
410 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #108 background imageLoading...
Page #108 background image
Exceptions
5-12 Copyright © 2005-2008 ARM Limited. All rights reserved. ARM DDI 0337G
Non-Confidential
Unrestricted Access
Table 5-4 describes the steps that the processor takes before it enters an ISR.
Figure 5-2 on page 5-13 shows an example of exception entry timing.
Table 5-4 Exception entry steps
Action Restartable? Description
Push eight registers
a
No. Pushes xPSR, PC, r0, r1, r2, r3, r12, and LR on selected stack.
Read vector table Yes. Late-arriving
exception can cause
restart.
Reads vector table from memory based on
table base + (exception number 4). Read on the ICode bus can
be done simultaneously with register pushes on the DCode bus.
Read SP from vector table No. On Reset only, updates SP to top of stack from vector table.
Other exceptions do not modify SP except to select stack, push,
and pop.
Update PC No. Updates PC with vector table read location. Late-arriving
exceptions cannot be processed until the first instruction starts to
execute.
Load pipeline Yes. Pre-emption
reloads pipeline from
new vector table read.
Loads instructions from location pointed to by vector table. This
is done in parallel with register push.
Update LR No. LR is set to EXC_RETURN to exit from exception.
EXC_RETURN is one of 16 values as defined in ARMv7-M
Architecture Reference Manual.
a. When tail-chaining, this step is skipped.

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the ARM Cortex-M3 and is the answer not in the manual?

ARM Cortex-M3 Specifications

General IconGeneral
ArchitectureARMv7-M
Instruction SetThumb-2
Pipeline Stages3-stage
InterruptsNested Vectored Interrupt Controller (NVIC)
Interrupt ControllerNested Vectored Interrupt Controller (NVIC)
Memory Protection UnitOptional
Power ConsumptionVaries by implementation
Max Clock SpeedUp to 100 MHz
DebuggingJTAG and Serial Wire Debug (SWD)
Operating Voltage1.8V to 3.6V
Manufacturing ProcessVaries by implementation
Core Type32-bit

Related product manuals