RESETS, INTERRUPTS, AND LOW POWER MODES
MOTOROLA
TECHNICAL DATA
9-9
9
9.2.1 Software Interrupt (SWI)
The software interrupt is executed in the same manner as any other instruction and
will take precedence over interrupts only if the other interrupts are masked (I and X bits
in the condition code register set). The SWI instruction is executed in a manner similar
to other maskable interrupts in that it sets the I bit, CPU registers are stacked, etc.
NOTE
The SWI instruction will not be fetched if an interrupt is pending.
However, once an SWI instruction has begun, no interrupt can be
honored until the SWI vector has been fetched.
Figure 9-3 Interrupt Stacking Order
9.2.2 Illegal Opcode Trap
Since not all possible opcodes or opcode sequences are defined, an illegal opcode de-
tection circuit has been included. When an illegal opcode is detected, an interrupt is
requested to the illegal opcode vector. The illegal opcode vector should never be left
uninitialized. It is a good idea to reinitialize the stack pointer as a result of an illegal
opcode interrupt so repeated execution of illegal opcodes does not cause stack over-
runs.
9.2.3 Interrupt Mask Bits in Condition Code Register
Upon reset, both the X bit and the I bit are set to inhibit all maskable interrupts and
XIRQ. After minimum system initialization, software may clear the X bit by a TAP in-
struction, thus enabling XIRQ interrupts. Thereafter software cannot set the X bit so
an XIRQ interrupt is effectively a nonmaskable interrupt. Since the operation of the I
Table 9-4 SCI Serial System Interrupts
Interrupt Cause
Local Mask
Receive Data Register Full
RIE
Receiver Overrun
RIE
Idle Line Detect
ILIE
Transmit Data Register Empty
TIE
Transmit Complete
TCIE
PCL
SP
— SP BEFORE INTERRUPT
PCH
SP–1
IYL
SP–2
IYH
SP–3
IXL
SP–4
IXH
SP–5
ACCA
SP–6
ACCB
SP–7
CCR
SP–8
SP–9
— SP AFTER INTERRUPT
70
F
re
e
sc
a
le
S
e
m
ic
o
n
d
u
c
to
r,
I
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
c
..
.