4-22
MPC7400 RISC Microprocessor Users Manual
Exception DeTnitions
4.6.7 Program Exception (0x00700)
The MPC7400 implements the program exception as it is deTned by the PowerPC
architecture (OEA). A program exception occurs when no higher priority exception exists
and one or more of the exception conditions deTned in the OEA occur.
The MPC7400 invokes the system illegal instruction program exception when it detects any
instruction from the illegal instruction class. The MPC7400 fully decodes the SPR Teld of
the instruction. If an undeTned SPR is speciTed, a program exception is taken.
The UISA deTnes
mtspr
and
mfspr
with the record bit (Rc) set as causing a program
exception or giving a boundedly-undeTned result. In the MPC7400, the appropriate
condition register (CR) should be treated as undeTned. Likewise, the PowerPC architecture
states that the Floating Compared Unordered (
fcmpu
) or Floating Compared Ordered
(
fcmpo
) instructions with the record bit set can either cause a program exception or provide
a boundedly-undeTned result. In the MPC7400, the BF Teld in an instruction encoding for
these cases is considered undeTned.
The MPC7400 does not support either of the two oating-point imprecise modes supported
by the PowerPC architecture. Unless exceptions are disabled (MSR[FE0] = MSR[FE1] =
0), all oating-point exceptions are treated as precise.
When a program exception is taken, instruction fetching resumes at offset 0x00700 from
the physical base address indicated by MSR[IP]. Chapter 6, òExceptions,ó in
The
Programming Environments Manual
describes register settings for this exception.
4.6.8 Floating-Point Unavailable Exception (0x00800)
The oating-point unavailable exception is implemented as deTned in the PowerPC
architecture. A oating-point unavailable exception occurs when no higher priority
exception exists, an attempt is made to execute a oating-point instruction (including
oating-point load, store, or move instructions), and the oating-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 oating-point unavailable exception is taken, instruction fetching resumes at offset
0x00800 from the physical base address indicated by MSR[IP].
4.6.9 Decrementer Exception (0x00900)
The decrementer exception is implemented in the MPC7400 as it is deTned by the PowerPC
architecture. The decrementer exception occurs when no higher priority exception exists, a
decrementer exception condition occurs (for example, the decrementer register has
completed decrementing), and MSR[EE] = 1. In the MPC7400, the decrementer register is
decremented at one fourth the bus clock rate. Register settings for this exception are
described in Chapter 6, òExceptions,ó in
The Programming Environments Manual.