Configuring NIC MAC addr in firesim

26 views
Skip to first unread message

Varun Gandhi

unread,
Nov 24, 2020, 1:44:12 PM11/24/20
to chip...@googlegroups.com
Hi,

How does firesim configure the physical MAC addr of a NIC running on a simulation node? 

There’s a hardcoded field in the icenet module — MULTICAST_MACADDR = 0x010000C28001L; it appears to be the source MAC addr of outgoing packets in Pauser.scala

I’m trying to modify IceNet to support virtual MAC addresses but not sure if I need to modify the NIC or look into the ToR switch or simulation controller in firesim.

Any pointers are much appreciated!

Best,
Varun

Alon Amid

unread,
Nov 24, 2020, 6:40:20 PM11/24/20
to chip...@googlegroups.com

Hello Varun

 

The MAC addresses are set during simulation boot time through the FireSim manager and the FireSim simulation host.

The host FireSim NIC bridge driver writes those MAC addresses to the NIC bridge module on the FPGA (https://github.com/firesim/firesim/blob/c2d8e3a46e59222e115a1fdaa7267592e1d3c503/sim/firesim-lib/src/main/cc/bridges/simplenic.cc#L189 ).

If you look at deploy/runtools/firesim_topology_elements.py and deploy/runtools/runtime_config.py you will see how the FireSim manager assigns MAC addresses to the various nodes in the network topology, and the way those MAC addresses are passed as arguments to the FireSim boot simulation command.

 

Alon

--
You received this message because you are subscribed to the Google Groups "Chipyard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chipyard+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/chipyard/A4D5265F-4DEA-4597-88D2-367F8490297F%40g.harvard.edu.

Reply all
Reply to author
Forward
0 new messages