
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