English
Language : 

MC68HC912BD32 Datasheet, PDF (100/292 Pages) Freescale Semiconductor, Inc – Advance Information
Freescale Semiconductor, Inc.
Resets and Interrupts
Register Stacking
Once enabled, an interrupt request can be recognized at any time after
the I bit in the CCR is cleared. When an interrupt service request is
recognized, the CPU responds at the completion of the instruction being
executed. Interrupt latency varies according to the number of cycles
required to complete the instruction. Some of the longer instructions can
be interrupted and will resume normally after servicing the interrupt.
When the CPU begins to service an interrupt, the instruction queue is
cleared, the return address is calculated, and then it and the contents of
the CPU registers are stacked as shown in Table 18.
Table 18 Stacking Order on Entry to Interrupts
Memory Location
SP – 2
SP – 4
SP – 6
SP – 8
SP – 9
CPU Registers
RTNH : RTNL
YH : YL
XH : XL
B:A
CCR
After the CCR is stacked, the I bit (and the X bit, if an XIRQ interrupt
service request is pending) is set to prevent other interrupts from
disrupting the interrupt service routine. The interrupt vector for the
highest priority source that was pending at the beginning of the interrupt
sequence is fetched, and execution continues at the referenced location.
At the end of the interrupt service routine, an RTI instruction restores the
content of all registers from information on the stack, and normal
program execution resumes. If another interrupt is pending at the end of
an interrupt service routine, the register unstacking and restacking is
bypassed and the vector of the pending interrupt is fetched.
MC68HC912BD32 Rev 1.0
Resets and Interrupts
For More Information On This Product,
Go to: www.freescale.com
8-resets