For attributes ending in 0-5, each one represents the NIBBLESLICE with the matching number. For example, CASCADE_<0-5> represents CASCADE_0, CASCADE_1 … CASCADE_5. Accordingly, CASCADE_0 is associated with NIBBLESLICE[0], CASCADE_1 is associated with NIBBLESLICE[1], and so on.
Attribute | Per Nibble/Per NIBBLESLICE | Values | Default Value | Description |
---|---|---|---|---|
CASCADE_<0-5> | NIBBLESLICE | TRUE, FALSE | FALSE |
TRUE: Cascades the input and output delay of a NIBBLESLICE, which doubles the available delay from 512 taps/625 ps to 1024 taps/1250 ps. Cascading is only possible for the receiver and renders the TX datapath of that NIBBLESLICE inoperable outside of its output delay used for the cascading. When changing the delay, it is recommended to store half of the desired delay value in the input delay and half in the output delay. FALSE: No cascade, only the input delay is used for the receiver. |
CONTINUOUS_DQS | Nibble | TRUE, FALSE | FALSE |
Used with the RX_GATING attribute and the PHY_RDEN port to gate the capture clock entering on NIBBLESLICE[0] or from inter-byte or inter-nibble clocking. The capture clock must be continuous (not a strobe) to set CONTINUOUS_DQS = TRUE. Because the capture clock is continuous and because there is no timing requirement between PHY_RDEN and the capture clock, the gate enable and disable is not cycle accurate to the capture clock (RX_GATING = ENABLE, CONTINUOUS_DQS = TRUE in this case). In contrast, when RX_GATING = ENABLE and CONTINUOUS_DQS = FALSE, gate enable and disable can be trained to be deterministic. Setting CONTINUOUS_DQS = TRUE requires that two capture clock cycles be received prior to receiving data to prevent data loss. See the PHY_RDEN description in Ports and refer to Bidirectional Datapath for more information. |
CRSE_DLY_EN | Nibble | TRUE, FALSE | FALSE |
TRUE: In addition to the normal quarter delays applied to the strobe, a coarse delay is applied. Set CRSE_DLY_EN to TRUE if RX_CLK_PHASE_P/N = SHIFT_90, the interface receives edge-aligned clock and data, and the interface is below 1 GHz. Using coarse delays requires that SELF_CALIBRATE = ENABLE and that both RX_CLK_PHASE_P and RX_CLK_PHASE_N be set to the same value as one another (both SHIFT_90 or both SHIFT_0). FALSE: A coarse delay will not be applied. The CRSE delay can only be used with a low frequency (200 MHz – 1 GHz) PLL_CLK, edge-aligned source-synchronous receiver interface to center the strobe to data. |
DELAY_VALUE_<0-5> | NIBBLESLICE | 0–625 ps/1250 ps | 0 | DELAY_VALUE_x is the delay in ps that is used for the input and output
delays for the respective NIBBLESLICE[x].
For interfaces with PLL_CLK below 500 MHz, DELAY_VALUE is not supported. Consequently, delays will need to be updated using the CNTVALUEIN, CE, INC, and LD ports. See Controlling Delays for more information. |
DIS_IDLY_VT_TRACK | Nibble | TRUE, FALSE | FALSE |
TRUE: Disables VTC on input delays. FALSE: Enables VTC on input delays. Following the steps outlined in Controlling Built-in Self-Calibration is still required for VTC to operate. |
DIS_ODLY_VT_TRACK | Nibble | TRUE, FALSE | FALSE |
TRUE: Disables VTC on output delays. FALSE: Enables VTC on output delays. Following the steps outlined in Controlling Built-in Self-Calibration is still required for VTC to operate. |
DIS_QDLY_VT_TRACK | Nibble | TRUE, FALSE | FALSE |
TRUE: Disables VTC on QTR delays. FALSE: Enables VTC on QTR delays. Following the steps outlined in Controlling Built-in Self-Calibration is still required for VTC to operate. |
DQS_MODE | Nibble | DDR3, DDR4_1TCK, DDR4_2TCK, LPDDR4_TOGGLE, LPDDR4 | DDR4_1TCK | This attribute is only for memory-related use. |
DQS_SRC | Nibble | LOCAL, EXTERN | LOCAL |
LOCAL: Set to LOCAL if the strobe is sourced from the connecting IOB, if its source and destination nibble are the same (the latter would require TXRX_LOOPBACK_x = TRUE for NIBBLESLICE[x]), or if SERIAL_MODE = TRUE. EXTERN: Set to EXTERN if the strobe enters through inter-byte clocking. DQS_SRC can be set to either value for nibbles receiving a strobe through inter-nibble clocking. |
EN_CLK_TO_LOWER | Nibble | ENABLE, DISABLE | DISABLE |
ENABLE: Enables inter-byte clocking to a numerically lower nibble. DISABLE: Disables inter-byte clocking to a numerically lower nibble. |
EN_CLK_TO_UPPER | Nibble | ENABLE, DISABLE | DISABLE |
ENABLE: Enables inter-byte clocking to a numerically higher nibble DISABLE: Disables inter-byte clocking to a numerically higher nibble |
EN_DYN_DLY_MODE | Nibble | TRUE, FALSE | FALSE | This attribute is only for memory-related use. |
EN_OTHER_NCLK | Nibble | TRUE, FALSE | FALSE |
TRUE: Enables sourcing the n-side of the strobe from inter-nibble clocking. FALSE: Disables sourcing the n-side of the strobe from inter-nibble clocking. |
EN_OTHER_PCLK | Nibble | TRUE, FALSE | FALSE |
TRUE: Enables sourcing the p-side of the strobe from inter-nibble clocking. FALSE: Disables sourcing the p-side of the strobe from inter-nibble clocking. |
FAST_CK | Nibble | TRUE, FALSE | FALSE | This attribute is only for memory-related use. |
FIFO_MODE_<0-5> | NIBBLESLICE | ASYNC, SYNC, BYPASS | ASYNC |
ASYNC: Set to ASYNC if the read and write clocks of the FIFO in NIBBLESLICE[x] are the same frequency but phase independent. SYNC: Set to SYNC if the read and write clocks of the FIFO in NIBBLESLICE[x] are the same clock. SYNC requires a continuous receive data clock. BYPASS: Set to BYPASS for the FIFO in NIBBLESLICE[x] to forward the data to the fabric (it is not stored in the FIFO like in the ASYNC and SYNC settings). A zero cycle path is possible here. . BYPASS requires a continuous receive data clock. |
IBUF_DIS_SRC_<0-5> | NIBBLESLICE | EXTERNAL, INTERNAL | EXTERNAL | See Controlling IBUF_DISABLE and DYN_DCI for more information. |
INV_RXCLK | Nibble | TRUE, FALSE | FALSE |
TRUE: Inverts the incoming strobe from the IOB to NIBBLESLICE[0], which also affects all nibbles that the clock is routed to as a result of inter-nibble/byte clocking. INV_RXCLK only affects the n-clk. FALSE: Strobe is not inverted. This is the only supported INV_RXCLK value when DQS_SRC = EXTERN |
LP4_DQS | Nibble | TRUE, FALSE | FALSE | This attribute is only for memory-related use. |
ODELAY_BYPASS_<0-5> | NIBBLESLICE | TRUE, FALSE | FALSE | This attribute is only for memory-related use. |
ODT_SRC_<0-5> | NIBBLESLICE | EXTERNAL, INTERNAL | EXTERNAL | See Controlling IBUF_DISABLE and DYN_DCI for more information. |
PRIME_VAL | 1'b0, 1'b1 | 1'b0 | This attribute is only for memory-related use. | |
REFCLK_FREQUENCY | Nibble | 200.0–4266.0 [MHz] | 200.0 [MHz] | Set to the frequency of the PLL_CLK input. |
RX_CLK_PHASE_N | Nibble | SHIFT_0, SHIFT_90 | SHIFT_0 |
SHIFT_0: Set to SHIFT_0 to not apply a phase shift to the n-clk. SHIFT_90: Set to SHIFT_90 to apply a positive 90° phase shift (relative to the data) to the n-clk. This phase shift is not retained for inter-nibble clocking. Setting RX_CLK_PHASE_N = SHIFT_90 requires that SELF_CALIBRATE = ENABLE. DELAY_VALUE_x of all NIBBLESLICEs must be set to 0 in nibbles where RX_CLK_PHASE_N = SHIFT_90. |
RX_CLK_PHASE_P | Nibble | SHIFT_0, SHIFT_90 | SHIFT_0 |
SHIFT_0: Set to SHIFT_0 to not apply a phase shift to the p-clk. SHIFT_90: Set to SHIFT_90 to apply a positive 90° phase shift (relative to the data) to the p-clk. This phase shift is not retained for inter-nibble clocking. Setting RX_CLK_PHASE_P = SHIFT_90 requires that SELF_CALIBRATE = ENABLE. DELAY_VALUE_x of all NIBBLESLICEs must be set to 0 in nibbles where RX_CLK_PHASE_P = SHIFT_90. |
RX_DATA_WIDTH | Nibble | 2, 4, 8 | 8 | Set 1:2, 1:4, or 1:8 deserialization. |
RX_GATING | Nibble | DISABLE, ENABLE | DISABLE | Used with the RX_DATA_WIDTH and CONTINUOUS_DQS attributes, as well as the PHY_RDEN port, to gate the strobe entering on NIBBLESLICE[0] or from inter-byte or inter-nibble clocking. RX_GATING is necessary for bidirectional clocks which can be tristated when not active, or for strobes that are indeterministic on start-up or during normal operation. See the description for PHY_RDEN for more information. |
SELF_CALIBRATE | Nibble | DISABLE, ENABLE | ENABLE |
ENABLE: Enables BISC (proper assertion of EN_VTC, RX_EN_VTC, and TX_EN_VTC is still required) DISABLE: Disables BISC. |
SERIAL_MODE | Nibble | TRUE, FALSE | FALSE |
TRUE: Set to TRUE for interfaces where data is received without an accompanying source synchronous clock (strobe). In this case, the capture clock is generated internally from the PLL_CLK input. FALSE: Set to FALSE for source-synchronous interfaces. |
TBYTE_CTL_<0-5> | Nibble, NIBBLESLICE | PHY_WREN, T | T |
T: Set to T if using the T input (combinatorial path from the PL) as the tristate control signal for NIBBLESLICE[x]. If TX_DATA_WIDTH = 2, only T (not PHY_WREN) can be used as the tristate control signal. PHY_WREN: Set to PHY_WREN if using the PHY_WREN input as the tristate control signal for NIBBLESLICE[x]. The serialized and inverted PHY_WREN is synchronized with the TX data. Each bit of PHY_WREN controls the tristate for two bits of data. T and PHY_WREN can both be applied to the same NIBBLESLICE, and the NIBBLESLICE selects which one to use based on its TBYTE_CTL_x setting. |
TXRX_LOOPBACK_<0-5> | NIBBLESLICE | TRUE, FALSE | FALSE |
TRUE: Set to TRUE to loop back the TX output to RX input of the same NIBBLESLICE[x]. The TX output will still reach the IOB. A buffer (IBUF, OBUF, IOBUF, or a variant of one of the three) must be used for loopback to work. Connect the net from XPHY.O0[x] to the input of an OBUF, IOBUF, or variant of one of the two. Alternatively, connect the output net from an IBUF, IOBUF, or a variant of one of the two to XPHY.DATAIN[x]. Regardless of which net is used, only use one buffer (IBUF, OBUF, or variant) in this path. FALSE: Set to FALSE for no loopback and for all unused nibbleslices. TXRX_LOOPBACK_# is not supported when SERIAL_MODE = TRUE. See Controlling TX to RX Loopback for more information. |
TX_DATA_WIDTH | Nibble | 2, 4, 8 | 8 | Set 2:1, 4:1, or 8:1 serialization. If TX_DATA_WIDTH = 2, any IOBs connected to the nibble cannot use PRE_EMPHASIS. |
TX_GATING | Nibble | DISABLE, ENABLE | DISABLE |
DISABLE:The TX datapath of NIBBLESLICE[0], NIBBLESLICE[2], NIBBLESLICE[3], NIBBLESLICE[4], and NIBBLESLICE[5] are not gated. NIBBLESLICE[1] cannot be gated through this attribute, regardless of its setting. ENABLE: Use PHY_WREN to gate the TX datapath of NIBBLESLICE[0], NIBBLESLICE[2], NIBBLESLICE[3], NIBBLESLICE[4], and NIBBLESLICE[5]. NIBBLESLICE[1] cannot be gated. |
TX_INIT_<0-5> | NIBBLESLICE | 1'b1, 1'b0 | 1'b0 |
1'b0: Sets the TX IOB value associated with NIBBLESLICE[x] during configuration and reset (in this case, TX_RST[x] = 1 or RST = 1) to 1'b0. 1'b1: Sets the TX IOB value associated with NIBBLESLICE[x] during configuration and reset (in this case, TX_RST[x] = 1 or RST = 1) to 1'b1. |
TX_INIT_TRI | Nibble | 1'b1, 1'b0 | 1'b1 |
1'b0: Sets the tristate control signal during configuration and reset (in this case, TX_RST[x] = 1 or RST = 1) to 1'b0. 1'b1: Sets the tristate control signal during configuration and reset (in this case, TX_RST[x] = 1 or RST = 1) to 1'b1. |
TX_OUTPUT_PHASE_90_<0-5> | NIBBLESLICE | TRUE, FALSE | FALSE | Used for TX signals to center align the transmit clock to data. Set
to TRUE for clock and FALSE for data to achieve a center-aligned
clock and data relationship. TRUE: Applies a positive 90° phase shift to the TX output of NIBBLESLICE[x]. DELAY_VALUE_x should be set to 0 when TX_OUTPUT_PHASE_90_x = TRUE. FALSE: Set to FALSE to not apply the 90° shift. |
TX_OUTPUT_PHASE_90_TRI | Nibble | TRUE, FALSE | FALSE |
Used for center-aligned DDR TX signals where tristate control is required. Only applicable when TBYTE_CTL_x = PHY_WREN. Each NIBBLESLICE being tristated must have its associated DELAY_VALUE_x set to 0. TRUE: Applies a positive 90° phase shift to T_OUT[x]. FALSE: Does not apply the 90° phase shift. |
WRITE_LEVELING | Nibble | TRUE, FALSE | FALSE | This attribute is only for memory-related use. |