17.3 TLB Refill Vector Selection

NMI Exception


Cause

The NMI exception is caused by assertion of the SysNMI* signal.

An NMI exception is not maskable.

In R4400 processor, there is no way for software to differentiate between a Soft Reset exception and an NMI exception. In the R10000 processor, a bit labelled NMI has been added to the Status register to distinguish between these two exceptions. Both Soft Reset and NMI exceptions set the SR bit and use the same exception vector. During an NMI exception, the NMI bit is set to 1; during a Soft Reset, the NMI bit is set to 0.

Processing

When an NMI exception occurs, the SR bit of the Status register is set, distinguishing this exception from a Cold Reset exception.

An exception caused by an NMI is taken at the instruction boundary. It does not abort any state machines, preserving the state of the processor for diagnosis. The Cause register remains unchanged and the system jumps to the NMI exception handler (see Table 17-1).

An NMI exception preserves the contents of all registers, except for:

Servicing

The NMI can be used for purposes other than resetting the processor while preserving cache and memory contents. For example, the system might use an NMI to cause an immediate, controlled shutdown when it detects an impending power failure.

It is not normally possible to continue program execution after returning from this exception, since an NMI can occur during another error exception.




Copyright 1995, MIPS Technologies, Inc. -- 29 JAN 96


Generated with CERN WebMaker