- 2072 Magh · 5 marks
Interrupt processing steps
Short answer
When an interrupt request arrives, the processor finishes the current instruction, sends interrupt acknowledge (INTA), receives the vector if available, pushes PC and flags onto the stack, and disables further interrupts. It uses the vector to load the ISR from the vector table, executes the ISR to service the device, then pops context and executes a return-from-interrupt to resume the main program.
Describe the major steps to be followed in interrupt processing by a processor.
When an interrupt request arrives, the processor follows these major steps:
- Receive and check the request: the interrupt controller or pin raises IRQ. The processor finishes the current instruction and checks that the interrupt is enabled (not masked) and has enough priority.
- Acknowledge: the processor sends an interrupt-acknowledge (INTA) signal to the device or controller.
- Identify the source: the processor gets the interrupt vector number from the device (vectored) or uses a fixed address.
- Save the context: the PC (return address) and the flags/status register are pushed onto the stack. Other registers are saved by the ISR if needed (PUSH).
- Disable further interrupts: (optional) to protect the ISR from lower-priority interrupts.
- Find the ISR address: use the vector to look up the interrupt vector table (IVT) and load the ISR address into the PC.
- Execute the ISR: service the device (read or write the data, clear the interrupt flag).
- Restore the context: registers are restored with POP, then a return-from-interrupt instruction pops the flags and PC from the stack and re-enables interrupts.
- Resume the interrupted program at the saved address.
IRQ -> finish instruction -> INTA -> get vector -> PUSH PC/flags
-> load ISR from IVT -> run ISR -> POP -> RETI -> resume
✓ Answer checked by Claude Opus 5.5 (high effort)
Related questions
- Single-purpose processor for power · Embedded System, chapter 2 · asked 2×
- Sequence of steps when interrupt occurs · Microprocessor, chapter 5 · asked 2×
- Interrupt processing in 8086 · Microprocessor, chapter 5 · asked 3×
- Interrupt vs polling; interrupts in 8085 · Microprocessor, chapter 5
- Steps of grounding mat design · Power Plant Design, chapter 4 · asked 5×