Megafunctions

altgxb (Gigabit Transceiver Block) Megafunction



Gigabit transceiver block (GXB) megafunction. The altgxb megafunction enables dedicated circuitry on Stratix GX devices.

Altera® recommends instantiating this function as described in Using the MegaWizard® Plug-In Manager.

This topic contains the following information:


AHDL Function Prototype (port name and order also apply to Verilog HDL):

FUNCTION altgxb (inclk[(NUMBER_OF_QUADS) - (1)..0], coreclk[(NUMBER_OF_CHANNELS) - (1)..0],
      pll_areset[(NUMBER_OF_QUADS) - (1)..0], rx_in[(NUMBER_OF_CHANNELS) - (1)..0],
      rx_cruclk[(NUMBER_OF_QUADS) - (1)..0], rx_bitslip[(NUMBER_OF_CHANNELS) - (1)..0],
      rx_enacdet[(NUMBER_OF_CHANNELS) - (1)..0], rx_slpbk[(NUMBER_OF_CHANNELS) - (1)..0],
      rx_a1a2size[(NUMBER_OF_CHANNELS) - (1)..0], rx_equalizerctrl[(NUMBER_OF_CHANNELS) * (3) - (1)..0],
      rx_locktorefclk[(NUMBER_OF_CHANNELS) - (1)..0], rx_locktodata[(NUMBER_OF_CHANNELS) - (1)..0],
      tx_in[(CHANNEL_WIDTH) * (NUMBER_OF_CHANNELS) - (1)..0],
      tx_ctrlenable[(NUMBER_OF_CHANNELS) * (DWIDTH_FACTOR) - (1)..0],
      tx_forcedisparity[(NUMBER_OF_CHANNELS) * (DWIDTH_FACTOR) - (1)..0],
      tx_srlpbk[(NUMBER_OF_CHANNELS) - (1)..0], tx_vodctrl[(NUMBER_OF_CHANNELS) * (3) - (1)..0],
      tx_preemphasisctrl[(NUMBER_OF_CHANNELS) * (3) - (1)..0], txdigitalreset[(NUMBER_OF_CHANNELS) - (1)..0],
      rxdigitalreset[(NUMBER_OF_CHANNELS) - (1)..0], rxanalogreset[(NUMBER_OF_CHANNELS) - (1)..0],
      pllenable[(NUMBER_OF_QUADS) - (1)..0])
    WITH (OPERATION_MODE, LOOPBACK_MODE, REVERSE_LOOPBACK_MODE, PROTOCOL, NUMBER_OF_CHANNELS,
       NUMBER_OF_QUADS, CHANNEL_WIDTH, PLL_INCLOCK_PERIOD, DATA_RATE, DATA_RATE_REMAINDER,
       USE_8B_10B_MODE, USE_DOUBLE_DATA_MODE, DWIDTH_FACTOR, DISPARITY_MODE, CRU_INCLOCK_PERIOD,
       RUN_LENGTH, RUN_LENGTH_ENABLE, USE_CHANNEL_ALIGN, USE_AUTO_BIT_SLIP, USE_RATE_MATCH_FIFO,
       USE_SYMBOL_ALIGN, ALIGN_PATTERN, ALIGN_PATTERN_LENGTH, INFINIBAND_INVALID_CODE,
       CLK_OUT_MODE_REFERENCE, USE_FIFO_MODE, FORCE_DISPARITY_MODE, USE_SELF_TEST_MODE,
       SELF_TEST_MODE, USE_EQUALIZER_CTRL_SIGNAL, EQUALIZER_CTRL_SETTING, SIGNAL_THRESHOLD_SELECT,
       RX_BANDWIDTH_TYPE, RX_ENABLE_DC_COUPLING, USE_VOD_CTRL_SIGNAL, VOD_CTRL_SETTING,
       USE_PREEMPHASIS_CTRL_SIGNAL, PREEMPHASIS_CTRL_SETTING, PLL_BANDWIDTH_TYPE,
       PLL_USE_DC_COUPLING, RX_PPM_SETTING, USE_PHASE_SHIFT)	   
    RETURNS (pll_locked[(NUMBER_OF_QUADS) - (1)..0], coreclk_out[(NUMBER_OF_QUADS) - (1)..0],
       rx_out[(CHANNEL_WIDTH) * (NUMBER_OF_CHANNELS) - (1)..0], 
       rx_clkout[(NUMBER_OF_CHANNELS) - (1)..0],
       rx_locked[(NUMBER_OF_CHANNELS) - (1)..0],
       rx_freqlocked[(NUMBER_OF_CHANNELS) - (1)..0], rx_rlv[(NUMBER_OF_CHANNELS) - (1)..0],
       rx_syncstatus[(NUMBER_OF_CHANNELS) * (DWIDTH_FACTOR) - (1)..0],
       rx_patterndetect[(NUMBER_OF_CHANNELS) * (DWIDTH_FACTOR) - (1)..0],
       rx_ctrldetect[(NUMBER_OF_CHANNELS) * (DWIDTH_FACTOR) - (1)..0],
       rx_errdetect[(NUMBER_OF_CHANNELS) * (DWIDTH_FACTOR) - (1)..0],
       rx_disperr[(NUMBER_OF_CHANNELS) * (DWIDTH_FACTOR) - (1)..0],
       rx_signaldetect[(NUMBER_OF_CHANNELS) - (1)..0],
       rx_channelaligned[(NUMBER_OF_QUADS) - (1)..0], rx_bisterr[(NUMBER_OF_CHANNELS) - (1)..0],
       rx_bistdone[(NUMBER_OF_CHANNELS) - (1)..0],
       rx_a1a2sizeout[(NUMBER_OF_CHANNELS) * (DWIDTH_FACTOR) - (1)..0],
       tx_out[(NUMBER_OF_CHANNELS) - (1)..0]);


