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.

246 Chapter 14.<br />

14.10 Status Register (12)<br />

The Status register (SR) is a read/write register that contains the operating mode,<br />

interrupt enabling, and the diagnostic states of the processor. The following list<br />

describes the more important Status register fields; Figure 14-11 shows the format<br />

of the entire register, and Table 14-10 describes the Status register fields.<br />

Some of the important fields include:<br />

• The 4-bit Coprocessor Usability (CU) field controls the usability of 4<br />

possible coprocessors. Regardless of the CU0 bit setting, CP0 is always<br />

usable in Kernel mode. The XX bit enables the <strong>MIPS</strong> IV ISA in User<br />

mode.<br />

• By default, the <strong>R10000</strong> processor implements the same user instruction<br />

set as the R4400 processor. To enable execution of the <strong>MIPS</strong> IV<br />

instructions in User mode, the <strong>MIPS</strong> IV User Mode bit, (XX) of the CP0<br />

Status register must be set.<br />

The <strong>MIPS</strong> IV instruction extension uses COP1X as the opcode; this designation<br />

was COP3 in the R4400 processor. For this reason the CU3 bit is omitted in the<br />

<strong>R10000</strong> processor, and is used as the XX bit. In Kernel and Supervisor modes,<br />

the state of the XX bit is ignored, and <strong>MIPS</strong> IV instructions are always<br />

available.<br />

User<br />

Mode bit settings are shown in Table 14-9; dashes in the table represent don’t<br />

cares.<br />

Table 14-9 ISA and Status Register Settings for User, Supervisor and<br />

Kernel Mode Operations<br />

Mode UX SX KX XX <strong>MIPS</strong> II <strong>MIPS</strong> III <strong>MIPS</strong> IV<br />

0 - - 0 Yes No No<br />

0 - - 1 Yes No Yes<br />

1 - - 0 Yes Yes No<br />

1 - - 1 Yes Yes Yes<br />

Supervisor<br />

-<br />

-<br />

0<br />

1<br />

-<br />

-<br />

-<br />

-<br />

Yes<br />

Yes<br />

No<br />

Yes<br />

Yes<br />

Yes<br />

Kernel - - - - Yes Yes Yes<br />

NOTE: Operation with the <strong>MIPS</strong> IV ISA does not assume or require that the<br />

<strong>MIPS</strong> III instruction set or 64-bit addressing be enabled — KX, SX and UX may<br />

all be set to zero.<br />

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

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

Saved successfully!

Ooh no, something went wrong!