13.07.2015 Views

Cortex-A8 R2P2.pdf - ARM Information Center

Cortex-A8 R2P2.pdf - ARM Information Center

Cortex-A8 R2P2.pdf - ARM Information Center

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Programmer’s ModelIrrespective of whether exception entry is from <strong>ARM</strong> state, Thumb state, or Java state,an FIQ handler returns from the interrupt by executing:SUBS PC,R14_fiq,#4You can disable FIQ exceptions within a privileged mode by setting the CPSR F flag.When the F flag is cleared to 0, the processor checks for a LOW level on the output ofthe nFIQ register at the end of each instruction.The FW bit and FIQ bit in the SCR register configure the FIQ as:• nonmaskable in Nonsecure state (FW bit in SCR)• branch to either current FIQ mode or Monitor mode (FIQ bit in SCR).FIQs and IRQs are disabled when an FIQ occurs. You can use nested interrupts but it isup to you to save any corruptible registers and to re-enable FIQs and interrupts.2.15.5 Interrupt requestThe IRQ exception is a normal interrupt caused by a LOW level on the nIRQ input. IRQhas a lower priority than FIQ, and is masked on entry to an FIQ sequence.Irrespective of whether exception entry is from <strong>ARM</strong> state, Thumb state, or Java state,an IRQ handler returns from the interrupt by executing:SUBS PC,R14_irq,#4You can disable IRQ exceptions within a privileged mode by setting the CPSR I flag.When the I flag is cleared to 0, the processor checks for a LOW level on the output ofthe nIRQ register at the end of each instruction.IRQs are disabled when an IRQ occurs. You can use nested interrupts but it is up to youto save any corruptible registers and to re-enable IRQs.The IRQ bit in the SCR register configures the IRQ to branch to either the current IRQmode or to the Monitor mode.2.15.6 AbortsAn abort is an exception that indicates to the operating system that the value associatedwith a memory access is invalid. Attempting to access invalid instruction or datamemory typically causes an abort.An abort is either:• an internal abort signaled by the MMU• an internal abort signaled by an error condition in the L1 or L2 cache• an external abort signaled by the AXI interface because of an AXI error response.<strong>ARM</strong> DDI 0344E Copyright © 2006-2008 <strong>ARM</strong> Limited. All rights reserved. 2-37

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!