VHDL Component Declaration:

COMPONENT altgxb
   GENERIC 
      (OPERATION_MODE              : STRING   := "DUPLEX";
      LOOPBACK_MODE                : STRING   := "NONE";
      REVERSE_LOOPBACK_MODE        : STRING   := "NONE";
      PROTOCOL                     : STRING   := "CUSTOM";
      NUMBER_OF_CHANNELS           : INTEGER  := 20;
      NUMBER_OF_QUADS              : INTEGER  := 1;
      CHANNEL_WIDTH                : POSITIVE := 20;
      PLL_INCLOCK_PERIOD           : INTEGER  := 20000;
      DATA_RATE                    : POSITIVE := 10;
      DATA_RATE_REMAINDER          : INTEGER  := 0;
      USE_8B_10B_MODE              : STRING   := "OFF";
      USE_DOUBLE_DATA_MODE         : STRING   := "OFF";
      DWIDTH_FACTOR                : INTEGER  := 1;
      USE_SELF_TEST_MODE           : STRING   := "OFF";
      SELF_TEST_MODE               : INTEGER  := 0;  
      -- RX MODE
      DISPARITY_MODE               : STRING   := "OFF";
      CRU_INCLOCK_PERIOD           : INTEGER  := 0; -- UNITS IN PS
      RUN_LENGTH                   : INTEGER  := 128;
      RUN_LENGTH_ENABLE            : STRING   := "OFF";
      USE_CHANNEL_ALIGN            : STRING   := "OFF";
      USE_AUTO_BIT_SLIP            : STRING   := "OFF";
      USE_RATE_MATCH_FIFO          : STRING   := "OFF";
      USE_SYMBOL_ALIGN             : STRING   := "OFF";
      ALIGN_PATTERN                : STRING   := "X";
      ALIGN_PATTERN_LENGTH         : INTEGER  := 0;
      INFINIBAND_INVALID_CODE      : INTEGER  := 0;
      CLK_OUT_MODE_REFERENCE       : STRING   := "ON";
      USE_EQUALIZER_CTRL_SIGNAL    : STRING   := "OFF";
      EQUALIZER_CTRL_SETTING       : INTEGER  := 0;
      SIGNAL_THRESHOLD_SELECT      : INTEGER  := 80;
      RX_BANDWIDTH_TYPE            : STRING   := "LOW";
      RX_ENABLE_DC_COUPLING        : STRING   := "OFF";
      USE_VOD_CTRL_SIGNAL          : STRING   := "OFF";
      VOD_CTRL_SETTING             : INTEGER  := 1000;
      USE_PREEMPHASIS_CTRL_SIGNAL  : STRING   := "OFF";
      PREEMPHASIS_CTRL_SETTING     : INTEGER  := 0;
      PLL_BANDWIDTH_TYPE           : STRING   := "LOW";
      PLL_USE_DC_COUPLING          : STRING   := "OFF";
      RX_PPM_SETTING               : INTEGER  := 1000;
 
      -- TX MODE
      USE_FIFO_MODE                : STRING   := "OFF";
      DEVICE_FAMILY                : STRING   := "STRATIXGX";
      FORCE_DISPARITY_MODE         : STRING   := "OFF";
      LPM_TYPE                     : STRING   := "ALTGXB");

   PORT (inclk, pll_areset,
        rx_cruclk, pll_locked     : IN STD_LOGIC_VECTOR(NUMBER_OF_QUADS - 1 DOWNTO 0) := (OTHERS => '0');
        pllenable                 : IN STD_LOGIC_VECTOR(NUMBER_OF_QUADS - 1 DOWNTO 0) := (OTHERS => '1');
        coreclk, rx_in,
        rx_bitslip, rx_enacdet, 
        rx_slpbk, 
        rx_a1a2size, 
        rx_locktorefclk,
        rx_locktodata, tx_srlpbk, 
        txdigitalreset,
        rxdigitalreset, 
        rxanalogreset             : IN STD_LOGIC_VECTOR(NUMBER_OF_CHANNELS - 1 DOWNTO 0) := (OTHERS => '0');
        tx_in                     : IN STD_LOGIC_VECTOR(CHANNEL_WIDTH * NUMBER_OF_CHANNELS - 1 DOWNTO 0) := (OTHERS => '0');
        tx_forcedisparity,
        tx_ctrlenable             : IN STD_LOGIC_VECTOR(DWIDTH_FACTOR * NUMBER_OF_CHANNELS - 1 DOWNTO 0) := (OTHERS => '0');
        tx_vodctrl, 
        tx_preemphasisctrl,
        rx_equalizerctrl          : IN STD_LOGIC_VECTOR(NUMBER_OF_CHANNELS *3 - 1 DOWNTO 0) := (OTHERS => '0');
        pll_locked, coreclk_out   : OUT STD_LOGIC_VECTOR(NUMBER_OF_QUADS - 1 DOWNTO 0);
        rx_out                    : OUT STD_LOGIC_VECTOR(CHANNEL_WIDTH * NUMBER_OF_CHANNELS - 1 DOWNTO 0);
        rx_clkout, rx_locked,
        rx_freqlocked, rx_rlv,
        rx_signaldetect,
        rx_channelaligned,
        rx_bisterr, rx_bistdone,       
        tx_out                    : OUT STD_LOGIC_VECTOR(NUMBER_OF_CHANNELS - 1 DOWNTO 0);
        rx_syncstatus,
        rx_patterndetect,
        rx_ctrldetect,
        rx_errdetect,
        rx_disperr, 
        rx_a1a2sizeout            : OUT STD_LOGIC_VECTOR(DWIDTH_FACTOR * NUMBER_OF_CHANNELS - 1 DOWNTO 0);

END COMPONENT;

 

VHDL LIBRARY-USE Declaration

LIBRARY altera_mf;
USE altera_mf.altera_mf_components.all;


Port Descriptions:

INPUT PORTS

Port Name Required Description Comments
inclk[] See comments GXB transmitter PLL reference input clock. Input port [NUMBER_OF_QUADS - 1..0] wide. If the GXB transmitter PLL is used, the inclk[] port is required. If the OPERATION_MODE parameter is set to "TX" or "DUPLEX", the inclk[] port is required.
coreclk[] No Interior clock from the GXB transmitter PLL used to read data from or write data to the GXB receiver PLL or GXB transmitter PLL. Input port [NUMBER_OF_CHANNELS - 1..0] wide.
pll_areset[] No Asynchronous reset for the GXB transmitter PLL. This signal resets the entire quad. Input port [NUMBER_OF_QUADS - 1..0] wide.
rx_in[] Yes GXB receiver channel data input port. Input port [NUMBER_OF_CHANNELS - 1..0] wide.
rx_cruclk[] No Clock recovery unit (CRU) for the GXB receiver PLL reference input clock. Input port [NUMBER_OF_QUADS - 1..0] wide. When the OPERATION_MODE parameter is set to "TX" or "DUPLEX", the rx_cruclk[] port cannot be used. If this parameter is used, the GXB transmitter PLL cannot be instantiated.
rx_bitslip[] No Controls bit slipping circuitry in the word aligner. Input port [NUMBER_OF_CHANNELS - 1..0] wide. If the rx_bitslip port is enabled, the rx_enacdet[] port cannot be connected and the USE_AUTO_BIT_SLIP parameter must be set to "OFF".
rx_enacdet[] No Controls manual alignment to the pattern to be programmed. Input port [NUMBER_OF_CHANNELS - 1..0] wide. If the rx_enacdet port is enabled, the rx_bitslip[] port cannot be connected and the USE_AUTO_BIT_SLIP parameter must be set to "ON".
rx_slpbk[] No Serial loopback input. Dynamically enables serial loopback from the GXB transmitter to the GXB receiver in the same channel. Input port [NUMBER_OF_CHANNELS - 1..0] wide. If the rx_slpbk[] input port is enabled, the OPERATION_MODE parameter must be set to "DUPLEX" and the serialfdbk port of the GXB receiver channel atom must be connected.
rx_a1a2size[] No Detects A1A2 or A1A1A2A2 input patterns. If the signal is low (0) A1A2 patterns are detected, if the signal is high (1) A1A1A2A2 patterns are detected. Input port [NUMBER_OF_CHANNELS - 1..0] wide. If the rx_a1a2size[] port is enabled, the PROTOCOL parameter must be set to "SONET".
rx_equalizerctrl[] No Specifies the equalizer control setting. Input port [NUMBER_OF_CHANNELS * 3..0] wide. Use the following settings:

Incoming Signal Equalizer Control Setting
000 0 inches
101 20 inches
111 40 inches

rx_locktorefclk[] No Control signal for GXB receiver PLL to lock to the reference clock. Input port [NUMBER_OF_CHANNELS - 1..0] wide.
rx_locktodata[] No Control signal for GXB receiver PLL to lock the received data. Input port [NUMBER_OF_CHANNELS - 1..0] wide. The rx_locktodata[] port can overwrite the rx_locktorefclk[] port.
tx_in[] Yes GXB transmitter channel data input port. Input port [CHANNEL_WIDTH * NUMBER_OF_CHANNELS - 1..0] wide. If the USE_8B_10B_MODE parameter is set to "OFF" and the USE_DOUBLE_DATA_MODE parameter is set to "OFF", the deserialization factor is CHANNEL_WIDTH.

If the USE_8B_10B_MODE parameter is set to "OFF" and the USE_DOUBLE_DATA_MODE parameter is set to "ON", the deserialization factor is CHANNEL_WIDTH / 2.

If the USE_8B_10B_MODE parameter is set to "ON", the deserialization factor is 10.
tx_ctrlenable[] No Control character enable. Enables the 8B/10B encoder to identify control characters. Labels an input character as a control code. Input port [NUMBER_OF_CHANNELS * DWIDTH_FACTOR - 1..0] wide. If tx_ctrlenable[] port is high, the sent word is a control character.
tx_forcedisparity[] No Disparity enable. Forces the initial disparity of the 8B/10B encoder. Input port [NUMBER_OF_CHANNELS * DWIDTH_FACTOR - 1..0] wide. If tx_forcedisparity[] port is high, positive disparity (more 1s than 0s) is used.
tx_srlpbk[] No Reverse serial loopback input. Dynamically enables reverse serial loopback from the rx_in[] port to the tx_out[] port. Input port [NUMBER_OF_CHANNELS - 1..0] wide.
tx_vodctrl[] No 3-bit control signal that dynamically specifies the Voltage Output Differential (VOD) control settings. Input port [NUMBER_OF_CHANNELS * 3 - 1..0] wide. Use the following settings:

Incoming Signal VOD Control Setting
000 400mV
001 800mV
010 1000mV
011 1200mV
100 1400mV
101 1600mV
111 1600mV

tx_preemphasisctrl[] No 3-bit control signal that dynamically specifies the pre-emphasis settings. Input port [NUMBER_OF_CHANNELS * 3 - 1..0] wide. Use the following settings:

Incoming Signal Pre-emphasis Setting
000 0 %
001 5 %
010 10 %
100 20 %
101 25 %
110 25 %
111 25 %

rx_channelaligned[] Yes Channel alignment status for the GXB receiver channels. Output port [NUMBER_OF_QUADS - 1..0] wide. If the PROTOCOL parameter is set to "XAUI", the rx_channelaligned[] port must be connected.
txdigitalreset[] No Sends a reset signal to the digital portion of the transmitter. Input port [NUMBER_OF_QUADS * 4 - 1..0] wide.
rxdigitalreset[] No Sends a reset signal to the digital portion of the receiver. Input port [NUMBER_OF_QUADS * 4 - 1..0] wide.
rxanalogreset[] No Sends a reset signal to the analog portion of the receiver. Input port [NUMBER_OF_QUADS * 4 - 1..0] wide.
pllenable[] No Sends an enable signal to the GXB transmitter PLL. Input port [NUMBER_OF_QUADS - 1..0] wide.
pll_areset[] No Sends a reset signal to the GXB transmitter PLL. Input port [NUMBER_OF_QUADS - 1..0] wide.

OUTPUT PORTS

Port Name Required Description Comments
pll_locked[] No Gives the status of the GXB transmitter PLL. Output port [NUMBER_OF_QUADS - 1..0] wide. The pll_locked port is available only when the GXB transmitter PLL is used.
coreclk_out[] No Output clock fed by the clk2 port of the GXB transmitter PLL. Output port [NUMBER_OF_QUADS - 1..0] wide. If a GXB transmitter PLL is used, the coreclk_out port must be enabled.
rx_out[] Yes GXB receiver PLL output data. Output port [CHANNEL_WIDTH * NUMBER_OF_CHANNELS - 1..0] wide.
If the USE_8B_10B_MODE parameter is set to "OFF" and the USE_DOUBLE_DATA_MODE parameter is set to "OFF", the deserialization factor is CHANNEL_WIDTH.

If the USE_8B_10B_MODE parameter is set to "OFF" and the USE_DOUBLE_DATA_MODE parameter is set to "ON", the deserialization factor is CHANNEL_WIDTH / 2.

If the USE_8B_10B_MODE parameter is set to "ON", the deserialization factor is 10.
rx_clkout[] No Output clock from the GXB receiver channel. Output port [NUMBER_OF_CHANNELS - 1..0] wide.
If the USE_RATE_MATCH_FIFO parameter is set to "ON" and the CLK_OUT_MODE_REFERENCE parameter is set to "ON", the rx_clkout[] port is the PLL reference clock with the period PLL_INCLOCK_PERIOD / DATA_RATE) * CHANNEL_WIDTH.

