Entity: UdpEngineWrapper

Diagram

time TPD_G boolean SERVER_EN_G positive SERVER_SIZE_G PositiveArray SERVER_PORTS_G boolean CLIENT_EN_G positive CLIENT_SIZE_G PositiveArray CLIENT_PORTS_G boolean CLIENT_EXT_CONFIG_G boolean TX_FLOW_CTRL_G boolean DHCP_G boolean ICMP_G boolean ARP_G real CLK_FREQ_G positive COMM_TIMEOUT_G slv(7 downto 0) TTL_G boolean VLAN_G string SYNTH_MODE_G slv(47 downto 0) localMac slv(31 downto 0) localIp Slv16Array(CLIENT_SIZE_G-1 downto 0) clientRemotePort Slv32Array(CLIENT_SIZE_G-1 downto 0) clientRemoteIp AxiStreamMasterType obMacMaster AxiStreamSlaveType ibMacSlave AxiStreamSlaveArray(SERVER_SIZE_G-1 downto 0) obServerSlaves AxiStreamMasterArray(SERVER_SIZE_G-1 downto 0) ibServerMasters AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0) obClientSlaves AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0) ibClientMasters AxiLiteReadMasterType axilReadMaster AxiLiteWriteMasterType axilWriteMaster sl clk sl rst AxiStreamSlaveType obMacSlave AxiStreamMasterType ibMacMaster AxiStreamMasterArray(SERVER_SIZE_G-1 downto 0) obServerMasters AxiStreamSlaveArray(SERVER_SIZE_G-1 downto 0) ibServerSlaves AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0) obClientMasters AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0) ibClientSlaves AxiLiteReadSlaveType axilReadSlave AxiLiteWriteSlaveType axilWriteSlave

Description


Company : SLAC National Accelerator Laboratory

Description: Wrapper for UdpEngine

This file is part of 'SLAC Firmware Standard Library'. It is subject to the license terms in the LICENSE.txt file found in the top-level directory of this distribution and at: https://confluence.slac.stanford.edu/display/ppareg/LICENSE.html. No part of 'SLAC Firmware Standard Library', including this file, may be copied, modified, propagated, or distributed except according to

the terms contained in the LICENSE.txt file.

Generics

Generic name Type Value Description
TPD_G time 1 ns Simulation Generics
SERVER_EN_G boolean true UDP Server Generics
SERVER_SIZE_G positive 1
SERVER_PORTS_G PositiveArray (0 => 8192)
CLIENT_EN_G boolean true UDP Client Generics
CLIENT_SIZE_G positive 1
CLIENT_PORTS_G PositiveArray (0 => 8193)
CLIENT_EXT_CONFIG_G boolean false
TX_FLOW_CTRL_G boolean true True: Blow off the UDP TX data if link down, False: Backpressure until TX link is up
DHCP_G boolean false
ICMP_G boolean true
ARP_G boolean true
CLK_FREQ_G real 156.25E+06 In units of Hz
COMM_TIMEOUT_G positive 30 In units of seconds, Client's Communication timeout before re-ARPing or DHCP discover/request
TTL_G slv(7 downto 0) x"20" IPv4's Time-To-Live (TTL)
VLAN_G boolean false true = VLAN support
SYNTH_MODE_G string "inferred"

Ports

Port name Direction Type Description
localMac in slv(47 downto 0) big-Endian configuration
localIp in slv(31 downto 0) big-Endian configuration
clientRemotePort in Slv16Array(CLIENT_SIZE_G-1 downto 0) Remote Configurations
clientRemoteIp in Slv32Array(CLIENT_SIZE_G-1 downto 0)
obMacMaster in AxiStreamMasterType Interface to Ethernet Media Access Controller (MAC)
obMacSlave out AxiStreamSlaveType
ibMacMaster out AxiStreamMasterType
ibMacSlave in AxiStreamSlaveType
obServerMasters out AxiStreamMasterArray(SERVER_SIZE_G-1 downto 0) tData is big-Endian configuration
obServerSlaves in AxiStreamSlaveArray(SERVER_SIZE_G-1 downto 0)
ibServerMasters in AxiStreamMasterArray(SERVER_SIZE_G-1 downto 0)
ibServerSlaves out AxiStreamSlaveArray(SERVER_SIZE_G-1 downto 0) tData is big-Endian configuration
obClientMasters out AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0) tData is big-Endian configuration
obClientSlaves in AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0)
ibClientMasters in AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0)
ibClientSlaves out AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0) tData is big-Endian configuration
axilReadMaster in AxiLiteReadMasterType AXI-Lite Interface
axilReadSlave out AxiLiteReadSlaveType
axilWriteMaster in AxiLiteWriteMasterType
axilWriteSlave out AxiLiteWriteSlaveType
clk in sl Clock and Reset
rst in sl

Signals

Name Type Description
r RegType
rin RegType
arpReqMasters AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0)
arpReqSlaves AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0)
arpAckMasters AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0)
arpAckSlaves AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0)
ibUdpMaster AxiStreamMasterType
ibUdpSlave AxiStreamSlaveType
obUdpMaster AxiStreamMasterType
obUdpSlave AxiStreamSlaveType
serverRemotePort Slv16Array(SERVER_SIZE_G-1 downto 0)
serverRemoteIp Slv32Array(SERVER_SIZE_G-1 downto 0)
dhcpIp slv(31 downto 0)

Constants

Name Type Value Description
REG_INIT_C RegType ( broadcastIp => (others => '0'),
clientRemotePort => (others => (others => '0')),
clientRemoteIp => (others => (others => '0')),
axilReadSlave => AXI_LITE_READ_SLAVE_INIT_C,
axilWriteSlave => AXI_LITE_WRITE_SLAVE_INIT_C)

Types

Name Type Description
RegType

Processes

Instantiations

Description

UDP Engine