summaryrefslogtreecommitdiff
path: root/src/dev/net/Ethernet.py
diff options
context:
space:
mode:
authorMohammad Alian <m.alian1369@gmail.com>2016-02-06 13:33:34 -0500
committerMohammad Alian <m.alian1369@gmail.com>2016-02-06 13:33:34 -0500
commit24da47cf96e0914cac550d66534860266a2a3280 (patch)
tree69eab014876100a191cd6d78ba408a821f4cc769 /src/dev/net/Ethernet.py
parentce35c06c6e0f957ce4d6b8f122e9a37532210a0d (diff)
downloadgem5-24da47cf96e0914cac550d66534860266a2a3280.tar.xz
dist, dev: add an ethernet switch model
Diffstat (limited to 'src/dev/net/Ethernet.py')
-rw-r--r--src/dev/net/Ethernet.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/dev/net/Ethernet.py b/src/dev/net/Ethernet.py
index 5f878ea10..981a19223 100644
--- a/src/dev/net/Ethernet.py
+++ b/src/dev/net/Ethernet.py
@@ -82,6 +82,18 @@ class EtherBus(EtherObject):
dump = Param.EtherDump(NULL, "dump object")
speed = Param.NetworkBandwidth('100Mbps', "bus speed in bits per second")
+class EtherSwitch(EtherObject):
+ type = 'EtherSwitch'
+ cxx_header = "dev/net/etherswitch.hh"
+ dump = Param.EtherDump(NULL, "dump object")
+ fabric_speed = Param.NetworkBandwidth('10Gbps', "switch fabric speed in bits "
+ "per second")
+ interface = VectorMasterPort("Ethernet Interface")
+ output_buffer_size = Param.MemorySize('1MB', "size of output port buffers")
+ delay = Param.Latency('0us', "packet transmit delay")
+ delay_var = Param.Latency('0ns', "packet transmit delay variability")
+ time_to_live = Param.Latency('10ms', "time to live of MAC address maping")
+
class EtherTap(EtherObject):
type = 'EtherTap'
cxx_header = "dev/net/ethertap.hh"