-
Notifications
You must be signed in to change notification settings - Fork 46
Std. Core: Output Port Lookup (NIC)
nic_output_port_lookup
v1.0.0
Original version for nf10:
Adam Covington (gcoving_at_stanford.edu)
James Hongyi Zeng (hyzeng_at_stanford.edu)
Modified for NetFPGA-SUME by:
Noa Zilberman
IP core (HW)
lib/hw/std/cores/nic_output_port_lookup_v1_0_0/
AXI4-Stream
AXI-Lite
S_AXIS: Slave AXI4-Stream bus, Variable width
M_AXIS: Master AXI4-Stream bus, Variable width
C_M_AXIS_DATA_WIDTH: Data width of the master AXI4-Stream data bus.
C_S_AXIS_DATA_WIDTH: Data width of the slave AXI4-Stream data bus.
C_M_AXIS_TUSER_WIDTH: Data width of the master TUSER bus.
C_S_AXIS_TUSER_WIDTH: Data width of the slave TUSER bus.
C_BASEADDR: Base address value of the core.
C_HIGHADDR: High address value of the core.
This module uses register infrastructure Ver 1.00, please refer to here for more details.
0x0 : ID - Block ID
0x4 : VERSION - Block Version
0x8 : FLIP - Returns the negative value of a written register
0xC : COUNTERIN - Total number of incoming packets
0x10: COUNTEROUT - Total number of outgoing packets
0x14: DEBUG - Debug register, returns the written value plus a preconfigured value
The function of this block is to set the destination port meta data field for all packets. In the NIC every packet from an SFP+ connection is sent to the host. This is done by setting the destination port to be that of the host. When a packet is from the host the source port meta data is used to set the correct destination port for the SFP+ connection.