The following table provides a detailed description for the UltraScale+ and UltraScale device Integrated Interlaken IP core attributes and their default values. These attributes are configured through the DRP interface. These attributes should be static and only changed during reset.
Name | Type | Description | Default Value |
---|---|---|---|
LBUS Interface – Clock/Reset/Control Attributes | |||
MODE | Boolean | This attribute selects between 6 x 25 Gb/s and 12 x 12.5 Gb/s operation of the protocol logic. TRUE: Selects 12 x 12.5 Gb/s FALSE: Selects 6 x 25 Gb/s |
TRUE |
BYPASS | Boolean | This attribute controls whether Interlaken is operating in protocol block
bypass (lane logic only) mode or not. TRUE: Enables protocol bypass (lane logic only) mode. FALSE: Disables protocol bypass (lane logic only) mode. |
FALSE |
LBUS Interface – TX Path Control/Status Attributes | |||
CTL_TX_FC_CALLEN[7-1:0] | 7-bit Hex | TX Flow Control Calendar Length Input. This input controls the number of bits
of ctl_tx_fc_stat that are actually used. The settings (in decimal) for calendar
length are as follows: 7‘h0= 16 entries 7‘h1 = 32 entries 7‘h3 = 64 entries 7‘h7 = 128 entries 7‘hF = 256 entries All other values are reserved and must not be used. |
7’h00 |
CTL_TX_BURSTMAX[1:0] | 2-bit Hex | Interlaken TX BurstMax. This bus sets the BurstMax parameter for the TX as
follows: 2‘h0 = 64 bytes 2‘h1 = 128 bytes 2‘h2 = 192 bytes 2‘h3 = 256 bytes The burst size selected by ctl_tx_burstmax must be greater than or equal to the burst size selected by ctl_tx_burstshort. |
2’h3 |
CTL_TX_BURSTSHORT[2:0] | 3-bit Hex | Interlaken TX BurstShort. This bus sets the BurstShort parameter for the TX as
follows: 3‘h0 = not valid 3‘h1 = 64 bytes 3‘h2 = 96 bytes 3‘h3 = 128 bytes 3‘h4 = 160 bytes 3‘h5 = 192 bytes 3‘h6 = 224 bytes 3‘h7 = 256 bytes The burst size selected by ctl_tx_burstshort must be less than or equal to the burst size selected by ctl_tx_burstmax. |
3’h1 |
CTL_TX_DISABLE_SKIPWORD | Boolean | Skip Word Injection Deletion. As required by the Interlaken specification, a skip word is inserted once per Meta Frame to permit clock compensation through a repeater function. If the Interlaken core is not transmitting through an intermediary device, but is simply transmitting to an "ultimate" receiver such as another Interlaken core, this attribute can be set to TRUE. See section 5.4.7 of the Interlaken Protocol Definition, Revision 1.2, October 7, 2008. |
TRUE |
CTL_TX_MFRAMELEN_MINUS1[15:0] | 16-bit Hex | TX Meta Frame Length minus one. This bus sets the MetaFrameLength parameter for
the TX and should be set to the desired length minus 1. For example, to set the
MetaFrame length to 2,048, set this bus to 2,047 (decimal). MetaFrame length is
defined as the number of Interlaken words. Each Interlaken word is 8 bytes (64
bits). The minimum value for CTL_TX_MFRAMELEN_MINUS1 is 255 or 0xFF. |
16’h07FF |
CTL_TX_LAST_LANE[3:0] | 4-bit Hex | This attribute is used for lane decommissioning of the TX and indicates the last active lane. | 4’hB |
LBUS Interface – RX Path Control/Status Attributes | |||
CTL_RX_PACKET_MODE | Boolean | RX Packet Mode Error Handling. This attribute changes the way the error handler
in the RX path processes errors. TRUE: Packet mode. Assumes packets are arriving as complete packets. FALSE: Burst Interleaved mode. Assumes packets are arriving in bursts interleaved from different channels. Use of this attribute ensures that packets delivered to the LBUS have the appropriate SOP and EOP pairing. |
TRUE |
CTL_RX_BURSTMAX[1:0] | 2-bit Hex | Interlaken RX BurstMax. This bus set the BurstMax parameter for the RX as
follows: 2‘h0 = 64 bytes 2‘h1 = 128 bytes 2‘h2 = 192 bytes 2‘h3 = 256 bytes These inputs are only used in conjunction with stat_rx_burstmax_err. |
2’h3 |
CTL_RX_MFRAMELEN_MINUS1[15:0] | 16-bit Hex | RX Meta Frame Length minus one. This bus sets the MetaFrameLength parameter for the RX and should be set to the desired length minus 1. For example, to set the MetaFrame length to 2,048, set this bus to 2,047 (decimal). MetaFrame length is defined as the number of Interlaken words. Each Interlaken word is 8 bytes (64 bits). The minimum value for CTL_RX_MFRAMELEN_MINUS1 is 255 or 0xFF. | 16’h07FF |
CTL_RX_LAST_LANE[3:0] | 4-bit Hex | This attribute is used for lane decommissioning of the RX and indicates the last active lane. | 4’hB |
Data Channel Extension Feature Interface Attributes | |||
CTL_TX_CHAN_EXT[1:0] | 2-bit Hex | Selects the maximum number of TX data channels. Coding as follows: 2’h0 = selects 256 channels in Control Word Bits[39:32] 2’h1 = selects 512 channels in Control Word Bits[39:31] 2’h2 = selects 1,024 channels in Control Word Bits[39:30] 2’h3 = selects 2,048 channels in Control Word Bits[39:29] |
2’h0 |
CTL_RX_CHAN_EXT[1:0] | 2-bit Hex | Selects the maximum number of RX data channels. Coding as follows: 2’h0 = selects 256 channels in Control Word Bits[39:32] 2’h1 = selects 512 channels in Control Word Bits[39:31] 2’h2 = selects 1,024 channels in Control Word Bits[39:30] 2’h3 = selects 2,048 channels in Control Word Bits[39:29] |
2’h0 |
Retransmission Attributes | |||
CTL_TX_RETRANS_RAM_BANKS[1:0] | 2-bit Hex | TX Retransmission Buffer Size This attribute is used to set the total number of banks of RAM to be used by the buffer. The total RAM is divided into four banks. 2'h0 = Use Bank 0 only 2'h1 = Use Banks 0-1 only 2'h2 = Use Banks 0-2 only 2'h3 = Use all four banks Default Value: 2'h3 |
|
CTL_TX_RETRANS_MULT[2:0] | 3-bit Hex | TX Retransmission Sequence Multiplier. This input selects the
value of the sequence multiplier. The following values are defined: 3'h0 = x1 3'h1 = x2 3'h2 = x4 3'h3 = x8 3'h4 = x16 3'h5 = x32 3'h6 = reserved 3'h7 = reserved The TX Retransmission Sequence Multiplier must be the same as the link partner RX. The retransmission sequence number and the channel extension both use the Multiple-Use bits in a Burst Control Word. In order to ensure sufficient bursts before the retransmission sequence wraps around, the following should be observed: If the multiplier is 4 or less, then CTL_TX_CHAN_EXT should be equal to 0. If the multiplier is 8, then CTL_TX_CHAN_EXT can be 0 or 1. If the multiplier is 16, then CTL_TX_CHAN_EXT can be 0, 1, or 2. If the multiplier is 32, then CTL_TX_CHAN_EXT can be 0, 1, 2, or 3. |
3'h0 |
CTL_TX_RETRANS_DEPTH[13:0] | 14-bit Hex | TX Retransmission buffer depth. This input is used to set the maximum number of entries to be stored in the retransmission buffer. An entry is defined as a single write to the buffer or eight Interlaken words. The buffer depth needs to be set to a suitable value depending upon the latency, sequence multiplier and channel extension setting. |
14'h0800 |
CTL_RX_RETRANS_MULT[2:0] | 3-bit Hex | RX Retransmission Sequence Multiplier. This input selects the
value of the sequence multiplier. The following values are defined: 3'h0 = x1 3'h1 = x2 3'h2 = x4 3'h3 = x8 3'h4 = x16 3'h5 = x32 3'h6 = reserved 3'h7 = reserved The RX Retransmission Sequence Multiplier must be the same as the link partner TX. The retransmission sequence number and the channel extension both use the Multiple-Use bits in a Burst Control Word. In order to ensure sufficient bursts before the retransmission sequence wraps around, the following should be observed: If the multiplier is 4 or less, then CTL_RX_CHAN_EXT should be equal to 0. If the multiplier is 8, then CTL_RX_CHAN_EXT can be 0 or 1. If the multiplier is 16, then CTL_RX_CHAN_EXT can be 0, 1, or 2. If the multiplier is 32, then CTL_RX_CHAN_EXT can be 0, 1, 2, or 3. |
3'h0 |
CTL_RX_RETRANS_TIMER1[15:0] | 16-bit Hex | Interlaken RX Retransmission Short Timer Value. The input sets the maximum value timer1 counts to in terms of Interlaken words received. It begins counting as soon as a CRC24 error causes a retransmission request. This counter has two modes of operation depending upon the setting of the input CTL_RX_RETRANS_TIMER2. If CTL_RX_RETRANS_TIMER2 has a non-zero value (Mode 1), then while timer1 is counting to its limit, all subsequent errors and valid sequence discontinuities are ignored. If CTL_RX_RETRANS_TIMER2 has a zero value (Mode 2), then while timer1 is counting to its limit, all subsequent errors are ignored but valid sequence discontinuities are accepted. If the timer expires without a valid sequence discontinuity being received, retransmission is re-requested. If used in this mode, CTL_RX_RETRANS_TIMER1 should be assigned a value greater than the expected request-to-discontinuity latency. CTL_RX_RETRANS_TIMER1 must always be assigned a value greater than eight. |
16'h00800 |
CTL_RX_RETRANS_TIMER2[15:0] | 16-bit Hex | Interlaken RX Retransmission Long Timer Value. The input sets the maximum value timer2 counts to in terms of Interlaken words received. It begins counting as soon as a CRC24 error causes a retransmission request. This input must be set to a value of zero (to enable Mode 2) or a value greater than the expected request-to-discontinuity latency (to enable Mode 1). If the timer expires without a valid discontinuity being received, retransmission is re-requested. |
16'h0000 |
CTL_RX_RETRANS_RETRY[3:0] | 4-bit Hex | Interlaken RX Retransmission Retry Timer Value. This input sets the maximum value for a counter that counts the number of times re-requests for a sequence are made before asserting STAT_RX_RETRANS_RETRY_ERR. For reliable operation, this input must have a value of at least 2. |
4'h2 |
CTL_RX_RETRANS_WRAP_TIMER[7:0] | 8-bit Hex | Interlaken RX Retransmission Wrap Around Timer Value. This input sets the value for a timer that counts changes in the primary sequence number while waiting for an expected sequence after a request for retransmission. This counter has no effect if this input is programmed with a value of 0. If this counter reaches its maximum value, STAT_RX_RETRANS_WRAP_ERR is asserted and remains asserted until the input CTL_RX_RETRANS_RESET is asserted and negated. |
8'h00 |
CTL_RX_RETRANS_WDOG[11:0] | 12-bit Hex | Interlaken RX Retransmission Watchdog Timer Value. This input sets the most significant bits of a maximum value for a 32-bit watchdog timer that counts while waiting for an expected sequence after a request for retransmission. This counter has no effect if all bits of this bus are a value of 0. This counter is incremented in terms of incoming Interlaken words. If this counter reaches its maximum value, STAT_RX_RETRANS_WDOG_ERR is asserted and remains asserted until the input CTL_RX_RETRANS_RESET is asserted and negated. |
12'h000 |