If the USE_RATE_MATCH_FIFO parameter is set to "ON" and the CLK_OUT_MODE_REFERENCE parameter is set to "OFF", the rx_clkout[] port is the clock output of the PLL.

If the USE_RATE_MATCH_FIFO parameter is set to "OFF", the value of the rx_clkout[] port is the same as the value of the rx_recovclockout[] port.

If the USE_DOUBLE_DATA_MODE parameter is set to "OFF", the clock period must be doubled, or the clock frequency must be halved.
rx_locked[] No Gives the status of the GXB receiver channel atom. Output port [NUMBER_OF_CHANNELS - 1..0] wide. Indicates that the PLL is locked to the inclk[] port. When the PLL is locked, this signal is VCC. When the GXB receiver PLL is out of lock, this signal is GND.
rx_freqlocked[] No Indicates whether GXB receiver channel is locked to the GXB receiver PLL input clock frequency, but not to the data in the rx_in[] port. Output port [NUMBER_OF_CHANNELS - 1..0] wide.
rx_rlv[] No Indicates whether the GXB receiver channel violated the value specified for the RUN_LENGTH parameter. Output port [NUMBER_OF_CHANNELS - 1..0] wide.
rx_syncstatus[] No Gives the status of the pattern detector and word aligner. Output port [NUMBER_OF_CHANNELS * DWIDTH_FACTOR - 1..0] wide. If the PROTOCOL parameter is set to "XAUI" or "GIGE", the rx_syncstatus[] port is connected to the synchronization state machine and indicates that the channel completed synchronization. If the PROTOCOL parameter is set to anything other than "XAUI" or "GIGE", the rx_syncstatus[] port becomes a resync signal for manual synchronization of the alignment system.
rx_patterndetect[] No Indicates whether the pattern detector detects a comma. Output port [NUMBER_OF_CHANNELS * DWIDTH_FACTOR - 1..0] wide.
rx_ctrldetect[] No Indicates whether the 8B/10B decoder detects a control code. Output port [NUMBER_OF_CHANNELS * DWIDTH_FACTOR - 1..0] wide. If the USE_8B_10B_MODE parameter is set to "OFF", the rx_ctrldetect port is not available.
rx_errdetect[] No Indicates whether the 8B/10B decoder detects an error code. Output port [NUMBER_OF_CHANNELS * DWIDTH_FACTOR - 1..0] wide. If the USE_8B_10B_MODE parameter is set to "OFF", the rx_errdetect port is not available.
rx_disperr[] No Indicates whether the 8B/10B decoder detects a disparity error. Output port [NUMBER_OF_CHANNELS * DWIDTH_FACTOR - 1..0] wide.
rx_signaldetect[] No Indicates whether there is a legal voltage level on the input buffer. Output port [NUMBER_OF_CHANNELS - 1..0] wide. This port is available only if the PROTOCOL parameter is set to "XAUI" or "GIGE"
rx_bisterr[] No Error status signal for the self test. Output port [NUMBER_OF_CHANNELS - 1..0] wide. This port is available only if the USE_SELF_TEST_MODE parameter is turned on.
rx_bistdone[] No Indicates whether the self test is complete. Output port [NUMBER_OF_CHANNELS - 1..0] wide. This port is available only if the USE_SELF_TEST_MODE parameter is turned on.
rx_a1a2sizeout[] No Reports the a1a2size signal as seen by the word aligner. Output port [NUMBER_OF_CHANNELS * DWIDTH_FACTOR - 1..0] wide.
tx_out[] Yes Serialized GXB transmitter channel data signal. Output port [NUMBER_OF_CHANNELS - 1..0] wide.


