Compaq EV67 User Manual

Page of 356
Alpha 21264/EV67 Hardware Reference Manual
Privileged Architecture Library Code
6–13
PALcode Entry Points
Each CALL_PAL instruction includes a function field that is used to calculate the PC of 
its associated PALcode entry point. The PALcode OPCDEC exception flow will be 
invoked if the CALL_PAL function field satisfies any of the following requirements:
Is in the range of 40
16
 to 7F
16
 inclusive
Is greater than BF
16
Is between 00
16
 and 3F
16
 inclusive, and IER_CM[CM] is not equal to the kernel 
mode value 0
If none of the conditions above are met,  the PALcode entry point PC is as follows:
  PC[63:15] = PAL_BASE[63:15]
  PC[14] = 0
  PC[13] = 1
  PC[12] = CALL_PAL function field [7]
  PC[11:6] = CALL_PAL function field [5:0]
  PC[5:1] = 0
  PC[0] = 1 (PALmode)
6.8.2 PALcode Exception Entry Points
When hardware encounters an exception, Ibox execution jumps to a PALcode entry 
point at a PC determined by the type of exception. The return PC of the instruction that 
triggered the exception is placed in the EXC_ADDR register and onto the return predic-
tion stack.
Table 6–8 shows the PALcode exception entry locations and their offset from the 
PAL_BASE IPR.
Table 6–8 PALcode Exception Entry Locations 
Entry Name
Type
Offset
16
Description
DTBM_DOUBLE_3
Fault
100
Dstream TB miss on virtual page table entry fetch. Use three-
level flow.
DTBM_DOUBLE_4
Fault
180
Dstream TB miss on virtual page table entry fetch. Use four-
level flow.
FEN
Fault
200
Floating point disabled.
UNALIGN
Fault
280
Unaligned Dstream reference.
DTBM_SINGLE
Fault
300
Dstream TB miss.
DFAULT
Fault
380
Dstream fault or virtual address sign check error.
OPCDEC
Fault
400
Illegal opcode or function field:
  • Opcode 1, 2, 3, 4, 5, 6 or 7
  • Opcode 19
16
, 1B
16
, 1D
16
, 1E
16
 or 1F
16
 , not PALmode or 
not I_CTL[HWE]
  • Extended precision IEEE format
  • Unimplemented function field of opcodes 14
16
 or 1C
16
IACV
Fault
480
Istream access violation or virtual address sign check error.