1 ------------------------------------------------------------------------------- 2 -- File : Pgp2bGth7VarLatWrapper.vhd 3 -- Company : SLAC National Accelerator Laboratory 4 -- Created : 2015-04-01 5 -- Last update: 2016-08-24 6 ------------------------------------------------------------------------------- 7 -- Description: Example PGP 3.125 Gbps front end wrapper 8 -- Note: Default generic configurations are for the Diligent NetFPGA-SUME development board 9 -- Note: Default uses FPGA fabric clock = 156.25 MHz reference clock 10 ------------------------------------------------------------------------------- 11 -- This file is part of 'SLAC Firmware Standard Library'. 12 -- It is subject to the license terms in the LICENSE.txt file found in the 13 -- top-level directory of this distribution and at: 14 -- https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. 15 -- No part of 'SLAC Firmware Standard Library', including this file, 16 -- may be copied, modified, propagated, or distributed except according to 17 -- the terms contained in the LICENSE.txt file. 18 ------------------------------------------------------------------------------- 21 use ieee.std_logic_1164.
all;
29 use unisim.vcomponents.
all;
32 --! @ingroup protocols_pgp_pgp2b_gth7 36 -- CPLL Configurations (Defaults: pgpClk = 156.25 MHz Configuration) 40 -- MGT Configurations (Defaults: pgpClk = 156.25 MHz Configuration) 87 end Pgp2bGth7VarLatWrapper;
96 -- CPLL Configurations 103 -- MGT Configurations 151 -- Frame TX Interface 154 -- Frame RX Interface 161 -- AXI-Lite Interface RXCDR_CFG_Gbit_vector := x"0002007FE1000C2200018"
CPLL_REFCLK_SEL_Gbit_vector := "001"
out pgpRxMastersAxiStreamMasterArray( 3 downto 0)
array(natural range <> ) of AxiStreamSlaveType AxiStreamSlaveArray
out axilReadSlaveAxiLiteReadSlaveType
AXI_ERROR_RESP_Gslv( 1 downto 0) := AXI_RESP_DECERR_C
out pgpTxSlavesAxiStreamSlaveArray( 3 downto 0)
out pgpRxMastersAxiStreamMasterArray( 3 downto 0)
in axilWriteMasterAxiLiteWriteMasterType := AXI_LITE_WRITE_MASTER_INIT_C
in txPostCursorslv( 4 downto 0) :=( others => '0')
in pgpRxCtrlAxiStreamCtrlArray( 3 downto 0)
out axilWriteSlaveAxiLiteWriteSlaveType
VC_INTERLEAVE_Ginteger := 0
RX_ENABLE_Gboolean := true
VC_INTERLEAVE_Ginteger := 0
CPLL_REFCLK_DIV_Gnatural := 1
out axilReadSlaveAxiLiteReadSlaveType
in axilWriteMasterAxiLiteWriteMasterType := AXI_LITE_WRITE_MASTER_INIT_C
out pgpRxOutPgp2bRxOutType
TX_CLK25_DIV_Ginteger := 7
RX_OS_CFG_Gbit_vector := "0000010000000"
out pgpRxOutPgp2bRxOutType
in pgpTxMastersAxiStreamMasterArray( 3 downto 0)
in txDiffCtrlslv( 3 downto 0) := "1000"
RX_OS_CFG_Gbit_vector := "0000010000000"
in txDiffCtrlslv( 3 downto 0) := "1000"
PAYLOAD_CNT_TOP_Ginteger := 7
PAYLOAD_CNT_TOP_Ginteger := 7
RXCDR_CFG_Gbit_vector := x"0002007FE1000C2200018"
in pgpRxCtrlAxiStreamCtrlArray( 3 downto 0)
in pgpTxMastersAxiStreamMasterArray( 3 downto 0) :=( others => AXI_STREAM_MASTER_INIT_C)
slv( 1 downto 0) := "11" AXI_RESP_DECERR_C
NUM_VC_EN_Ginteger range 1 to 4:= 4
out axilWriteSlaveAxiLiteWriteSlaveType
CPLL_FBDIV_45_Gnatural := 5
in axilReadMasterAxiLiteReadMasterType := AXI_LITE_READ_MASTER_INIT_C
TX_CLK25_DIV_Gnatural := 7
array(natural range <> ) of AxiStreamCtrlType AxiStreamCtrlArray
out pgpTxSlavesAxiStreamSlaveArray( 3 downto 0)
array(natural range <> ) of AxiStreamMasterType AxiStreamMasterArray
AxiLiteReadMasterType :=(araddr =>( others => '0'),arprot =>( others => '0'),arvalid => '0',rready => '1') AXI_LITE_READ_MASTER_INIT_C
TX_ENABLE_Gboolean := true
NUM_VC_EN_Ginteger range 1 to 4:= 4
out pgpTxOutPgp2bTxOutType
AxiLiteWriteMasterType :=(awaddr =>( others => '0'),awprot =>( others => '0'),awvalid => '0',wdata =>( others => '0'),wstrb =>( others => '1'),wvalid => '0',bready => '1') AXI_LITE_WRITE_MASTER_INIT_C
in axilReadMasterAxiLiteReadMasterType := AXI_LITE_READ_MASTER_INIT_C
in txPreCursorslv( 4 downto 0) :=( others => '0')
in txPostCursorslv( 4 downto 0) :=( others => '0')
RX_CLK25_DIV_Ginteger := 7
RX_CLK25_DIV_Gnatural := 7
AXI_ERROR_RESP_Gslv( 1 downto 0) := AXI_RESP_DECERR_C
CPLL_REFCLK_DIV_Ginteger := 1
RX_ENABLE_Gboolean := true
CPLL_FBDIV_45_Ginteger := 5
TX_ENABLE_Gboolean := true
in txPreCursorslv( 4 downto 0) :=( others => '0')
out pgpTxOutPgp2bTxOutType