
INTERRUPT STRUCTURE
S3C880A/F880A
5-6
ENABLE/DISABLE INTERRUPT INSTRUCTIONS (EI, DI)
The Enable Interrupts (EI) instruction globally enables the interrupt structure. All interrupts are serviced as they
occur, and according to established priorities. The system initialization routine that is executed following a reset
must always contain an EI instruction (assuming one or more interrupts are used in the application).
During the normal operation, you can execute the DI (Disable Interrupt) instruction at any time to globally disable
interrupt processing. The EI and DI instructions change the value of bit 0 in the SYM register. Although you can
manipulate SYM.0 directly to enable or disable interrupts, we recommend that you use the EI and DI instructions
instead.
SYSTEM-LEVEL INTERRUPT CONTROL REGISTERS
In addition to the control registers for specific interrupt sources, four system-level control registers control
interrupt processing:
— Each interrupt level is enabled or disabled (masked) by bit settings in the interrupt mask register (IMR).
— Relative priorities of interrupt levels are controlled by the interrupt priority register (IPR).
— The interrupt request register (IRQ) contains interrupt pending flags for each level.
— The system mode register (SYM) dynamically enables or disables global interrupt processing. SYM settings
also enable fast interrupts and control external interface, if implemented.
Table 5-2. Interrupt Control Register Overview
Control Register
ID
R/W
Function Description
System mode register
SYM
R/W
Global interrupt processing enable and disable, fast interrupt
processing.
Interrupt mask register
IMR
R/W
Bit settings in the IMR register enable and disable interrupt
processing for each of the seven recognized interrupt levels,
IRQ0–IRQ4, IRQ6, and IRQ7.
Interrupt priority register
IPR
R/W
Controls the relative processing priorities of the interrupt
levels. For the S3C880A/F880A, the seven levels are
organized into three groups: A, B, and C. Group A includes
IRQ0 and IRQ1, group B is IRQ2, IRQ3, and IRQ4, and group
C is IRQ6 and IRQ7.
Interrupt request register
IRQ
R
This register contains a request pending bit for each interrupt
level.