Parameter Descriptions:

Parameter Type Required Comments
OPERATION_MODE String Yes Specifies the operation of the GXB transmitter PLL and GXB receiver PLL. Values are "RX", "TX", and "DUPLEX". If the PROTOCOL parameter is set to "XAUI", then the OPERATION_MODE parameter must be set to "DUPLEX".
LOOPBACK_MODE String No Specifies the operation of the loopback. Values are "NONE", "SLB", "PLB", and "P8LB". If omitted, the default is "NONE". Values other than "NONE" are available only when the OPERATION_MODE parameter is set to "DUPLEX".
REVERSE_LOOPBACK_MODE String No Specifies the operation of the reverse loopback. Values are "NONE", "RSLB", and "RPLB". If omitted, the default is "NONE". Values other than "NONE" are available only when the OPERATION_MODE parameter is set to "DUPLEX".
PROTOCOL String Yes Specifies the protocol. Values are "XAUI", "GIGE", "RAPIDIO", "FIBRECHANNEL", SONET, and "CUSTOM". Use the following settings:

Setting of PROTOCOL Parameter Required Parameter Values
XAUI
OPERATION_MODE "DUPLEX"
NUMBER_OF_CHANNELS Multiple of four
CHANNEL_WIDTH 8 or 16
PLL_INCLOCK_PERIOD Must be specified
USE_8B_10B_MODE "ON"
USE_CHANNEL_ALIGN "ON"
USE_AUTO_BIT_SLIP "ON"
CLK_OUT_MODE_REFERENCE "ON"
ALIGN_PATTERN_LENGTH 10
ALIGN_PATTERN 0101111100 or 1010000011
GIGE
CHANNEL_WIDTH 8 or 16
PLL_INCLOCK_PERIOD Must be specified
USE_8B_10B_MODE "ON"
USE_CHANNEL_ALIGN "OFF"
USE_AUTO_BIT_SLIP "ON"
CLK_OUT_MODE_REFERENCE "ON"
ALIGN_PATTERN_LENGTH 10
ALIGN_PATTERN 0101111100 or 1010000011
FIBRECHANNEL

