!*** MODULE $PR9RRDEF *** CDEC$ OPTIONS /NOALIGN PARAMETER PR9RR$_ICCS = '00000018'X ! Interval Clock Control/Status PARAMETER ICCS$M_IE = '00000040'X PARAMETER PR9RR$_TODR = '0000001B'X ! Time of Year Clock PARAMETER PR9RR$_RXCS = '00000020'X ! Console Receiver Control/Status PARAMETER RXCS$M_RX_IE = '00000040'X PARAMETER RXCS$M_RX_DONE = '00000080'X PARAMETER PR9RR$_RXDB = '00000021'X ! Console Receiver Data Buffer PARAMETER RXDB$M_DATA = '000000FF'X PARAMETER RXDB$M_RCV_BRK = '00000800'X PARAMETER RXDB$M_FRM_ERR = '00002000'X PARAMETER RXDB$M_OVR_ERR = '00004000'X PARAMETER RXDB$M_ERR_9RR = '00008000'X PARAMETER PR9RR$_TXCS = '00000022'X ! Console Transmit Control/Status PARAMETER TXCS$M_XMIT_BRK = '00000001'X PARAMETER TXCS$M_LOOPBACK = '00000004'X PARAMETER TXCS$M_TX_IE = '00000040'X PARAMETER TXCS$M_TX_RDY = '00000080'X PARAMETER PR9RR$_TXDB = '00000023'X ! Console Transmit Data Buffer PARAMETER TXDB$M_DATA = '000000FF'X PARAMETER PR9RR$_MCESR = '00000026'X ! Machine Check Error Register PARAMETER PR9RR$_ACCS = '00000028'X ! Floating Point Accelerator Register PARAMETER ACCS$M_VECTOR_PRESENT = '00000001'X PARAMETER ACCS$M_FCHIP_PRESENT = '00000002'X PARAMETER ACCS$M_WRITE_EVEN_PARITY = '80000000'X PARAMETER PR9RR$_SAVPC = '0000002A'X ! Console SAVED PC PARAMETER PR9RR$_SAVPSL = '0000002B'X ! Console SAVED PSL PARAMETER SAVPSL$M_HALT_CODE = '00003F00'X PARAMETER SAVPSL$M_INVALID = '00004000'X PARAMETER SAVPSL$M_MAPEN = '00008000'X PARAMETER PR9RR$_TBTAG = '0000002F'X ! Translation Buffer Tag PARAMETER PR9RR$_IORESET = '00000037'X ! IO BUS RESET PARAMETER PR9RR$_TBDATA = '0000003B'X ! Translation Buffer Data PARAMETER PR9RR$_SID = '0000003E'X ! System Identification Register PARAMETER XSID$M_ARCH = '000000FF'X PARAMETER XSID$M_SYS_VAR = '0000FF00'X PARAMETER XSID$M_XRPFWREV = '00FF0000'X PARAMETER PR9RR$_BCBTS = '00000071'X ! Backup Cache Tag Store PARAMETER BCBTS$M_VALID = '0000003C'X PARAMETER BCBTS$M_TAG = '1FFE0000'X PARAMETER BCBTS$M_PARITY = '20000000'X PARAMETER PR9RR$_BCP1TS = '00000072'X ! Backup cache primary tag array, first half bits PARAMETER BCPTS$M_VALID = '00000004'X PARAMETER BCPTS$M_TAG = '1FFFFFF8'X PARAMETER BCPTS$M_PARITY = '20000000'X PARAMETER PR9RR$_BCP2TS = '00000073'X ! Backup cache primary tag array, second half bits ! PR9RRBCP2TS_BITS structure fill prefix BCPTS$; PARAMETER PR9RR$_BCRFR = '00000074'X ! Backup Cache Refresh Register PARAMETER BCRFR$M_PTS = '000001F0'X PARAMETER BCRFR$M_BTS = '0001FE00'X PARAMETER PR9RR$_BCIDX = '00000075'X ! Backup Cache Index Register PARAMETER BCIDX$M_BTS = '0001FFC0'X PARAMETER BCIDX$M_PTS = '000007F0'X PARAMETER PR9RR$_BCSTS = '00000076'X ! Backup Cache Status Register PARAMETER BCSTS$M_LOCK = '00000001'X PARAMETER BCSTS$M_BTS_PERR = '00000002'X PARAMETER BCSTS$M_P1TS_PERR = '00000004'X PARAMETER BCSTS$M_P2TS_PERR = '00000008'X PARAMETER BCSTS$M_BUS_ERR = '00000010'X PARAMETER BCSTS$M_BTS_COMP = '00020000'X PARAMETER BCSTS$M_BTS_HIT = '00040000'X PARAMETER BCSTS$M_P1TS_HIT = '00080000'X PARAMETER BCSTS$M_P2TS_HIT = '00100000'X PARAMETER BCSTS$M_CMD = '01E00000'X PARAMETER BCSTS$M_IBUS_CYC = '02000000'X PARAMETER BCSTS$M_PRED_PAR = '04000000'X PARAMETER PR9RR$_BCCTL = '00000077'X ! Backup Cache Control Register PARAMETER BCCTL$M_FRCHIT = '00000001'X PARAMETER BCCTL$M_ENABTS = '00000002'X PARAMETER BCCTL$M_ENAPTS = '00000004'X PARAMETER BCCTL$M_ENARFR = '00000008'X PARAMETER BCCTL$M_RAMSPD = '00000010'X PARAMETER BCCTL$K_RAMSPD = '00000000'X ! Use fast RAMs PARAMETER PR9RR$_BCERR = '00000078'X ! Backup Cache Error Address Register PARAMETER PR9RR$_BCFBTS = '00000079'X ! Backup Cache Backup Tag Store Flush Register PARAMETER BCFBTS$K_FLUSH = '00000000'X PARAMETER PR9RR$_BCFPTS = '0000007A'X ! Backup Cache Primary Tag Store Flush Register PARAMETER BCFPTS$K_FLUSH = '00000000'X PARAMETER PR9RR$_VINTSR = '0000007B'X ! Vector interface error status register PARAMETER VINTSR$M_VECTOR_UNIT_ABSENT = '00000001'X PARAMETER VINTSR$M_VECTOR_UNIT_SERR = '00000002'X PARAMETER VINTSR$M_VECTOR_UNIT_HERR = '00000004'X PARAMETER VINTSR$M_VECTL_VIB_SERR = '00000008'X PARAMETER VINTSR$M_VECTL_VIB_HERR = '00000010'X PARAMETER VINTSR$M_CCHIP_VIB_SERR = '00000020'X PARAMETER VINTSR$M_CCHIP_VIB_HERR = '00000040'X PARAMETER VINTSR$M_BUS_TIMEOUT = '00000080'X PARAMETER VINTSR$M_VECTOR_MODULE_RESET = '00000100'X PARAMETER VINTSR$M_DISABLE_VECT_INTF = '00000200'X PARAMETER PR9RR$_PCTAG = '0000007C'X ! Primary Cache Tag Store PARAMETER PCTAG$M_TAG = '1FFFF800'X PARAMETER PCTAG$M_PARITY = '40000000'X PARAMETER PCTAG$M_VALID = '80000000'X PARAMETER PR9RR$_PCIDX = '0000007D'X ! Primary Cache Index Register PARAMETER PCIDX$M_IDX = '000007F8'X PARAMETER PR9RR$_PCERR = '0000007E'X ! Primary Cache Error Address Register PARAMETER PR9RR$_PCSTS = '0000007F'X ! Primary Cache Status Register PARAMETER PCSTS$M_FRCHIT = '00000001'X PARAMETER PCSTS$M_ENAPTS = '00000002'X PARAMETER PCSTS$M_FLUSH = '00000004'X PARAMETER PCSTS$M_ENARFR = '00000008'X PARAMETER PCSTS$M_HIT = '00000010'X PARAMETER PCSTS$M_INTERRUPT = '00000020'X PARAMETER PCSTS$M_TRAP2 = '00000040'X PARAMETER PCSTS$M_TRAP1 = '00000080'X PARAMETER PCSTS$M_TAG_PERR = '00000100'X PARAMETER PCSTS$M_DAL_PERR = '00000200'X PARAMETER PCSTS$M_DATA_PERR = '00000400'X PARAMETER PCSTS$M_BUSERR = '00000800'X PARAMETER PCSTS$M_BC_HIT = '00001000'X STRUCTURE /PR9RRDEF/ UNION MAP PARAMETER ICCS$S_IE = 1 PARAMETER ICCS$V_IE = 6 ! Interrupt enable BYTE %FILL (1) END MAP MAP PARAMETER RXCS$S_RX_IE = 1 PARAMETER RXCS$V_RX_IE = 6 ! Interrupt enable PARAMETER RXCS$S_RX_DONE = 1 PARAMETER RXCS$V_RX_DONE = 7 BYTE %FILL (1) ! Receiver done END MAP MAP PARAMETER RXDB$S_DATA = 8 PARAMETER RXDB$V_DATA = 0 ! Received data PARAMETER RXDB$S_RCV_BRK = 1 PARAMETER RXDB$V_RCV_BRK = 11 ! Break or CTRL/P received PARAMETER RXDB$S_FRM_ERR = 1 PARAMETER RXDB$V_FRM_ERR = 13 ! Framing error PARAMETER RXDB$S_OVR_ERR = 1 PARAMETER RXDB$V_OVR_ERR = 14 ! Overrun error PARAMETER RXDB$S_ERR_9RR = 1 PARAMETER RXDB$V_ERR_9RR = 15 BYTE %FILL (2) ! Error END MAP MAP PARAMETER TXCS$S_XMIT_BRK = 1 PARAMETER TXCS$V_XMIT_BRK = 0 ! Transmit break PARAMETER TXCS$S_LOOPBACK = 1 PARAMETER TXCS$V_LOOPBACK = 2 ! Loopback PARAMETER TXCS$S_TX_IE = 1 PARAMETER TXCS$V_TX_IE = 6 ! Interrupt enable PARAMETER TXCS$S_TX_RDY = 1 PARAMETER TXCS$V_TX_RDY = 7 BYTE %FILL (1) ! Transmitter ready END MAP MAP PARAMETER TXDB$S_DATA = 8 PARAMETER TXDB$V_DATA = 0 BYTE %FILL (1) ! Data to transmit END MAP MAP PARAMETER ACCS$S_VECTOR_PRESENT = 1 PARAMETER ACCS$V_VECTOR_PRESENT = 0 ! Vector unit present PARAMETER ACCS$S_FCHIP_PRESENT = 1 PARAMETER ACCS$V_FCHIP_PRESENT = 1 ! F-Chip present PARAMETER ACCS$S_WRITE_EVEN_PARITY = 1 PARAMETER ACCS$V_WRITE_EVEN_PARITY = 31 BYTE %FILL (1) ! Write even parity END MAP MAP PARAMETER SAVPSL$S_HALT_CODE = 6 PARAMETER SAVPSL$V_HALT_CODE = 8 ! Halt code PARAMETER SAVPSL$S_INVALID = 1 PARAMETER SAVPSL$V_INVALID = 14 ! Saved PSL invalid PARAMETER SAVPSL$S_MAPEN = 1 PARAMETER SAVPSL$V_MAPEN = 15 BYTE %FILL (1) ! Saved MAPEN END MAP MAP PARAMETER SID$S_RVAXREV = 8 PARAMETER SID$V_RVAXREV = 0 BYTE %FILL (1) ! 9RR chip µcode rev level END MAP ! XSID (SYS_TYPE) Register bits MAP PARAMETER XSID$S_ARCH = 8 PARAMETER XSID$V_ARCH = 0 ! Architectural ID (=1) PARAMETER XSID$S_SYS_VAR = 8 PARAMETER XSID$V_SYS_VAR = 8 ! System Variant (=1) PARAMETER XSID$S_XRPFWREV = 8 PARAMETER XSID$V_XRPFWREV = 16 BYTE %FILL (3) ! XRP firmware revision level END MAP MAP PARAMETER BCBTS$S_VALID = 4 PARAMETER BCBTS$V_VALID = 2 ! Four valid bits PARAMETER BCBTS$S_TAG = 12 PARAMETER BCBTS$V_TAG = 17 ! Cache tag PARAMETER BCBTS$S_PARITY = 1 PARAMETER BCBTS$V_PARITY = 29 ! Parity bit BYTE %FILL (3) END MAP MAP PARAMETER BCPTS$S_VALID = 1 PARAMETER BCPTS$V_VALID = 2 ! Valid bit PARAMETER BCPTS$S_TAG = 26 PARAMETER BCPTS$V_TAG = 3 ! Cache tag PARAMETER BCPTS$S_PARITY = 1 PARAMETER BCPTS$V_PARITY = 29 ! Parity bit BYTE %FILL (4) END MAP ! end PR9RRBCP2TS_BITS; /* Bit definitions are the same as PR9RR$_BCP1TS MAP PARAMETER BCRFR$S_PTS = 5 PARAMETER BCRFR$V_PTS = 4 ! PTS refresh index PARAMETER BCRFR$S_BTS = 8 PARAMETER BCRFR$V_BTS = 9 ! BTS refresh index BYTE %FILL (2) END MAP MAP UNION MAP PARAMETER BCIDX$S_BTS = 11 PARAMETER BCIDX$V_BTS = 6 ! BTS index BYTE %FILL (2) END MAP MAP PARAMETER BCIDX$S_PTS = 7 PARAMETER BCIDX$V_PTS = 4 ! PTS index BYTE %FILL (1) END MAP END UNION END MAP MAP PARAMETER BCSTS$S_LOCK = 1 PARAMETER BCSTS$V_LOCK = 0 ! Error lock PARAMETER BCSTS$S_BTS_PERR = 1 PARAMETER BCSTS$V_BTS_PERR = 1 ! BTS parity error PARAMETER BCSTS$S_P1TS_PERR = 1 PARAMETER BCSTS$V_P1TS_PERR = 2 ! P1TS parity error PARAMETER BCSTS$S_P2TS_PERR = 1 PARAMETER BCSTS$V_P2TS_PERR = 3 ! P2TS parity error PARAMETER BCSTS$S_BUS_ERR = 1 PARAMETER BCSTS$V_BUS_ERR = 4 ! Bus error PARAMETER BCSTS$S_BTS_COMP = 1 PARAMETER BCSTS$V_BTS_COMP = 17 ! BTS compare PARAMETER BCSTS$S_BTS_HIT = 1 PARAMETER BCSTS$V_BTS_HIT = 18 ! BTS hit PARAMETER BCSTS$S_P1TS_HIT = 1 PARAMETER BCSTS$V_P1TS_HIT = 19 ! P1TS hit PARAMETER BCSTS$S_P2TS_HIT = 1 PARAMETER BCSTS$V_P2TS_HIT = 20 ! P2TS hit PARAMETER BCSTS$S_CMD = 4 PARAMETER BCSTS$V_CMD = 21 ! Last DAL command PARAMETER BCSTS$S_IBUS_CYC = 1 PARAMETER BCSTS$V_IBUS_CYC = 25 ! I-bus cycle PARAMETER BCSTS$S_PRED_PAR = 1 PARAMETER BCSTS$V_PRED_PAR = 26 ! Predicted parity BYTE %FILL (2) END MAP MAP PARAMETER BCCTL$S_FRCHIT = 1 PARAMETER BCCTL$V_FRCHIT = 0 ! Force hit PARAMETER BCCTL$S_ENABTS = 1 PARAMETER BCCTL$V_ENABTS = 1 ! Enable BTS (cache on) PARAMETER BCCTL$S_ENAPTS = 1 PARAMETER BCCTL$V_ENAPTS = 2 ! Enable PTS (filter on) PARAMETER BCCTL$S_ENARFR = 1 PARAMETER BCCTL$V_ENARFR = 3 ! Enable refresh PARAMETER BCCTL$S_RAMSPD = 1 PARAMETER BCCTL$V_RAMSPD = 4 ! Cache RAM speed (0 = 1 cycle, 1 = 2 cycles) BYTE %FILL (1) END MAP MAP PARAMETER VINTSR$S_VECTOR_UNIT_ABSENT = 1 PARAMETER VINTSR$V_VECTOR_UNIT_ABSENT = 0 ! Vector unit absent PARAMETER VINTSR$S_VECTOR_UNIT_SERR = 1 PARAMETER VINTSR$V_VECTOR_UNIT_SERR = 1 ! Vector soft error PARAMETER VINTSR$S_VECTOR_UNIT_HERR = 1 PARAMETER VINTSR$V_VECTOR_UNIT_HERR = 2 ! Vector soft error PARAMETER VINTSR$S_VECTL_VIB_SERR = 1 PARAMETER VINTSR$V_VECTL_VIB_SERR = 3 ! Vector soft error PARAMETER VINTSR$S_VECTL_VIB_HERR = 1 PARAMETER VINTSR$V_VECTL_VIB_HERR = 4 ! Vector soft error PARAMETER VINTSR$S_CCHIP_VIB_SERR = 1 PARAMETER VINTSR$V_CCHIP_VIB_SERR = 5 ! Vector soft error PARAMETER VINTSR$S_CCHIP_VIB_HERR = 1 PARAMETER VINTSR$V_CCHIP_VIB_HERR = 6 ! Vector soft error PARAMETER VINTSR$S_BUS_TIMEOUT = 1 PARAMETER VINTSR$V_BUS_TIMEOUT = 7 ! Bus timeout during vector transfer PARAMETER VINTSR$S_VECTOR_MODULE_RESET = 1 PARAMETER VINTSR$V_VECTOR_MODULE_RESET = 8 ! Vector module reset PARAMETER VINTSR$S_DISABLE_VECT_INTF = 1 PARAMETER VINTSR$V_DISABLE_VECT_INTF = 9 ! Vector module reset BYTE %FILL (2) END MAP MAP PARAMETER PCTAG$S_TAG = 18 PARAMETER PCTAG$V_TAG = 11 ! Cache tag PARAMETER PCTAG$S_PARITY = 1 PARAMETER PCTAG$V_PARITY = 30 ! Parity bit PARAMETER PCTAG$S_VALID = 1 PARAMETER PCTAG$V_VALID = 31 BYTE %FILL (3) ! Valid bit END MAP MAP PARAMETER PCIDX$S_IDX = 8 PARAMETER PCIDX$V_IDX = 3 ! Tag index BYTE %FILL (1) END MAP MAP PARAMETER PCSTS$S_FRCHIT = 1 PARAMETER PCSTS$V_FRCHIT = 0 ! Force hit PARAMETER PCSTS$S_ENAPTS = 1 PARAMETER PCSTS$V_ENAPTS = 1 ! Enable tag store (cache on) PARAMETER PCSTS$S_FLUSH = 1 PARAMETER PCSTS$V_FLUSH = 2 ! Flush cache PARAMETER PCSTS$S_ENARFR = 1 PARAMETER PCSTS$V_ENARFR = 3 ! Enable refresh PARAMETER PCSTS$S_HIT = 1 PARAMETER PCSTS$V_HIT = 4 ! Reference hit PARAMETER PCSTS$S_INTERRUPT = 1 PARAMETER PCSTS$V_INTERRUPT = 5 ! Error interrupt pending PARAMETER PCSTS$S_TRAP2 = 1 PARAMETER PCSTS$V_TRAP2 = 6 ! Double error lock PARAMETER PCSTS$S_TRAP1 = 1 PARAMETER PCSTS$V_TRAP1 = 7 ! Error lock PARAMETER PCSTS$S_TAG_PERR = 1 PARAMETER PCSTS$V_TAG_PERR = 8 ! Tag parity error PARAMETER PCSTS$S_DAL_PERR = 1 PARAMETER PCSTS$V_DAL_PERR = 9 ! DAL data parity error PARAMETER PCSTS$S_DATA_PERR = 1 PARAMETER PCSTS$V_DATA_PERR = 10 ! Data parity error PARAMETER PCSTS$S_BUSERR = 1 PARAMETER PCSTS$V_BUSERR = 11 ! Bus error PARAMETER PCSTS$S_BC_HIT = 1 PARAMETER PCSTS$V_BC_HIT = 12 ! Reference hit in Bcache BYTE %FILL (2) END MAP END UNION END STRUCTURE ! PR9RRDEF CDEC$ END OPTIONS