20.02.2013 Views

Sable CPU Module Specification

Sable CPU Module Specification

Sable CPU Module Specification

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

Copyright © 1993 Digital Equipment Corporation.<br />

Note that PALcode at PAL entry points of higher priority than DTBMISS must unlock<br />

possible MMCSR IPR and VA IPR locks.<br />

Table 90: PAL Entry Points<br />

Entry Name Time Offset(Hex) Cause<br />

RESET anytime 0000<br />

MCHK pipe_stage[7] 0020 Uncorrected hardware error.<br />

ARITH anytime 0060 Arithmetic exception.<br />

INTERRUPT anytime 00E0 Includes corrected hardware error.<br />

D-stream errors pipe_stage[6] 01E0, 08E0, 09E0,<br />

11E0<br />

See Table 91.<br />

ITB_MISS pipe_stage[5] 03E0 ITB miss.<br />

ITB_ACV pipe_stage[5] 07E0 I-stream access violation.<br />

CALLPAL pipe_stage[5] 2000,40,80 thru 3FC0 128 locations based on instruction[7,5:0].<br />

If bit[7] equals zero and CM does not equal<br />

kernel mode then an OPDEC exception<br />

occurs.<br />

OPCDEC pipe_stage[5] 13E0 Reserved or privileged opcode.<br />

FEN pipe_stage[5] 17E0 FP op attempted with :<br />

FP instructions disabled via ICCSR FPE<br />

bit<br />

FP IEEE round to +/- infinity<br />

FP IEEE with datatype field other than<br />

S,T,QW<br />

PALcode functions are implemented via the CALL_PAL instruction. CALL_PAL instructions<br />

cause exceptions in the hardware. As with all exceptions, the EXC_ADDR<br />

register is loaded by hardware with a possible return address. CALL_PAL exceptions<br />

do not load the EXC_ADDR register with the address of the CALL_PAL instruction.<br />

Rather, they load the EXC_ADDR register with the address of the instruction following<br />

the CALL_PAL. For this reason, the 21064 PALcode supporting the desired<br />

PAL mode functions need not increment the EXC_ADDR register before executing a<br />

HW_REI instruction to return to native mode. This feature requires special handling<br />

in the arithmetic trap and machine check PALcode flows for the 21064.<br />

To improve the speed of execution, a limited number of CALL_PAL instructions are<br />

directly supported in hardware with dispatches to specific address offsets. The 21064<br />

provides the first 64 priviledged and 64 unpriviledged CALL_PAL instructions with<br />

larger code regions of 64 bytes. This produces hardware PAL entry points as described<br />

below.<br />

Priviledged CALL_PAL Instructions [00000000:0000003F]<br />

Offset(HEX) = 2000 + ([5:0] shift left 6)<br />

Unpriviledged CALL_PAL Instructions [00000080:000000BF]<br />

Offset(HEX) = 3000 + ([5:0] shift left 6)<br />

Cobra Specific ( Privileged Architecture Library Code ) PALcode 229

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

Saved successfully!

Ooh no, something went wrong!