If the GXB receiver PLL is used:

USE_CHANNEL_ALIGN "OFF"
USE_RATE_MATCH_FIFO "OFF"
ALIGN_PATTERN_LENGTH 7 or 10
RAPIDIO

If the GXB receiver PLL is used:

USE_CHANNEL_ALIGN "OFF"
USE_RATE_MATCH_FIFO "OFF"
ALIGN_PATTERN_LENGTH 7 or 10
SONET

If the GXB receiver PLL is used:

USE_CHANNEL_ALIGN "OFF"
USE_RATE_MATCH_FIFO "OFF"
ALIGN_PATTERN_LENGTH 16
CUSTOM

If the GXB receiver PLL is used:

USE_CHANNEL_ALIGN "OFF"
USE_RATE_MATCH_FIFO "OFF"

NUMBER_OF_CHANNELS Integer Yes Specifies the number of GXB receiver or transmitter channels. Values are 1 through 20.
NUMBER_OF_QUADS Integer Yes Specifies the number of quads. CEIL(NUMBER_OF_CHANNELS / 4 - 1).
CHANNEL_WIDTH Integer Yes Specifies the width of the dataout signal from the GXB receiver or transmitter channel atom. Use the following settings:

Setting of PROTOCOL Parameter Channel Width Values
XAUI 8 and 16
GIGE 8 and 16
FIBRECHANNEL 8, 10, 16, and 20
RAPIDIO 8, 10, 16, and 20
SONET 8 and 16
CUSTOM 8, 10, 16, and 20

