Not all exceptions can occur at the same time, however.
Undefined instructions and SWIs are mutually exclusive, as they each
correspond to particular (non-overlapping) decoding of the current
instruction.
If a data abort occurs at the same time as FIRQ and the FIRQ is enabled
(that is, the CPSR F flag is clear), the data abort takes priority. ARM7TDMI
enters the data abort handler and immediately goes to the FIRQ vector. A
normal return from FIRQ causes the data abort handler to resume
execution.
Placing data abort at a higher priority than FIRQ is necessary to ensure
that the transfer error does not escape detection. The time for this
exception entry should be added to worst-case FIRQ latency
calculations.
Exception vector table
All exceptions result in the ARM processor vectoring to an address in low memory,
using the exception vector table. The exception vector table always exists and always
starts at base address 0.
Vector
address
'h0
'h4
'h8
'hC
'h10
'h14
'h18
'h1C
Table 17: Exception vector table
Vector
Description
RESET
Reset vector; for initialization and startup
Undefined
Undefined instruction encountered
SWI
Software interrupt; used for entry point into the kernel
Abort (prefetch)
Bus error (no response or error) fetching instructions
Abort (data)
Bus error (no response or error) fetching data
Reserved
Reserved
IRQ
Interrupt from ARM7TDMI interrupt controller
FIRQ
Fast interrupt from ARM7TDMI controller
W o r k i n g w i t h t h e C P U
w w w . d i g i e m b e d d e d . c o m
3 3
Need help?
Do you have a question about the NS7520B-1-C36 and is the answer not in the manual?