17.01.2013 Views

MIPS R10000 Microprocessor User's Manual - SGI TechPubs Library

MIPS R10000 Microprocessor User's Manual - SGI TechPubs Library

MIPS R10000 Microprocessor User's Manual - SGI TechPubs Library

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CPU Exceptions 339<br />

NMI Exception<br />

Cause<br />

Processing<br />

Servicing<br />

The NMI exception is caused by assertion of the SysNMI* signal.<br />

An NMI exception is not maskable.<br />

In R4400 processor, there is no way for software to differentiate between a Soft<br />

Reset exception and an NMI exception. In the <strong>R10000</strong> processor, a bit labelled<br />

NMI has been added to the Status register to distinguish between these two<br />

exceptions. Both Soft Reset and NMI exceptions set the SR bit and use the same<br />

exception vector. During an NMI exception, the NMI bit is set to 1; during a Soft<br />

Reset, the NMI bit is set to 0.<br />

When an NMI exception occurs, the SR bit of the Status register is set,<br />

distinguishing this exception from a Cold Reset exception.<br />

An exception caused by an NMI is taken at the instruction boundary. It does not<br />

abort any state machines, preserving the state of the processor for diagnosis. The<br />

Cause register remains unchanged and the system jumps to the NMI exception<br />

handler (see Table 17-1).<br />

An NMI exception preserves the contents of all registers, except for:<br />

• ErrorEPC register, which contains the PC<br />

• ERL bit of the Status register, which is set to 1<br />

• SR bit of the Status register, which is set to 1 on Soft Reset or an NMI;<br />

0 for a Cold Reset<br />

• BEV bit of the Status register, which is set to 1<br />

• TS bit of the Status register, which is set to 0<br />

• PC is set to the reset vector 0xFFFF FFFF BFC0 0000<br />

• clears any pending Cache Error exceptions<br />

The NMI can be used for purposes other than resetting the processor while<br />

preserving cache and memory contents. For example, the system might use an<br />

NMI to cause an immediate, controlled shutdown when it detects an impending<br />

power failure.<br />

It is not normally possible to continue program execution after returning from this<br />

exception, since an NMI can occur during another error exception.<br />

<strong>MIPS</strong> <strong>R10000</strong> <strong>Microprocessor</strong> <strong>User's</strong> <strong>Manual</strong> Version 2.0 of January 29, 1997

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!