Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP 9000 V-Class Server: Architecture > Chapter 7 I/O subsystem

I/O subsystem CSRs

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Glossary

The EPIC is controlled by CSRs. All CSRs are 64-bit aligned and may only be accessed using noncoherent Read Short and Write Short packets. The EPIC registers include:

  • EPIC Chip Configuration

  • EPIC PCI Master Configuration

  • EPIC PCI Master Status

  • EPIC Channel Builder

  • EPIC Interrupt Configuration

  • EPIC Interrupt Source

  • EPIC Interrupt Enable

  • PCI Slot Configuration

  • PCI Slot Status

  • PCI Slot Interrupt

  • PCI Slot Synchronization

EPIC CSR address decoding

The EPIC CSR address decoder looks at system address bits [4:5] to determine the target address space (I/O or EPIC CSRs) and bits [24:39] to index the CSR space. Accesses to unimplemented EPIC CSR space return error responses to the requestor. Reserved addresses and bits ignore writes and return zeros on reads.

The EPIC CSRs may be accessed by addressing, the mapping of which is shown in Figure 7-11 “EPIC CSR 40-bit address format”.

Figure 7-11 EPIC CSR 40-bit address format

EPIC CSR 40-bit address format

The bits and fields of the EPIC CSR space address are as follows:

  • DXbr field (bits 18:19)—Specifies which of the eight cross bar ports the request is to be routed.

  • Chip field (bits 21:23)—Routes the packet to the appropriate chip at a crossbar port.

  • Page field (bits 28:36)—Separates groups of CSRs into similar usage spaces.

EPIC CSR definition

This section describes the EPIC CSRs.

EPIC Chip Configuration register

The EPIC contains one EPIC Chip Configuration register on each EPIC. It specifies configuration information.

Figure 7-12 EPIC Chip Configuration register definition

EPIC Chip Configuration register definition

The fields of the EPIC Chip Configuration register are defined as follows:

  • EPIC part number field (bits 0:15)—Specifies the part number for the EPIC chip. A write is ignored and a read returns the hardwired value.

  • EPIC version code field (bits 16:19)—Specifies the version of the EPIC chip. A write is ignored and a read returns the hardware value.

  • Implementation dependent field (bits 20:63)—Specifies implementation dependent information. The value in this field should not be modified during normal use.

PCI Master Configuration register

There is one PCI Master Configuration register on each EPIC that provides configuration information about the PCI Master interface. The format of the register is shown in Figure 7-13 “PCI Master Configuration register definition”. All reserved fields are read as zero, and writes are ignored. All implemented fields are read with the last value written.

Figure 7-13 PCI Master Configuration register definition

PCI Master Configuration register definition

The fields and bits in the EPIC PCI Master Configuration register are defined as follows:

  • Arbitration disable timeout field (bits 0:15)—Defines the PCI arbitration disable timeout threshold.

  • Reset PCI bus field (bit 23)—Resets the PCI bus.

  • PCI memory I/O boundary field (bits 29:31)—Controls the amount of I/O space mapped to PCI MEM and PCI I/O address space in contiguous 64-Mbyte blocks.

  • PCI memory space limit field (bits 38:47)—Resets to 0x3f0 or 1008 decimal. The EPIC reserves the upper 60-Mbytes (channels 1008-1022 inclusive) for PCI controller shared memory address space and the highest four Mbytes (channel 1023) for EPIC context SRAM. The EPIC does not respond to PCI Controller DMA from channels 1,022 down to the value stored in this register. This register value updates on write to the PCI Memory_I/O Boundary field, and is read-only.

  • Disable PCI retry counter bit (bit 50)—Specifies the PCI retry counter is enabled.

  • Enable data byte swap during host access to PCI bit (bit 51)—Causes host accesses to the PCI to swap data bytes.

  • Disable Host highest priority bit (bit 54)—Indicates the host is participating in rotating priority with other devices.

  • Disable PCI bus arbiter timeout on bus grants bit (bit 55)—Indicates that the PCI bus arbiter does not timeout on bus grants.

  • Master Parity Error Response bit (bit 59)—Indicates that the EPIC performs its normal operation when it detects a parity error as bus master.

  • Generate bad address parity on PCI master writes bit (bit 62)—Forces bad address parity out to PCI (for diagnostic use only).

  • Generate bad data parity on PCI master writes bit (bit 63)—Forces bad data parity out to PCI (for diagnostic use only).

PCI Master Status register

Each EPIC has one PCI Master Status register that provides status information for the PCI Master interface. All fields are cleared by a reset except the EPIC Device Select Timing field; it is hardwired to the value one.

Figure 7-14 PCI Master Status register definition

PCI Master Status register definition

