CHAPTER 8 INTC
Preliminary User’s Manual A14874EJ3V0UM
219
Figure 8-6. Servicing Example in Which Another Interrupt Request Is Issued During Interrupt Servicing (2/2)
Interrupt request<l>
(level 2)
→
Servicing of <n>
Servicing of <l>
Servicing of <m>
Servicing of <k>
Main routine
Interrupt request<i>
(level 2)
→
Interrupt request <j> is held pending because
its priority is lower than that of <i>.
Interrupt request <k> that occurs after <j> is
acknowledged because it has the higher priority.
Servicing of <j>
Interrupt request<k>
(level 1)
→
EI
EI
Servicing of <i>
Interrupt request<j>
(level 3)
→
Interrupt request<m>
(level 3)
→
Interrupt request<n>
(level 1)
→
Interrupt request<o>
(level 3)
→
Servicing of <o>
EI
Servicing of <p>
EI
Servicing of <q>
EI
Servicing of <r>
EI
Interrupt request<s>
(level 1)
→
Servicing of <u>
Servicing of <s>
Servicing of <t>
Interrupt request<t>
(level 2
Note 1
)
→
Interrupt request<u>
(level 2
Note 2
)
→
Interrupt requests <m> and <n> are held pending
because servicing of <l> is performed in the
interrupt disabled status.
Pending interrupt requests are acknowledged after
servicing of interrupt request <l>.
At this time, interrupt request <n> is acknowledged
first even though <m> has occurred first because the
priority of <n> is higher than that of <m>.
If levels 3 to 0 are acknowledged
Pending interrupt requests <t> and <u> are
acknowledged after servicing of <s>.
Because the priorities of <t> and <u> are the same,
<u> is acknowledged first according to the default priority,
regardless of the order in which the interrupt requests
have been generated.
Interrupt request<p>
(level 2)
→
Interrupt request<q>
(level 1)
→
Interrupt request<r>
(level 0)
→
Notes 1.
Default priority is lower.
2.
Default priority is higher.