
Chapter 9 Interrupt Controller (INTC)
MPC5602P Microcontroller Reference Manual, Rev. 4
220
Freescale Semiconductor
updated with the preempting interrupt request’s vector when the interrupt request to the processor is
asserted. The INTVEC field retains that value until the next time the interrupt request to the processor is
asserted. The rest of handshaking process is described in
Section 9.4.1.1, “Software vector mode.
”
9.6.3.1.2
End of interrupt exception handler
Before the interrupt exception handling completes, INTC end-of-interrupt register (INTC_EOIR) must be written.When written,
the associated LIFO is popped so the preempted priority is restored into PRI of the INTC_CPR. Before it is written, the peripheral
or software configurable flag bit must be cleared so that the peripheral or software configurable interrupt request is negated.
NOTE
To ensure proper operation across all eSys MCUs, execute an
MBAR
or
MSYNC
instruction between the access to clear the flag bit and the write to
the INTC_EOIR.
When returning from the preemption, the INTC does not search for the peripheral or software settable
interrupt request whose ISR was preempted. Depending on how much the ISR progressed, that interrupt
request may no longer even be asserted. When PRI in INTC_CPR is lowered to the priority of the
preempted ISR, the interrupt request for the preempted ISR or any other asserted peripheral or software
settable interrupt request at or below that priority will not cause a preemption. Instead, after the restoration
of the preempted context, the processor will return to the instruction address that it was to next execute
before it was preempted. This next instruction is part of the preempted ISR or the interrupt exception
handler’s prolog or epilog.
Figure 9-10. Software vector mode handshaking timing diagram
0
1
0
Clock
Interrupt request to processor
Hardware vector enable
Interrupt vector
Interrupt acknowledge
Read INTC_IACKR
Write INTC_EOIR
INTVEC in INTC_IACKR
PRI in INTC_CPR
Peripheral interrupt request 100
0
108
0