The bits in the EPIC PCI Master Status register are defined as follows:

  • PCI bus in reset bit (bit 0)—Indicates that the PCI bus is reset.

  • Parity error detected bit (bit 3)—Indicates that the EPIC detected a parity error on incoming read data while the EPIC was bus master.

  • Data parity error detected bit (bit 7)—Indicates that a parity error was detected on the bus while EPIC was PCI bus master.

  • Sent master abort bit (bit 8)—Indicates that the EPIC was master and sent a Master Abort (no target claimed the bus cycle). The Host receives an error response.

  • Saw target abort bit (bit 11)—Indicates that the EPIC was master and received a Target Abort. The Host will receive an error response.

  • Broken device bit (bit 12)—Indicates that the EPIC PCI interface received a grant and an Idle bus for 16 clocks but did not run a bus cycle. The EPIC returns an error response to the requestor and sets the Master error in the Error Cause register.

  • EPIC device select timing field (bits 14:15)—Sets medium-speed address decode on PCI. This field is read-only.

EPIC Channel Builder register

The EPIC Channel Builder register on each EPIC sets up channel context in preparation for an I/O operation. The format of the register is shown in Figure 7-15 “EPIC Channel Builder register definition”. Writing to this register stores the value to all fields, and reading it returns the last written value. A reset clears all fields. A read from the Channel Builder register returns the current state. A write to the Channel Builder register causes channel state to be modified as defined by the written data.

Figure 7-15 EPIC Channel Builder register definition

EPIC Channel Builder register definition

The fields and bits in the EPIC Channel Builder register are defined as follows:

  • Operation code field (bits 0:1)—Determines the operation the channel builder will perform.

  • Write channel field (bit 3)—Indicates a memory write channel when set or a memory read channel when cleared.

  • Controller PCI slot number field (bits 4:5)—Determines the PCI slot that this channel uses.

  • Channel number field (bits 6:15)—Indicates the PCI channel to be built. The valid range is from 0 to the PCI memory space limit.

  • Page number field (bits 16:25)—Indicates the 10-bit PCI page number.

  • Line number field (bits 26:31)—Indicates the line number inside the page from which to start prefetch (only applies if a read channel, i.e. the Write Channel bit = 0).

  • A - Address translation enable bit (bit 32)—Indicates the channel is in logical mode (translation on), if the A bit is set to a one value. If the A bit is set to a zero value, the channel is in physical mode (address translation off). This field also interprets the translation table base Pointer field.

  • T -TLB fetch enable bit (bit 33)—If set, TLBs are fetched from memory; if T=0, only previously encached TLBs are available.

  • P -Prefetch/Write purge partial enable bit (bit 34)—Indicates that data prefetch starts at the same time as channel build for read channels. It indicates that write purge partials are enabled for a write channel.

  • R -Refetch bit (bit 35)—Enables data refetch prior to a read channel being swapped out.

  • Translation table entry/Physical base pointer field (bits 36:63)—Indicates EPIC function as follows:

    • If the A bit is set to a one value and operation code is either a Build or Init, then the field is the translation table base pointer. This 28-bit field points to the translation table base address where TLBs are fetched.

    • If the A bit is set to a one value and operation code is a Prefetch, this field is the 28-bit TLE for the data prefetch.

    • If the A bit is set to a zero value the field is an 18-bit physical base pointer for this channel number, pointing to a four-Mbyte physically contiguous block of memory.

EPIC Interrupt Configuration register

The EPIC has one EPIC Interrupt Configuration register that specifies the interrupt number and processor when an interrupt occurs. The EPIC forwards the interrupt by writing the interrupt number to a local processor EIRR register. Since the EPIC can only send interrupts to one of the 16 processor EIRR registers on the system, only four bits of the address are programmable. All programmable fields are reset to zero.

Figure 7-16 EPIC Interrupt Configuration register definition

EPIC Interrupt Configuration register definition

The fields and bits in the EPIC Interrupt Configuration register are defined as follows:

  • Destination crossbar port field (bits 18:20)—Indicates the crossbar port (and therefore which EPAC) to which the interrupt will be sent.

  • Even/Odd processor chip field (bits 23)—Specifies which of the two processors for the given EPAC the interrupt is to be sent.

  • Interrupt number (bits 58:63)—Indicates the processor External Interrupt register interrupt bit to be set.

EPIC Interrupt Source register

Each EPIC has one Interrupt Source register that holds pending EPIC interrupts. Source bits are set when the source of the interrupt occurs and remains set until cleared. Interrupts are accumulated regardless of the state of the enable. If the interrupt is enabled in the EPIC Interrupt Enable register, then EPIC sends an interrupt. If the interrupt enable is written to a one value while the interrupt is pending in the Interrupt Source register, the EPIC generates an interrupt following the response to the register write.

Figure 7-17 EPIC Interrupt Source register definition

EPIC Interrupt Source register definition

The bits in the EPIC Interrupt Source register are defines as follows:

  • EPIC soft error bit (bit 15)—Indicates that a bit has been set in the Error Cause register that is configured as a soft error.

  • Saw SERR_ field (bit 31)—Indicates the EPIC received an SERR_ on the PCI bus.

EPIC Interrupt Enable register