For more information, see the table in the comments for the DATA_RATE parameter.
PLL_INCLOCK_PERIOD Integer Yes Specifies, in picoseconds (ps), the period or frequency of the GXB transmitter PLL. If omitted, the default is 0. The value of this parameter is used to compute the input clock frequency in MHz; (1 / PLL_INCLOCK_PERIOD) * 1000000. When the PLL_INCLOCK_PERIOD is specified, the CRU_INCLOCK_PERIOD parameter cannot be used. For more information, see the table in the comments for the DATA_RATE parameter.
DATA_RATE Integer Yes Specifies, in Mbps, the rate of data from the GXB transmitter channel and the GXB receiver channel. If omitted, the default is 0. The following table lists the default settings for the CHANNEL_WIDTH, and DATA_RATE parameters and the input clock frequency, calculated with the value of the PLL_INCLOCK_PERIOD parameter or the CRU_INCLOCK_PERIOD parameter:

Setting of PROTOCOL Parameter Values
XAUI
DATA_RATE parameter 3125 Mbps
Input clock frequency 156.25 Mhz
CHANNEL_WIDTH parameter 16
GIGE
DATA_RATE parameter 1250 Mbps
Input clock frequency 125 Mhz
CHANNEL_WIDTH parameter 8
FIBRECHANNEL
DATA_RATE parameter 2000 Mbps
Input clock frequency 200 Mhz
CHANNEL_WIDTH parameter 16
RAPIDIO
DATA_RATE parameter 1250 Mbps
Input clock frequency 125 Mhz
CHANNEL_WIDTH parameter 8
SONET
DATA_RATE parameter 2488 Mbps
Input clock frequency 155 Mhz
CHANNEL_WIDTH parameter 16
CUSTOM
DATA_RATE parameter 1280 Mbps
Input clock frequency 160 Mhz
CHANNEL_WIDTH parameter 8

