Entity: UdpEngine 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 TX_FLOW_CTRL_G boolean DHCP_G real CLK_FREQ_G positive COMM_TIMEOUT_G string SYNTH_MODE_G slv(47 downto 0) localMac slv(31 downto 0) broadcastIp slv(31 downto 0) localIpIn AxiStreamSlaveType obUdpSlave AxiStreamMasterType ibUdpMaster AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0) arpReqSlaves AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0) arpAckMasters AxiStreamSlaveArray(SERVER_SIZE_G-1 downto 0) obServerSlaves AxiStreamMasterArray(SERVER_SIZE_G-1 downto 0) ibServerMasters Slv16Array(CLIENT_SIZE_G-1 downto 0) clientRemotePort Slv32Array(CLIENT_SIZE_G-1 downto 0) clientRemoteIp AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0) obClientSlaves AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0) ibClientMasters sl clk sl rst slv(31 downto 0) dhcpIpOut AxiStreamMasterType obUdpMaster AxiStreamSlaveType ibUdpSlave AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0) arpReqMasters AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0) arpAckSlaves Slv16Array(SERVER_SIZE_G-1 downto 0) serverRemotePort Slv32Array(SERVER_SIZE_G-1 downto 0) serverRemoteIp 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
Description Company : SLAC National Accelerator Laboratory Description: Top-Level UDP/DHCP Module 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)
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
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
SYNTH_MODE_G
string
"inferred"
Ports
Port name
Direction
Type
Description
localMac
in
slv(47 downto 0)
big-Endian configuration
broadcastIp
in
slv(31 downto 0)
big-Endian configuration
localIpIn
in
slv(31 downto 0)
big-Endian configuration
dhcpIpOut
out
slv(31 downto 0)
big-Endian configuration
obUdpMaster
out
AxiStreamMasterType
Interface to IPV4 Engine
obUdpSlave
in
AxiStreamSlaveType
ibUdpMaster
in
AxiStreamMasterType
ibUdpSlave
out
AxiStreamSlaveType
arpReqMasters
out
AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0)
Interface to ARP Engine
arpReqSlaves
in
AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0)
arpAckMasters
in
AxiStreamMasterArray(CLIENT_SIZE_G-1 downto 0)
arpAckSlaves
out
AxiStreamSlaveArray(CLIENT_SIZE_G-1 downto 0)
serverRemotePort
out
Slv16Array(SERVER_SIZE_G-1 downto 0)
big-Endian configuration
serverRemoteIp
out
Slv32Array(SERVER_SIZE_G-1 downto 0)
big-Endian configuration
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
clientRemotePort
in
Slv16Array(CLIENT_SIZE_G-1 downto 0)
big-Endian configuration
clientRemoteIp
in
Slv32Array(CLIENT_SIZE_G-1 downto 0)
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
clk
in
sl
Clock and Reset
rst
in
sl
Signals
Name
Type
Description
clientRemoteDet
slv(CLIENT_SIZE_G-1 downto 0)
clientRemoteMac
Slv48Array(CLIENT_SIZE_G-1 downto 0)
remotePort
Slv16Array(SERVER_SIZE_G-1 downto 0)
remoteIp
Slv32Array(SERVER_SIZE_G-1 downto 0)
serverRemoteMac
Slv48Array(SERVER_SIZE_G-1 downto 0)
obUdpMasters
AxiStreamMasterArray(1 downto 0)
obUdpSlaves
AxiStreamSlaveArray(1 downto 0)
ibDhcpMaster
AxiStreamMasterType
ibDhcpSlave
AxiStreamSlaveType
obDhcpMaster
AxiStreamMasterType
obDhcpSlave
AxiStreamSlaveType
localIp
slv(31 downto 0)
Instantiations
U_UdpEngineRx: surf.UdpEngineRx