
5-32
G2 PowerPC Core Reference Manual
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
Exception Definitions
when the exception bit is changed and not on subsequent operations with the same
exception. See Chapter 7, “Instruction Timing,” for a full description of completion
serialization.
When an exception is enabled in the FPSCR, the instruction traps to the emulation trap
exception vector without updating the FPSCR or the target FPR. The emulation trap
exception handler is required to complete the instruction. The emulation trap exception
handler is invoked regardless of the FE setting in the MSR.
The two IEEE floating-point imprecise modes, defined by the PowerPC architecture when
MSR[FE0]
≠
MSR[FE1], are treated as precise exceptions (that is, MSR[FE0] = MSR[FE1]
= 1). This is regardless of the setting of MSR[NI].
For the highest and most predictable floating-point performance, all exceptions should be
disabled in the FPSCR and MSR. For more information about the program exception, see
the
Programming Environments Manual
.
5.5.7.2
Illegal, Reserved, and Unimplemented Instructions
Program Exceptions
In accordance with the PowerPC architecture, the G2 core considers all instructions defined
for 64-bit implementations and unimplemented optional instructions, such as
fsqrt
,
eciwx
,
and
ecowx
as illegal and takes a program exception when one of these instructions is
encountered. Likewise, if a supervisor-level instruction is encountered when the processor
is in user-level mode, a privileged instruction-type program exception is taken.
5.5.8
Floating-Point Unavailable Exception (0x00800)
A floating-point unavailable exception occurs when no higher priority exception exists, an
attempt is made to execute a floating-point instruction (including floating-point load, store,
and move instructions), and the floating-point available bit in the MSR is disabled
(MSR[FP] = 0). Register settings for this exception are described in Chapter 6,
“Exceptions,” in the
Programming Environments Manual
When a floating-point unavailable exception is taken, instruction execution for the handler
begins at offset 0x00800 from the physical base address indicated by MSR[IP].
5.5.9
Decrementer Exception (0x00900)
The G2 core implements the decrementer interrupt exception as it is defined in the
PowerPC architecture. A decrementer exception request is made when the decrementer
counts down through zero. The request is held until there are no higher priority exceptions
and MSR[EE] = 1. At this point the decrementer exception is taken. If multiple
decrementer exception requests are received before the first can be reported, only one
exception is reported. The occurrence of a decrementer exception cancels the request.
F
Freescale Semiconductor, Inc.
n
.