DATA_RATE_REMAINDER Integer No Specifies, in bits per second (bps), the remainder of the DATA_RATE parameter; DATA_RATE * 1000000. This parameter helps to specify non-integral data rates. If omitted, the default is 0.
USE_8B_10B_MODE String No Specifies whether to use the 8B/10B decoder. If this parameter is turned on, the deserialization factor is 10, and the CHANNEL_WIDTH parameter value is 8 or 16. Values are "ON" and "OFF". If omitted, the default is "OFF".
USE_DOUBLE_DATA_MODE String No Specifies whether to use double data width mode. If this parameter is turned on, the CHANNEL_WIDTH parameter value 16 or 20. When the CHANNEL_WIDTH parameter value is 8 or 10, the GXB receiver channel is not in double data width mode. Values are "ON" and "OFF". If omitted, the default is "OFF".
DWIDTH_FACTOR Integer No Specifies the width of the double data factor. Values are 1 and 2. If omitted, the default is 1. A value of 1 means that value of the USE_DOUBLE_DATA_MODE parameter is "OFF", and a value of 2 means that value of the USE_DOUBLE_DATA_MODE parameter is "ON".
DISPARITY_MODE String No Specifies whether to use disparity mode. Values are "ON" and "OFF". If omitted, the default is "OFF".
CRU_INCLOCK_PERIOD Integer No Specifies, in picoseconds (ps), the period or frequency of the GXB receiver PLL. If omitted, the default is 0. The value of this parameter is used to compute the input clock frequency in MHz; (1 / CRU_INCLOCK_PERIOD) * 1000000. When the CRU_INCLOCK_PERIOD is specified, the PLL_INCLOCK_PERIOD parameter cannot be used. For more information, see the table in the comments for the DATA_RATE parameter.
RUN_LENGTH Integer No Specifies the maximum run length allowed for the incoming data signal. This parameter is ignored if the RUN_LENGTH_ENABLE parameter is turned off. If the deserialization factor is 8, legal values are 4 -124, in multiples of four. If the deserialization factor is 10, legal values are 5 -160, in multiples of five. If omitted, the default is 0.
RUN_LENGTH_ENABLE String No Specifies whether to use run length detection. Values are "ON" and "OFF". If omitted, the default is "OFF".
USE_CHANNEL_ALIGN String No Specifies whether to use the channel aligner and enable the deskew system. The USE_CHANNEL_ALIGN parameter can only be used when the PROTOCOL parameter is set to "XAUI". Values are "ON" and "OFF". If omitted, the default is "OFF".
USE_AUTO_BIT_SLIP String No Specifies whether to use internal bit slipping circuitry. If this parameter is turned on, the bitslip GXB receiver channel atom is ignored and an internal register controls the byte alignment functions. If this parameter is turned off, the bit slipping operation is controlled by the rx_bitslip[] signal. Values are "ON" and "OFF". If omitted, the default is "OFF".
USE_RATE_MATCH_FIFO String No Specifies whether to use rate matching FIFO. Values are "ON" and "OFF". If omitted, the default is "OFF".
USE_SYMBOL_ALIGN String No Specifies whether to use the the word aligner. Values are "ON" and "OFF". If omitted, the default is "ON".
ALIGN_PATTERN String No Specifies the pattern of 7, 10, or 16 bits used by the word aligner for the USE_SYMBOL_ALIGN parameter. If the USE_SYMBOL_ALIGN parameter is turned off, this parameter is ignored. If the PROTOCOL parameter is set to "XAUI" or "GIGE", the only legal pattern is 0101111100.
ALIGN_PATTERN_LENGTH Integer No Specifies the length of the ALIGN_PATTERN parameter. Values are "7", "10", or "16". If omitted, the default is 0. Use the following settings:

Value of PROTOCOL Parameter Values
XAUI 10
GIGE 10
FIBRECHANNEL 7 or 10
RAPIDIO 7 or 10
SONET 16
CUSTOM
If the USE_8B_10B_MODE parameter is turned on 7 and 10
If the USE_8B_10B_MODE parameter is turned off 16

