
CHAPTER 19 INTERRUPT FUNCTIONS
409
User
’
s Manual U14260EJ3V1UD
19.4.2 Maskable interrupt request acknowledgment operation
A maskable interrupt request becomes acknowledgeable when an interrupt request flag is set to 1 and the mask
(MK) flag corresponding to that interrupt request is cleared to 0. A vectored interrupt request is acknowledged if
interrupts are enabled (when the IE flag is set to 1). However, a low-priority interrupt request is not acknowledged
during servicing of a higher priority interrupt request (when the ISP flag is reset to 0).
Moreover, even if the EI instruction is executed during execution of a non-maskable interrupt servicing program,
neither non-maskable interrupt requests nor maskable interrupt requests are acknowledged.
The times from generation of a maskable interrupt request until interrupt servicing is performed are listed in Table
19-4 below.
For the interrupt request acknowledgment timing, see
Figures 19-11
and
19-12
.
Table 19-4. Times from Generation of Maskable Interrupt Request Until Servicing
Minimum Time
Maximum Time
Note
When
××
PR = 0
7 clocks
32 clocks
When
××
PR = 1
8 clocks
33 clocks
Note
If an interrupt request is generated just before a divide instruction, the wait time becomes longer.
Remark
1 clock: 1/f
CPU
(f
CPU
: CPU clock)
If two or more maskable interrupt requests are generated simultaneously, the request with a higher priority level
specified by the priority specification flag is acknowledged first. If two or more interrupt requests have the same priority
level, the request with the highest default priority is acknowledged first.
An interrupt request that is held pending is acknowledged when it becomes acknowledgeable.
Figure 19-10 shows the interrupt request acknowledgment algorithm.
If a maskable interrupt request is acknowledged, the contents are saved into the stacks in the order of PSW, then
PC, the IE flag is reset (0), and the contents of the priority specification flag corresponding to the acknowledged
interrupt are transferred to the ISP flag. Further, the vector table data determined for each interrupt request is loaded
into the PC and branched.
Return from an interrupt is possible using the RETI instruction.