![](http://datasheet.mmic.net.cn/290000/XPC801ZP25_datasheet_16187868/XPC801ZP25_102.png)
The PowerPC Core
MOTOROLA
MPC801 USER’S MANUAL
6-11
6
6.2.5 Processing An Interrupt
The following table shows the significant events that occur when an interrupt is processed.
Table 6-3. Special Ports to the Machine State Register Bits
MNEMONIC
MSR
EE
MSR
RI
USED FOR
EIE
1
1
External Interrupt Enable:
End of Interrupt Handler’s Prologue, Enable Nested
External Interrupts;
End of Critical Code Segment in Which External Interrupts
Were Disabled
EID
0
1
External Interrupt Disable, But Other Interrupts Are Recoverable:
End of Interrupt Handler’s Prologue, Keep External
Nested Interrupts Disabled;
Start of Critical Code Segment in Which External
Interrupts Are Disabled
NRI
0
0
Nonrecoverable Interrupt:
Start of Interrupt Handler’s Epilogue
Table 6-4. Interrupt Latency
TIME POINT
FETCH
ISSUE
INSTRUCTION COMPLETE
KILL PIPELINE
A
Faulting Instruction
Issue
B
Instruction Complete
and All Previous
Instructions Complete
C
Start Fetch
Handler
Kill Pipeline
D
≤
B + 3 Clocks
E
First Instruction of
Handler Issued
NOTES: 1.
At time point A an instruction is issued that is destined to cause an interrupt.
2.
At time point B the excepting instruction has reached the head of the history queue, thus implying that all instructions
preceding it in the code stream have finished execution without generating an interrupt. Also, the excepting instruction itself
has completed execution. At this time the exception is “recognized” and exception processing begins. If, at this point, the
instruction had not generated an exception, it would have been retired.
3.
At time point C the sequencer starts to fetch the interrupt handler’s first instruction.
4.
By time point D the state of the machine prior to the issue of the excepting instruction is restored (the machine is restored to
its state at the time.
5.
At time point E the MSR and instruction pointer of the executing process have been saved and control has been transferred
to the interrupt handler routine.