Multiple Interrupt Servicing Control - NEC UPD703116 User Manual

32-bit single-chip microcontrollers
Table of Contents

Advertisement

7.6 Multiple Interrupt Servicing Control

Multiple interrupt servicing control is a process by which an interrupt request that is currently being serviced can be
interrupted during servicing if there is an interrupt request with a higher priority level, and the higher priority interrupt
request is acknowledged and serviced first.
If there is an interrupt request with a lower priority level than the interrupt request currently being serviced, that
interrupt request is held pending.
Maskable interrupt multiple servicing control is executed when interrupts are enabled (ID = 0). Thus, if multiple
interrupts are executed, it is necessary for interrupts to be enabled (ID = 0) even during an interrupt servicing routine.
If a maskable interrupt or a software exception is generated in a maskable interrupt or software exception service
program, it is necessary to save EIPC and EIPSW.
This is accomplished by the following procedure.
(1) Acknowledgement of maskable interrupts in service program
Service program of maskable interrupt or exception
...
...
• EIPC saved to memory or register
• EIPSW saved to memory or register
• EI instruction (interrupt acknowledgment enabled)
...
...
...
...
• DI instruction (interrupt acknowledgment disabled)
• Saved value restored to EIPSW
• Saved value restored to EIPC
• RETI instruction
CHAPTER 7 INTERRUPT/EXCEPTION PROCESSING FUNCTION
User's Manual U14492EJ5V0UD
← Maskable interrupt acknowledgment
193

Advertisement

Table of Contents
loading

Table of Contents