
CHAPTER  19   INTERRUPT/EXCEPTION  PROCESSING  FUNCTION
User
’
s Manual  U15862EJ3V0UD
616
Figure 19-1.  Acknowledging Non-Maskable Interrupt Requests (2/2)
(b) If a new NMI request is generated during a non-maskable interrupt servicing
Non-maskable
interrupt currently
being serviced
Non-maskable interrupt request newly generated during non-maskable interrupt servicing
NMI
INTWDT1
INTWDT2
NMI
·
 Generation of NMI request during NMI processing
·
 Generation of INTWDT request during NMI processing
(NP = 1 state prior to INTWDT request is maintained)
·
 Generation of INTWDT request during NMI processing
(Set NP = 0 before INTWDT request)
·
 Generation of INTWDT request during NMI processing
(Set NP = 0 after INTWDT request)
·
Generation of INTWDT2 request during NMI processing
 Main routine
NMI request
→
NMI processing
(Held pending) 
NMI processing
NMI request
→
(Hold pending)
 Main routine
System reset
NMI request
→
NMI request
→
NMI processing
INTWDT
processing
INTWDT 
request
→
(Hold pending)
 Main routine
System reset
NMI request
→
NMI request
→
processing
INTWDT
processing
INTWDT 
request
→
NP = 0
→
NP = 0
→
 Main routine
System reset
INTWDT2
→
request
NMI processing
INTWDT2
processing
·
Generation of INTWDT2 request during INTWDT1 processing
 Main routine
System reset
→
INTWDT1
INTWDT1
INTWDT2
processing
INTWDT2 request
→
 Main routine
System reset
NMI
INTWDT
processing
→
(Hold pending)
request
→
(Invalid)
request
·
Generation of INTWDT request during INTWDT processing
 Main routine
System reset
INTWDT
processing
·
 Generation of NMI request during INTWDT processing
INTWDT1
INTWDT2
 Main routine
System reset
INTWDT 
request
→
INTWDT 
request
→
INTWDT
processing
NMI request
→
(Invalid)
NMI request
→
(Invalid)
·
Generation of INTWDT2 request during INTWDT2 processing
·
Generation of INTWDT1 request during INTWDT2 processing
 Main routine
System reset
INTWDT2
processing
 Main routine
System reset
INTWDT2
processing
·
Generation of NMI request during INTWDT2 processing
 Main routine
System reset
INTWDT2 request
→
INTWDT2 request
→
INTWDT2
processing
→
(Invalid)
INTWDT1
→
(Invalid)
INTWDT2