
4-32
MPC603e & EC603e RISC Microprocessors User's Manual
MOTOROLA
4.5.11 Trace Exception (0x00D00)
The trace exception is taken under one of the following conditions:
When MSR[SE] is set, a single-step instruction trace exception is taken when no
higher priority exception exists and any instruction (other than
rfi
or
isync
) is
successfully completed. Note that other PowerPC processors will take the trace
exception on
isync
instructions (when MSR[SE] is set); the 603e does not take the
trace exception on
isync
instructions. Single-step instruction trace mode is described
in Section 4.5.11.1, “Single-Step Instruction Trace Mode.”
When MSR[BE] is set, the branch trace exception is taken after each branch
instruction is completed.
The 603e deviates from the architecture by not taking trace exceptions on
isync
instructions. Single-step instruction trace mode is described in Section 4.5.11.2,
“Branch Trace Mode.”
Successful completion implies that the instruction caused no other exceptions. A trace
exception is never taken for an
sc
instruction or for a trap instruction that takes a trap
exception.
MSR[SE] and MSR[BE] are cleared when the trace exception is taken. In the normal use
of this function, MSR[SE] and MSR[BE] are restored when the exception handler returns
to the interrupted program using an
rfi
instruction.
Register settings for the trace mode are described in Table 4-15.
Table 4-15. Trace Exception—Register Settings
Note that a trace or instruction address breakpoint exception condition generates a soft stop
instead of an exception if soft stop has been enabled by the JTAG/COP logic. If trace and
breakpoint conditions occur simultaneously, the breakpoint conditions receive higher
priority.
When a trace exception is taken, instruction execution for the handler begins as offset
0x00D00 from the base address indicated by MSR[IP].
Register
Setting Description
SRR0
Set to the address of the instruction following the one for which the trace exception was generated.
SRR1
0–15
16–31 Loaded from bits 16–31 of the MSR
Cleared
MSR
POW 0
TGPR0
ILE
IP
—
—
EE
PR
FP
1
ME
0
0
0
—
FE0
2
0
SE
BE
FE1
2
0
0
0
IR
DR
RI
LE
0
0
0
Set to value of ILE
Notes:
1. The floating-point available bit is always cleared to 0 on the EC603e microprocessor.
2. FE0 and FE1 are not supported on the EC603e microprocessor.