1 -------------------------------------------------------------------------------     2 -- File       : GigEthGtp7.vhd     3 -- Company    : SLAC National Accelerator Laboratory     4 -- Created    : 2016-02-07     5 -- Last update: 2017-05-12     6 -------------------------------------------------------------------------------     7 -- Description: 1000BASE-X Ethernet for Gtp7     8 -------------------------------------------------------------------------------     9 -- This file is part of 'SLAC Firmware Standard Library'.    10 -- It is subject to the license terms in the LICENSE.txt file found in the     11 -- top-level directory of this distribution and at:     12 --    https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html.     13 -- No part of 'SLAC Firmware Standard Library', including this file,     14 -- may be copied, modified, propagated, or distributed except according to     15 -- the terms contained in the LICENSE.txt file.    16 -------------------------------------------------------------------------------    19 use ieee.std_logic_1164.
all;
    28  --! @ingroup ethernet_GigEthCore_gtp7    32       -- AXI-Lite Configurations    35       -- AXI Streaming Configurations    38       -- Local Configurations    39       localMac           : 
in  slv(
47 downto 0)       := MAC_ADDR_INIT_C;
    40       -- Streaming DMA Interface     47       -- Slave AXI-Lite Interface    148          -- Ethernet Interface   154          -- GMII PHY Interface   165    U_GigEthGtp7Core : 
entity work.GigEthGtp7Core
   168          gtrefclk_bufg          => 
sysClk125,
  -- Used as DRP clock in IP core   169          gtrefclk               => 
sysClk125,
  -- Not connected to loads in GTP7 IP core   170          independent_clock_bufg => 
sysClk125,
  -- Used as stable clock reference   190          gmii_isolate           => 
open,
   196          -- Quad PLL Interface   204          -- Configuration and Status   205          configuration_vector   => config.coreConfig,
   206          status_vector          => status.coreStatus,
   213    --------------------------------        214    -- Configuration/Status Register      215    --------------------------------        222          -- Local Configurations   227          -- AXI-Lite Register Interface   232          -- Configuration and Status Interface EN_AXI_REG_Gboolean  :=   false
in statusGigEthStatusType  
in axiLiteWriteMasterAxiLiteWriteMasterType  :=   AXI_LITE_WRITE_MASTER_INIT_C
out axiReadSlaveAxiLiteReadSlaveType  
out dmaIbMasterAxiStreamMasterType  
in qPllOutClkslv( 1 downto  0)  
out axiLiteReadSlaveAxiLiteReadSlaveType  
in axiWriteMasterAxiLiteWriteMasterType  
in qPllOutRefClkslv( 1 downto  0)  
AxiLiteReadSlaveType   mAxiReadSlave
AxiLiteReadMasterType   mAxiReadMaster
out mAxiReadMasterAxiLiteReadMasterType  
in ibMacPrimMasterAxiStreamMasterType  
in axiLiteReadMasterAxiLiteReadMasterType  :=   AXI_LITE_READ_MASTER_INIT_C
in dmaObMasterAxiStreamMasterType  
in mAxiWriteSlaveAxiLiteWriteSlaveType  
out axiLiteWriteSlaveAxiLiteWriteSlaveType  
out dmaObSlaveAxiStreamSlaveType  
in obMacPrimSlaveAxiStreamSlaveType  
out sAxiWriteSlaveAxiLiteWriteSlaveType  
out qPllResetslv( 1 downto  0)  
in arstsl  :=not    IN_POLARITY_G
in sAxiReadMasterAxiLiteReadMasterType  
slv( 1 downto  0)  :=   "10" AXI_RESP_SLVERR_C
in sAxiWriteMasterAxiLiteWriteMasterType  
out obMacPrimMasterAxiStreamMasterType  
in dmaIbSlaveAxiStreamSlaveType  
AxiLiteWriteSlaveType   mAxiWriteSlave
out ibMacPrimSlaveAxiStreamSlaveType  
in localMacslv( 47 downto  0)  :=   MAC_ADDR_INIT_C
out configGigEthConfigType  
EN_AXI_REG_Gboolean  :=   false
out sAxiReadSlaveAxiLiteReadSlaveType  
slv( 15 downto  0)   coreStatus
PRIM_CONFIG_GAxiStreamConfigType  :=   EMAC_AXIS_CONFIG_C
DURATION_Gnatural   range  0 to (( 2** 30)- 1):= 156250000
AXI_ERROR_RESP_Gslv( 1 downto  0)  :=   AXI_RESP_SLVERR_C
PHY_TYPE_Gstring  :=   "XGMII"
AxiLiteReadMasterType  :=(araddr  =>( others => '0'),arprot  =>( others => '0'),arvalid  => '0',rready  => '1') AXI_LITE_READ_MASTER_INIT_C
AxiStreamConfigType  :=(TSTRB_EN_C  =>   false,TDATA_BYTES_C  => 16,TDEST_BITS_C  => 4,TID_BITS_C  => 0,TKEEP_MODE_C  =>   TKEEP_NORMAL_C,TUSER_BITS_C  => 4,TUSER_MODE_C  =>   TUSER_NORMAL_C) AXI_STREAM_CONFIG_INIT_C
AxiLiteWriteMasterType   mAxiWriteMaster
in axiReadMasterAxiLiteReadMasterType  
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 localMacslv( 47 downto  0)  :=   MAC_ADDR_INIT_C
in mAxiReadSlaveAxiLiteReadSlaveType  
in gmiiRxdslv( 7 downto  0)  :=( others => '0')
AXI_ERROR_RESP_Gslv( 1 downto  0)  :=   AXI_RESP_SLVERR_C
in qPllRefClkLostslv( 1 downto  0)  
in ethConfigEthMacConfigType  
out ethStatusEthMacStatusType  
AXIS_CONFIG_GAxiStreamConfigType  :=   AXI_STREAM_CONFIG_INIT_C
in qPllLockslv( 1 downto  0)  
out mAxiWriteMasterAxiLiteWriteMasterType  
out gmiiTxdslv( 7 downto  0)  
out axiWriteSlaveAxiLiteWriteSlaveType