CLK_OUT_MODE_REFERENCE String No Specifies whether to use the clock that operates the post rate matching FIFO of the GXB receiver channel. This parameter is ignored if the USE_RATE_MATCH_FIFO parameter is turned off. Values are "ON" and "OFF". If omitted, the default is "ON".
USE_FIFO_MODE String No Specifies whether to use the synchronous FIFO. If this parameter is turned on, the coreclk[] port must be used for the input of the synchronous FIFO and the pll_areset[] port must be used for the output of the synchronous FIFO. If this parameter is turned off, the coreclk[] port is used for the input and output of the synchronous FIFO and must be a multiple of the fastpllclk port of the GXB transmitter channel atom. Values are "ON" and "OFF". If omitted, the default is "OFF".
USE_SELF_TEST_MODE String No Indicates whether to use the built in self test mode. Values are "ON" and "OFF". If omitted, the default is "OFF".
SELF_TEST_MODE Integer No Indicates which self test mode to use. Values are 0, 1, 2, 3, or 4. If omitted, the default is 0. This parameter is ignored if the USE_SELF_TEST_MODE parameter is turned off. Use the following settings:

Value Test
0 PRBS
1 00-FF, followed by 5 K28.5+ and repeat
2 High frequency pattern, repeat of D21.5- D21.5+
3 Low frequency pattern, repeat of K28.7- K28.7+
4 Mixed frequency pattern, repeat of K28.5- K28.5+

USE_EQUALIZER_CTRL_SIGNAL String No Specifies whether to use the equalizer control signal. Values are "ON" and "OFF". If omitted, the default is "OFF".
EQUALIZER_CTRL_SETTING Integer No Specifies the length of the equalizer control signal. Values are 0, 20, or 40. If omitted, the default is 0. This parameter should be specified if the USE_EQUALIZER_CTRL_SIGNAL parameter is turned off.
SIGNAL_LOSS_THRESHOLD_SELECT Integer No Specifies the signal loss threshold. Values, in mV, are 80, 290, 450, or 590. If omitted, the default is 80.
PLL_BANDWIDTH_TYPE String No Specifies the GXB receiver PLL or the GXB transmitter bandwidth type. Values are "LOW" and "HIGH". If omitted, the default is "HIGH".
RX_BANDWIDTH_TYPE String No Specifies the GXB receiver PLL bandwidth type. Values are "LOW" and "HIGH". If omitted, the default is "HIGH".
PLL_ENABLE_DC_COUPLING String No Specifies whether to enable DC coupling on the GXB transmitter PLL clock input. Values are "ON" and "OFF". If omitted, the default is "OFF".
RX_ENABLE_DC_COUPLING String No Specifies whether to enable DC coupling on the GXB receiver PLL data input. Values are "ON" and "OFF". If omitted, the default is "OFF".
USE_VOD_CTRL_SIGNAL String No Specifies whether the VOD control signal is used. If this parameter is turned on, the tx_vodctrl port is used and the VOD_CTRL_SETTING parameter is ignored. Values are "ON" and "OFF". If omitted, the default is "OFF".
VOD_CTRL_SETTING Integer No Specifies, in mV, the value of the VOD control signal. Values are 400, 800, 1000, 1200, 1400, 1600. If omitted, the default is 1000.
USE_PREEMPHASIS_CTRL_SIGNAL String No Specifies whether the pre-emphasis control signal is used. If this parameter is turned on, the tx_preemphasisctrl port is used and the PREEMPHASIS_CTRL_SETTING parameter is ignored. Values are "ON" and "OFF". If omitted, the default is "OFF".
PREEMPHASIS_CTRL_SETTING Integer No Specifies, as a percentage of the VOD control setting, the value of the pre-emphasis control signal. Values are 0, 5, 10, 15, 20, or 25. If omitted, the default is 0.
USE_RX_CLKOUT String No Specifies whether the output clock from the GXB receiver channel is used. Values are "ON" and "OFF". If omitted, the default is "OFF". If this parameter is turned on, the rx_clkout port must be used.
USE_RX_CRUCLK String No Specifies whether the clock recovery unit (CRU) is used for the GXB receiver PLL reference input clock. Values are "ON" and "OFF". If omitted, the default is "OFF". If this parameter is turned on, the rx_cruclk port must be used.
RX_PPM_SETTING Integer No Specifies the value of the PPM threshold between the GXB receiver PLL VCO and the clock recovery unit (CRU). Values are 125, 250, 500, or 1000. If omitted, the default is 1000.

NOTE This topic prints best in Landscape orientation.

Back to Top

- PLDWorld -

 

Created by chm2web html help conversion utility.