
Chapter 5. System Status Signals
5-9
If MSR[RI] is set, the machine check exception may still be unrecoverable in the sense that
execution cannot resume in the same context that existed before the exception.
When a machine check exception is taken, instruction execution resumes at offset 0x00200.
5.3.2.1 Machine Check Exception (0x00200)—
PowerPC 601 Processor
The 601 conditionally initiates a machine check exception after detecting the assertion of
the TEA signal, which indicates that a bus error occurred and the system terminates the
current transaction. One clock cycle after TEA is asserted, the data bus signals go to the
high-impedance state; however, data entering the GPR or the cache is not invalidated.
If the MSR[ME] bit is set, the exception is recognized and handled; otherwise, the 601
attempts to enter an internal checkstop condition. This may not lead to a checkstop
depending upon the state of the various checkstop enable control bits in the HID0 register.
These are described in Section 5.3.2.2.1, “Checkstop Sources and Enables
Register—HID0.”
If MSR[ME], HID0[CE], and HID0[EM] bits are cleared (that is, when both the master
checkstop and the machine check checkstops are disabled), the machine check exception is
taken.
In general, it is expected that the TEA signal would be used by a memory controller to
indicate a memory parity error or an uncorrectable memory ECC error. Note that the
resulting machine check exception is imprecise and has priority over any exceptions caused
by the instruction that generated the bus operation.
Table 5-6. Machine Check Exception—Register Settings
Register
Setting Description
SRR0
On a best-effort basis, implementations can set this to an EA of some instruction that was
executing or about to be executing when the machine check condition occurred.
SRR1
Bit 30 is loaded from MSR[RI]
1
if the processor is in a recoverable state. Otherwise cleared. The
setting of all other SRR1 bits is implementation-dependent.
MSR
POW
1
TGPR
2
0
ILE
1
EE
0
—
0
PR
FP
ME
3
—
FE0
0
0
0
SE
BE
FE1
IP
4
0
0
0
—
IR
5
DR
6
0
RI
1
LE
7
0
0
Set to value of ILE
1
Not implemented on the 601
3
603 only
3
Note that when a machine check exception is taken, the exception handler should set MSR[ME] as soon as it is
practical to handle another machine check exception. Otherwise, subsequent machine check exceptions cause the
processor to automatically enter the checkstop state.
4
Identified as EP on the 601
5
Identified as IT on the 601
6
Identified as DT on the 601
7
Not implemented on the 601. Control of little-endian mode on the 601 is provided by HID0[28], the LM bit.