Visible to Intel only — GUID: nik1411004539841
Ixiasoft
Visible to Intel only — GUID: nik1411004539841
Ixiasoft
6. 100G Interlaken IP Core Register Map
The 100G Interlaken IP core control registers are 32 bits wide and are accessible to you using the management interface, an Avalon-MM interface which conforms to the Avalon Interface Specifications. This table lists the registers available in the IP core. All unlisted locations are reserved.
Offset |
Name |
R/W |
Description |
---|---|---|---|
9'h0 |
PCS_BASE | RO |
[31:8] – Constant “HSi” ASCII for Arria® V and Stratix® V variants. [31:8] – Constant “HSj” ASCII for Intel® Arria® 10 variant. [7:0] – version number Despite its name, this register does not encode the hard PCS base address. |
9'h1 |
LANE_COUNT | RO |
Number of lanes |
9'h2 |
TEMP_SENSE |
RO |
Device temperature according to the internal temperature sensing diode. [7:0] – the temperature in degrees Fahrenheit [15:8] – the temperature in degrees Celsius For example, when the temperature is 54 degrees Celsius (130 degrees Fahrenheit), the value of the register is 0x3682. To interpret this register value, you read 0x36 (decimal 54) to be the temperature in degrees Celsius, and you read 0x82 (decimal 130) to be the temperature in degrees Fahrenheit. This register is invalid in the following IP core variations:
|
9'h3 |
ELAPSED_SEC |
RO |
[23:0] - Elapsed seconds since power up. The IP core calculates this value from the management interface clock (mm_clk) for diagnostic purposes. During continuous operation, this value rolls over every 194 days. |
9'h4 |
TX_EMPTY |
RO |
[NUM_LANES–1:0] – Transmit FIFO status (empty) |
9'h5 |
TX_FULL |
RO |
[NUM_LANES–1:0] – Transmit FIFO status (full) |
9'h6 |
TX_PEMPTY |
RO |
[NUM_LANES–1:0] – Transmit FIFO status (partially empty) |
9'h7 |
TX_PFULL |
RO |
[NUM_LANES–1:0] – Transmit FIFO status (partially full) |
9'h8 |
RX_EMPTY | RO |
[NUM_LANES–1:0] – Receive FIFO status (empty) |
9'h9 |
RX_FULL | RO |
[NUM_LANES–1:0] – Receive FIFO status (full) |
9'hA |
RX_PEMPTY | RO |
[NUM_LANES–1:0] – Receive FIFO status (partially empty) |
9'hB |
RX_PFULL | RO |
[NUM_LANES–1:0] – Receive FIFO status (partially full) |
9'hC |
REF_KHZ 1 |
RO |
PLL reference clock frequency (kHz) If you turn off Include diagnostic features, this register is not available. |
9'hD |
RX_KHZ 1 |
RO |
RX recovered clock frequency (kHz) If you turn off Include diagnostic features, this register is not available. |
9'hE |
TX_KHZ 1 |
RO |
TX serial clock frequency (kHz) If you turn off Include diagnostic features, this register is not available. |
9'hF |
LANE_PROFILE | RO |
[NUM_LANES–1:0] – Mask delineating the transceivers this IP core uses on the device. For example, if the FPGA has 24 lanes on one side of the device and the IP core uses the bottom twelve transceivers, the mask would be 24'b000000_000000_111111_111111.. This register is not available in IP core variations that target an Intel® Arria® 10 device. |
9'h10 |
PLL_LOCKED | RO |
In Intel® Arria® 10 devices: [0] – Transmit PLL lock indication. In other device families: [Number of transceiver blocks–1:0] – Transceiver block transmit PLL n lock indication. One lock indicator per transceiver block. Bits that correspond to unused transceiver block PLLs are forced to 1. |
9'h11 |
FREQ_LOCKED | RO |
[NUM_LANES–1:0] – Clock data recovery is frequency locked on the inbound data stream |
9'h12 |
LOOPBACK | RW |
[NUM_LANES–1:0] – For each lane, write a 1 to activate internal TX to RX serial loopback mode, or write a 0 to disable the loopback for normal operation. |
9'h13 |
RESET | RW |
Bit 9 : 1 = Force lock to data mode Bit 8 : 1 =Force lock to reference mode Bit 7 : 1 = Synchronously clear the TX-side error counters and sticky flags Bit 6 : 1 = Synchronously clear the RX-side error counters and sticky flags Bit 5 : 1 =Program load mode: perform a sequence of DMA reads. Currently the IP core supports only the value of 1'b0, indicating a processor controls the read operations. Bit 4 : 1 = Ignore the RX analog reset Bit 3 : 1 = Reset the soft microcontroller Bit 2 : 1 = Reset the transmitter and the receiver Bit 1 : 1 = Reset the receiver Bit 0 : 1 =Ignore RX digital resets The normal operating state for this register is all zeroes, to allow automatic reset control. These bits are intended primarily for hardware debugging use. Bit 2 is a good general purpose soft reset. Bits 6 and 7 are convenient for monitoring long stretches of error-free operation. |
9'h20 |
ALIGN | RO |
Bit 12 : TX lanes are aligned Bit 0 : RX lanes are aligned. |
9'h21 |
WORD_LOCK | RO |
[NUM_LANES–1:0] – Word (block) boundaries have been identified in the RX stream. |
9'h22 |
SYNC_LOCK | RO |
[NUM_LANES–1:0] – Metaframe synchronization has been achieved. |
9'h23 |
CRC0 | RO |
4 bit counters indicating CRC errors in lanes 7,6,5,4,3,2,1,0. These saturate at F, and you clear them by setting bit 6 in the RESET register. If you turn off Include diagnostic features, this register is not available. |
9'h24 |
CRC1 | RO |
4 bit counters indicating CRC errors in lanes 15,14,13,12,11,10,9,8. These will saturate at F, and you clear them by setting bit 6 in the RESET register. If you turn off Include diagnostic features, this register is not available. |
9'h25 |
CRC2 | RO |
4 bit counters indicating CRC errors in lanes 23,22,21,20,19,18,17,16. These will saturate at F, and you clear them by setting bit 6 in the RESET register. If you turn off Include diagnostic features, this register is not available. |
9'h27 |
SH_ERR | RO |
[NUM_LANES–1:0] – Sticky flag indicating a sync header (framing bit) error has occurred in the corresponding RX lane since this bit was last cleared through the RESET register. |
9'h28 |
RX_LOA |
RO |
Bit [0] – Sticky flag indicating loss of RX side lane-to-lane alignment since this bit was last cleared through the RESET register. Typically, the IP core asserts this bit in case of a catastrophic problem such as one or more lanes going down. |
9'h29 |
TX_LOA |
RO |
Bit [0] – Sticky flag indicating loss of TX side lane to lane alignment since this bit was last cleared through the RESET register. Typically, the IP core asserts this bit in case of a TX FIFO underflow / overflow caused by a significant deviation from the expected data flow rate through the TX PCS. |
9'h30 |
PCS_6SEL | RO |
Transceiver block selection for PCS test bus. (Factory use only). If you turn off Include diagnostic features, this register is not available. |
9'h31 |
PCS_LNSEL | RO |
Lane selection within transceiver block for PCS test bus. (Factory use only). If you turn off Include diagnostic features, this register is not available. |
9'h32 |
PCS_TB | RO |
PCS test bus. (Factory use only). If you turn off Include diagnostic features, this register is not available. |
9'h33 |
Reserved | ||
9'h34 |
RX_PRBS_DONE | RO |
[NUM_LANES–1:0] – Indicates whether enough bits have been received on the corresponding RX lane for one complete pass through the PRBS polynomial. If you turn off Include diagnostic features, this register is not available. |
9'h35 |
RX_PRBS_ERR | RO |
[NUM_LANES–1:0] – Sticky flag that indicates whether a PRBS error has occurred on the corresponding RX lane after RX_PRBS_DONE has attained the value of 1. If you turn off Include diagnostic features, this register is not available. |
9'h36 |
RX_PRBS_COUNT | RO |
[7:0] – This eight-bit counter holds the number of words that had PRBS errors across all lanes. Saturates at the value of 0xFF. If you turn off Include diagnostic features, this register is not available. |
9'h37 |
RX_PRBS_CTRL | RW |
Bit [0] – If you set this bit to the value of 1, the IP core clears the RX_PRBS_DONE, RX_PRBS_ERR, and RX_PRBS_COUNT registers. Reset this bit to the value of 0 to capture new PRBS status. If you turn off Include diagnostic features, this register is not available. |
9'h38 |
CRC32_ERR_INJECT | RW |
[NUM_LANES–1:0] - When a bit has the value of 1, the IP core injects CRC32 errors on the corresponding TX lane. When it has the value of 0, the IP core does not inject errors on the TX lane. You must maintain each bit at the value of 1 for the duration of a Meta Frame, at least, to ensure that the IP core transmits at least one CRC32 error. If you turn off Include diagnostic features, this register is not available. |
Offset |
Name |
R/W |
Description |
9'h102 |
ERR_INJECT | RW |
Bit [0] - When you write the value of 1 to this register bit, the IP core TX MAC injects a single bit error in outgoing Interlaken communication. This bit error will cause one or possibly more CRC24 errors. Before you can inject a second error, you must write the value of 0 to this register bit. Intel® recommends that you write the value of 1 and then write the value of 0 to inject a single bit error. If you turn off Include diagnostic features, this register is not available. |
9'h122 |
CNT_ERR_TX | RO |
Number of correctable errors in M20K memory in the TX MAC logic. If you turn off Enable M20K ECC support, this register is not available. |
9'h123 |
CNT_UNCOR_TX | RO |
Number of uncorrectable errors in M20K memory in the TX MAC logic. If you turn off Enable M20K ECC support, this register is not available. |
9'h124 |
CNT_ERR_RX | RO |
Number of correctable errors in M20K memory in the RX MAC logic. If you turn off Enable M20K ECC support, this register is not available. |
9'h125 |
CNT_UNCOR_RX | RO |
Number of uncorrectable errors in M20K memory in the RX MAC logic. If you turn off Enable M20K ECC support, this register is not available. |