Fast interrupt request (FIQ) is a specialized type of interrupt request, which is a standard technique used in computer CPUs to deal with events that need to be processed as they occur, such as receiving data from a network card, or keyboard or mouse actions. FIQs are specific to the ARM architecture, which supports two types of interrupts; FIQs for fast, low-latency interrupt handling, and standard interrupt requests (IRQs), for more general interrupts.[1][2]
An FIQ takes priority over an IRQ in an ARM system. Only one FIQ source at a time is supported. This helps reduce interrupt latency as the interrupt service routine can be executed directly without determining the source of the interrupt. A context save is not required for servicing an FIQ since it has its own set of banked registers. This reduces the overhead of context switching.
FIQs are often used for data transfers such as direct memory access operations.
FIQs can be disabled by clearing the F bit in the CPSR (Current Program Status Register).
References
edit- ^ "Loading this site". Archived from the original on 2008-05-17. Retrieved 2014-02-10.
- ^ "Computers as Components: Principles of Embedded Computing System Design (3rd Edition)". Archived from the original on 22 Feb 2014.
External links
edit- Debugging ARM kernels using fast interrupts, LWN.net, May 29, 2014, by Daniel Thompson