System Integration Module (SIM)
Exception Control
MC68HC908MR16/MC68HC908MR32 — Rev. 4.0 Advance Information
MOTOROLA System Integration Module (SIM) 101
Figure 7-9. Interrupt Recovery
7.6.1.1 Hardware Interrupts
A hardware interrupt does not stop th e current instruction. P rocessing of
a hardware interrupt begins after completion of the current instruction.
When the current instruction is complete, the SIM checks all pending
hardware interrupts. If interrupts are not masked (I bit clear in the
condition code register), and if the corresponding interrupt enable bit is
set, the SIM proceeds with interrupt processing; otherwise, the next
instruction is fetched and executed.
If more than one interrupt is pending at the end of an instruction
execution, the highest priority interrupt is serviced first. Figure 7-10
demonstrates what happens when two interrupts are pending. If an
interrupt is pending upon exit from the original interrupt service routine,
the pending interrupt is serviced before the load-accumulator-from-
memory (LDA) instruction is executed.
Figure 7-10. Interrupt Recognition Example
MODULE
IDB
R/W
INTERRUPT
SP – 4 SP – 3 SP – 2 SP – 1 SP PC PC + 1
IAB
CCR A X PC – 1[7:0] PC – 1[15:8] OPCODE OPERAN D
I BIT
CLI
LDA
INT1
PULH
RTI
INT2
BACKGROUND ROUTINE#$FF
PSHH
INT1 INTERRUPT SERVICE ROUTINE
PULH
RTI
PSHH
INT2 INTERRUPT SERVICE ROUTINE