EPIC Interrupt Enable register has a bit for every source interrupt in EPIC Interrupt Source. A one value in any EPIC Interrupt Enable bit causes an interrupt when the corresponding source event in EPIC Interrupt Source occurs. This register resets to zero (all interrupts disabled). The format for this register is shown in Figure 7-18 “EPIC Interrupt Enable register definition”.

Figure 7-18 EPIC Interrupt Enable register definition

EPIC Interrupt Enable register definition

The bits in the EPIC Interrupt Enable register are defined as follows:

  • EPIC soft error enable field (bit 15)—Indicates that an interrupt can be sent when a soft error occurs. A value of one enables the interrupt.

  • SERR_ Interrupt Enable field (bit 31)—Indicates that an interrupt can be sent when a PCI SERR_ occurs.

PCI Slot Configuration register

There are four PCI Slot Configuration registers, one for each supported PCI expansion slot. These registers provide control of the PCI interface.

Figure 7-19 PCI Slot Configuration register definition

PCI Slot Configuration register definition

The bits in the PCI Slot Configuration register are defined as follows:

  • PCIx interrupt synchronization disable bit (bit 19)—Disables the synchronization of a device on interrupt.

  • PCIx interrupt enable bit (bit 23)—Enables the forwarding of a device interrupt.

  • PCIx Perr response bit (bit 39)—Enables PCI_PERR_ data parity error signalling.

  • PCIx_Swap SRAM bit (bit 46)—Enables byte swapping on PCIx shared memory transfers.

  • PCIx_Swap DMA bit (bit 47)—Enables byte swapping on PCIx DMA transfers.

  • PCIx Arb Disable bit (bit 55)—Disables bus arbitration for PCIx.

  • PCIx Read Manager Reset bit (bit 58)—Resets EPIC Read manager x.

  • PCIx Write Manager Reset bit (bit 59)—Resets EPIC Write manager x.

PCI Slot Status register

Each EPIC has four PCI Slot Status registers that specify the status of slot specific events. Bits in these registers are set when EPIC is the target of one of the four controllers and a status event occurs. All writable fields are reset to the value zero.

Figure 7-20 PCI Slot Status register definition

PCI Slot Status register definition

The fields and bits in the PCI Slot Status register are defined as follows:

  • PCIx interrupt line bit (bit 3)—Indicates the current state of the PCIx INTA_ line (read only).

  • PCIx sent target abort bit (bit 7)—Indicates that the EPIC sent this slot a Target Abort bus cycle termination. This bit does not set the PCI Controller x bit in the Error Cause register.

  • Saw address parity error bit (bit 11)—Indicates that the EPIC detected an address phase parity error on a transfer from this slot. The EPIC terminates the transfer with target abort and relies on the transaction master to report the error to software. This bit sets the PCI Controller x bit in the Error Cause register.

  • Broken device bit (bit 12)—Indicates this slot received a grant during an idle bus for 16 clocks but did not run a bus cycle.

  • Saw data parity error bit (bit 15)—Indicates the EPIC (as a target) detected a PCI data phase parity error on incoming (write) data from this slot. This bit does not set the PCI Controller x bit in the Error Cause register.

  • PCI card present/power requirements code field (bits 30:31)—Indicates a PCI controller is present and the power requirements of that controller. This field is read only.

PCI Slot Interrupt Configuration register

Each EPIC has four PCI Slot Interrupt Configuration registers that specify the interrupt number and processor when an interrupt occurs on the corresponding PCI slot. The EPIC forwards the interrupt by writing the interrupt number to a local processor EIRR register. Because the EPIC can only send interrupts to one of the 16 processor EIRR registers on the system, only four bits of the address are programmable. All programmable fields are reset to zero.

Figure 7-21 PCI Slot Interrupt Configuration register definition

PCI Slot Interrupt Configuration register definition

The fields in the EPIC PCI Slot Interrupt Configuration register are defined as follows:

  • Destination crossbar port field (bits 18:20)—Determines to which crossbar port (and therefore which EPAC) the interrupt will be sent.

  • Even/Odd processor chip field (bits 23)—Specifies which of the two processors for the given EPAC the interrupt is to be sent.

  • Interrupt number field (bits 58:63)—Specifies the processor External Interrupt register interrupt bit to be set.

PCI Slot Synchronization register

The EPIC has four PCI Slot Synchronization registers, one for each of the four PCI bus slots. Software polls these registers to determine when the write pipe has been flushed.

A processor reads these registers to synchronize the write pipe for the corresponding device. The registers are read-only, and the CSR interface returns zero status after the requested device operation completes. The format of the PCI Slot Synchronization register is shown in Figure 7-22 “PCI Slot Synchronization register definition”.

Figure 7-22 PCI Slot Synchronization register definition

PCI Slot Synchronization register definition

The Synchronization status bit (bit 55) specifies the completion status of the device write manager for the corresponding slot.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© Hewlett-Packard Development Company, L.P.