Srikant Bharadwaj has uploaded this change for review. (
https://gem5-review.googlesource.com/c/public/gem5/+/34259 )
Change subject: mem-garnet: Upgrade garnet version to 3.0
......................................................................
mem-garnet: Upgrade garnet version to 3.0
This version of garnet includes HeteroGarnet which
supports heterogenous interconnect systems, flexible
router and link configurations, and better debugging
resources.
Change-Id: Id4763421528305193ae0cd10c159b385a9513553
---
M configs/network/Network.py
R src/mem/ruby/network/garnet3.0/CommonTypes.hh
R src/mem/ruby/network/garnet3.0/Credit.cc
R src/mem/ruby/network/garnet3.0/Credit.hh
R src/mem/ruby/network/garnet3.0/CreditLink.hh
R src/mem/ruby/network/garnet3.0/CrossbarSwitch.cc
R src/mem/ruby/network/garnet3.0/CrossbarSwitch.hh
R src/mem/ruby/network/garnet3.0/GarnetLink.cc
R src/mem/ruby/network/garnet3.0/GarnetLink.hh
R src/mem/ruby/network/garnet3.0/GarnetLink.py
R src/mem/ruby/network/garnet3.0/GarnetNetwork.cc
R src/mem/ruby/network/garnet3.0/GarnetNetwork.hh
R src/mem/ruby/network/garnet3.0/GarnetNetwork.py
R src/mem/ruby/network/garnet3.0/InputUnit.cc
R src/mem/ruby/network/garnet3.0/InputUnit.hh
R src/mem/ruby/network/garnet3.0/NetworkBridge.cc
R src/mem/ruby/network/garnet3.0/NetworkBridge.hh
R src/mem/ruby/network/garnet3.0/NetworkInterface.cc
R src/mem/ruby/network/garnet3.0/NetworkInterface.hh
R src/mem/ruby/network/garnet3.0/NetworkLink.cc
R src/mem/ruby/network/garnet3.0/NetworkLink.hh
R src/mem/ruby/network/garnet3.0/OutVcState.cc
R src/mem/ruby/network/garnet3.0/OutVcState.hh
R src/mem/ruby/network/garnet3.0/OutputUnit.cc
R src/mem/ruby/network/garnet3.0/OutputUnit.hh
R src/mem/ruby/network/garnet3.0/README.txt
R src/mem/ruby/network/garnet3.0/Router.cc
R src/mem/ruby/network/garnet3.0/Router.hh
R src/mem/ruby/network/garnet3.0/RoutingUnit.cc
R src/mem/ruby/network/garnet3.0/RoutingUnit.hh
R src/mem/ruby/network/garnet3.0/SConscript
R src/mem/ruby/network/garnet3.0/SwitchAllocator.cc
R src/mem/ruby/network/garnet3.0/SwitchAllocator.hh
R src/mem/ruby/network/garnet3.0/VirtualChannel.cc
R src/mem/ruby/network/garnet3.0/VirtualChannel.hh
R src/mem/ruby/network/garnet3.0/flit.cc
R src/mem/ruby/network/garnet3.0/flit.hh
R src/mem/ruby/network/garnet3.0/flitBuffer.cc
R src/mem/ruby/network/garnet3.0/flitBuffer.hh
39 files changed, 184 insertions(+), 168 deletions(-)
diff --git a/configs/network/Network.py b/configs/network/Network.py
index 20d68c0..f52725e 100644
--- a/configs/network/Network.py
+++ b/configs/network/Network.py
@@ -31,7 +31,7 @@
import m5
from m5.objects import *
from m5.defines import buildEnv
-from m5.util import addToPath, fatal
+from m5.util import addToPath, fatal, warn
def define_options(parser):
# By default, ruby uses the simple timing cpu
@@ -42,8 +42,9 @@
parser.add_option("--mesh-rows", type="int", default=0,
help="the number of rows in the mesh topology")
parser.add_option("--network", type="choice", default="simple",
- choices=['simple', 'garnet2.0'],
- help="'simple'|'garnet2.0'")
+ choices=['simple', 'garnet2.0', 'garnet3.0'],
+ help="""'simple'|'garnet3.0' (garnet 2.0 will be
+ deprecated.)""")
parser.add_option("--router-latency", action="store", type="int",
default=1,
help="""number of pipeline stages in the garnet
router.
@@ -65,8 +66,8 @@
default=0,
help="""routing algorithm in network.
0: weight-based table
- 1: XY (for Mesh. see garnet2.0/RoutingUnit.cc)
- 2: Custom (see garnet2.0/RoutingUnit.cc""")
+ 1: XY (for Mesh. see garnet3.0/RoutingUnit.cc)
+ 2: Custom (see garnet3.0/RoutingUnit.cc""")
parser.add_option("--network-fault-model", action="store_true",
default=False,
help="""enable network fault model:
@@ -77,8 +78,15 @@
def create_network(options, ruby):
- # Set the network classes based on the command line options
+ # Allow legacy users to use garnet through garnet2.0 option
+ # until next gem5 release.
if options.network == "garnet2.0":
+ warn("garnet2.0 will be depracated. Please use garnet3.0 for" \
+ " using the latest garnet version.")
+ options.network = "garnet3.0"
+
+ # Set the network classes based on the command line options
+ if options.network == "garnet3.0":
NetworkClass = GarnetNetwork
IntLinkClass = GarnetIntLink
ExtLinkClass = GarnetExtLink
@@ -101,7 +109,7 @@
def init_network(options, network, InterfaceClass):
- if options.network == "garnet2.0":
+ if options.network == "garnet3.0":
network.num_rows = options.mesh_rows
network.vcs_per_vnet = options.vcs_per_vnet
network.ni_flit_size = options.link_width_bits / 8
@@ -181,6 +189,6 @@
network.netifs = netifs
if options.network_fault_model:
- assert(options.network == "garnet2.0")
+ assert(options.network == "garnet3.0")
network.enable_fault_model = True
network.fault_model = FaultModel()
diff --git a/src/mem/ruby/network/garnet2.0/CommonTypes.hh
b/src/mem/ruby/network/garnet3.0/CommonTypes.hh
similarity index 93%
rename from src/mem/ruby/network/garnet2.0/CommonTypes.hh
rename to src/mem/ruby/network/garnet3.0/CommonTypes.hh
index 643ce8c..cf91671 100644
--- a/src/mem/ruby/network/garnet2.0/CommonTypes.hh
+++ b/src/mem/ruby/network/garnet3.0/CommonTypes.hh
@@ -28,8 +28,8 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_COMMONTYPES_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_COMMONTYPES_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_COMMONTYPES_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_COMMONTYPES_HH__
#include "mem/ruby/common/NetDest.hh"
@@ -65,4 +65,4 @@
#define INFINITE_ 10000
-#endif //__MEM_RUBY_NETWORK_GARNET2_0_COMMONTYPES_HH__
+#endif //__MEM_RUBY_NETWORK_GARNET3_0_COMMONTYPES_HH__
diff --git a/src/mem/ruby/network/garnet2.0/Credit.cc
b/src/mem/ruby/network/garnet3.0/Credit.cc
similarity index 98%
rename from src/mem/ruby/network/garnet2.0/Credit.cc
rename to src/mem/ruby/network/garnet3.0/Credit.cc
index bde9484..b2ef10c 100644
--- a/src/mem/ruby/network/garnet2.0/Credit.cc
+++ b/src/mem/ruby/network/garnet3.0/Credit.cc
@@ -27,7 +27,7 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#include "mem/ruby/network/garnet2.0/Credit.hh"
+#include "mem/ruby/network/garnet3.0/Credit.hh"
#include "base/trace.hh"
#include "debug/RubyNetwork.hh"
diff --git a/src/mem/ruby/network/garnet2.0/Credit.hh
b/src/mem/ruby/network/garnet3.0/Credit.hh
similarity index 89%
rename from src/mem/ruby/network/garnet2.0/Credit.hh
rename to src/mem/ruby/network/garnet3.0/Credit.hh
index bcfd76f..d974c06 100644
--- a/src/mem/ruby/network/garnet2.0/Credit.hh
+++ b/src/mem/ruby/network/garnet3.0/Credit.hh
@@ -28,15 +28,15 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_CREDIT_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_CREDIT_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_CREDIT_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_CREDIT_HH__
#include <cassert>
#include <iostream>
#include "base/types.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/flit.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/flit.hh"
// Credit Signal for buffers inside VC
// Carries m_vc (inherits from flit.hh)
@@ -61,4 +61,4 @@
bool m_is_free_signal;
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_CREDIT_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_CREDIT_HH__
diff --git a/src/mem/ruby/network/garnet2.0/CreditLink.hh
b/src/mem/ruby/network/garnet3.0/CreditLink.hh
similarity index 89%
rename from src/mem/ruby/network/garnet2.0/CreditLink.hh
rename to src/mem/ruby/network/garnet3.0/CreditLink.hh
index 13e670d..d3eafb2 100644
--- a/src/mem/ruby/network/garnet2.0/CreditLink.hh
+++ b/src/mem/ruby/network/garnet3.0/CreditLink.hh
@@ -28,10 +28,10 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_CREDITLINK_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_CREDITLINK_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_CREDITLINK_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_CREDITLINK_HH__
-#include "mem/ruby/network/garnet2.0/NetworkLink.hh"
+#include "mem/ruby/network/garnet3.0/NetworkLink.hh"
#include "params/CreditLink.hh"
class CreditLink : public NetworkLink
@@ -41,4 +41,4 @@
CreditLink(const Params *p) : NetworkLink(p) {}
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_CREDITLINK_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_CREDITLINK_HH__
diff --git a/src/mem/ruby/network/garnet2.0/CrossbarSwitch.cc
b/src/mem/ruby/network/garnet3.0/CrossbarSwitch.cc
similarity index 95%
rename from src/mem/ruby/network/garnet2.0/CrossbarSwitch.cc
rename to src/mem/ruby/network/garnet3.0/CrossbarSwitch.cc
index 3148446..b164e7a 100644
--- a/src/mem/ruby/network/garnet2.0/CrossbarSwitch.cc
+++ b/src/mem/ruby/network/garnet3.0/CrossbarSwitch.cc
@@ -29,11 +29,11 @@
*/
-#include "mem/ruby/network/garnet2.0/CrossbarSwitch.hh"
+#include "mem/ruby/network/garnet3.0/CrossbarSwitch.hh"
#include "debug/RubyNetwork.hh"
-#include "mem/ruby/network/garnet2.0/OutputUnit.hh"
-#include "mem/ruby/network/garnet2.0/Router.hh"
+#include "mem/ruby/network/garnet3.0/OutputUnit.hh"
+#include "mem/ruby/network/garnet3.0/Router.hh"
CrossbarSwitch::CrossbarSwitch(Router *router)
: Consumer(router), m_router(router), m_num_vcs(m_router->get_num_vcs()),
diff --git a/src/mem/ruby/network/garnet2.0/CrossbarSwitch.hh
b/src/mem/ruby/network/garnet3.0/CrossbarSwitch.hh
similarity index 89%
rename from src/mem/ruby/network/garnet2.0/CrossbarSwitch.hh
rename to src/mem/ruby/network/garnet3.0/CrossbarSwitch.hh
index 7dee784..0acf7cd 100644
--- a/src/mem/ruby/network/garnet2.0/CrossbarSwitch.hh
+++ b/src/mem/ruby/network/garnet3.0/CrossbarSwitch.hh
@@ -29,15 +29,15 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_CROSSBARSWITCH_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_CROSSBARSWITCH_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_CROSSBARSWITCH_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_CROSSBARSWITCH_HH__
#include <iostream>
#include <vector>
#include "mem/ruby/common/Consumer.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/flitBuffer.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/flitBuffer.hh"
class Router;
@@ -68,4 +68,4 @@
std::vector<flitBuffer> switchBuffers;
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_CROSSBARSWITCH_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_CROSSBARSWITCH_HH__
diff --git a/src/mem/ruby/network/garnet2.0/GarnetLink.cc
b/src/mem/ruby/network/garnet3.0/GarnetLink.cc
similarity index 95%
rename from src/mem/ruby/network/garnet2.0/GarnetLink.cc
rename to src/mem/ruby/network/garnet3.0/GarnetLink.cc
index 99d891f..50e60c1 100644
--- a/src/mem/ruby/network/garnet2.0/GarnetLink.cc
+++ b/src/mem/ruby/network/garnet3.0/GarnetLink.cc
@@ -28,12 +28,12 @@
*/
-#include "mem/ruby/network/garnet2.0/GarnetLink.hh"
+#include "mem/ruby/network/garnet3.0/GarnetLink.hh"
#include "debug/RubyNetwork.hh"
-#include "mem/ruby/network/garnet2.0/CreditLink.hh"
-#include "mem/ruby/network/garnet2.0/NetworkBridge.hh"
-#include "mem/ruby/network/garnet2.0/NetworkLink.hh"
+#include "mem/ruby/network/garnet3.0/CreditLink.hh"
+#include "mem/ruby/network/garnet3.0/NetworkBridge.hh"
+#include "mem/ruby/network/garnet3.0/NetworkLink.hh"
GarnetIntLink::GarnetIntLink(const Params *p)
: BasicIntLink(p)
diff --git a/src/mem/ruby/network/garnet2.0/GarnetLink.hh
b/src/mem/ruby/network/garnet3.0/GarnetLink.hh
similarity index 90%
rename from src/mem/ruby/network/garnet2.0/GarnetLink.hh
rename to src/mem/ruby/network/garnet3.0/GarnetLink.hh
index 089bcce..1b05556 100644
--- a/src/mem/ruby/network/garnet2.0/GarnetLink.hh
+++ b/src/mem/ruby/network/garnet3.0/GarnetLink.hh
@@ -28,17 +28,17 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_GARNETLINK_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_GARNETLINK_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_GARNETLINK_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_GARNETLINK_HH__
#include <iostream>
#include <string>
#include <vector>
#include "mem/ruby/network/BasicLink.hh"
-#include "mem/ruby/network/garnet2.0/CreditLink.hh"
-#include "mem/ruby/network/garnet2.0/NetworkBridge.hh"
-#include "mem/ruby/network/garnet2.0/NetworkLink.hh"
+#include "mem/ruby/network/garnet3.0/CreditLink.hh"
+#include "mem/ruby/network/garnet3.0/NetworkBridge.hh"
+#include "mem/ruby/network/garnet3.0/NetworkLink.hh"
#include "params/GarnetExtLink.hh"
#include "params/GarnetIntLink.hh"
@@ -123,4 +123,4 @@
return out;
}
-#endif //__MEM_RUBY_NETWORK_GARNET2_0_GARNETLINK_HH__
+#endif //__MEM_RUBY_NETWORK_GARNET3_0_GARNETLINK_HH__
diff --git a/src/mem/ruby/network/garnet2.0/GarnetLink.py
b/src/mem/ruby/network/garnet3.0/GarnetLink.py
similarity index 95%
rename from src/mem/ruby/network/garnet2.0/GarnetLink.py
rename to src/mem/ruby/network/garnet3.0/GarnetLink.py
index d133032..ef472b3 100644
--- a/src/mem/ruby/network/garnet2.0/GarnetLink.py
+++ b/src/mem/ruby/network/garnet3.0/GarnetLink.py
@@ -37,7 +37,7 @@
class NetworkLink(ClockedObject):
type = 'NetworkLink'
- cxx_header = "mem/ruby/network/garnet2.0/NetworkLink.hh"
+ cxx_header = "mem/ruby/network/garnet3.0/NetworkLink.hh"
link_id = Param.Int(Parent.link_id, "link id")
link_latency = Param.Cycles(Parent.latency, "link latency")
vcs_per_vnet = Param.Int(Parent.vcs_per_vnet,
@@ -50,11 +50,11 @@
class CreditLink(NetworkLink):
type = 'CreditLink'
- cxx_header = "mem/ruby/network/garnet2.0/CreditLink.hh"
+ cxx_header = "mem/ruby/network/garnet3.0/CreditLink.hh"
class NetworkBridge(CreditLink):
type = 'NetworkBridge'
- cxx_header = "mem/ruby/network/garnet2.0/NetworkBridge.hh"
+ cxx_header = "mem/ruby/network/garnet3.0/NetworkBridge.hh"
link = Param.NetworkLink("Associated Network Link")
vtype = Param.CDCType('LINK_OBJECT',
"Direction of CDC LINK->OBJECT or OBJECT->LINK")
@@ -64,7 +64,7 @@
# Interior fixed pipeline links between routers
class GarnetIntLink(BasicIntLink):
type = 'GarnetIntLink'
- cxx_header = "mem/ruby/network/garnet2.0/GarnetLink.hh"
+ cxx_header = "mem/ruby/network/garnet3.0/GarnetLink.hh"
# The internal link includes one forward link (for flit)
# and one backward flow-control link (for credit)
network_link = Param.NetworkLink(NetworkLink(), "forward link")
@@ -101,7 +101,7 @@
# Exterior fixed pipeline links between a router and a controller
class GarnetExtLink(BasicExtLink):
type = 'GarnetExtLink'
- cxx_header = "mem/ruby/network/garnet2.0/GarnetLink.hh"
+ cxx_header = "mem/ruby/network/garnet3.0/GarnetLink.hh"
# The external link is bi-directional.
# It includes two forward links (for flits)
# and two backward flow-control links (for credits),
diff --git a/src/mem/ruby/network/garnet2.0/GarnetNetwork.cc
b/src/mem/ruby/network/garnet3.0/GarnetNetwork.cc
similarity index 97%
rename from src/mem/ruby/network/garnet2.0/GarnetNetwork.cc
rename to src/mem/ruby/network/garnet3.0/GarnetNetwork.cc
index bcc476f..d8d7e24 100644
--- a/src/mem/ruby/network/garnet2.0/GarnetNetwork.cc
+++ b/src/mem/ruby/network/garnet3.0/GarnetNetwork.cc
@@ -29,7 +29,7 @@
*/
-#include "mem/ruby/network/garnet2.0/GarnetNetwork.hh"
+#include "mem/ruby/network/garnet3.0/GarnetNetwork.hh"
#include <cassert>
@@ -37,12 +37,12 @@
#include "debug/RubyNetwork.hh"
#include "mem/ruby/common/NetDest.hh"
#include "mem/ruby/network/MessageBuffer.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/CreditLink.hh"
-#include "mem/ruby/network/garnet2.0/GarnetLink.hh"
-#include "mem/ruby/network/garnet2.0/NetworkInterface.hh"
-#include "mem/ruby/network/garnet2.0/NetworkLink.hh"
-#include "mem/ruby/network/garnet2.0/Router.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/CreditLink.hh"
+#include "mem/ruby/network/garnet3.0/GarnetLink.hh"
+#include "mem/ruby/network/garnet3.0/NetworkInterface.hh"
+#include "mem/ruby/network/garnet3.0/NetworkLink.hh"
+#include "mem/ruby/network/garnet3.0/Router.hh"
#include "mem/ruby/system/RubySystem.hh"
using namespace std;
diff --git a/src/mem/ruby/network/garnet2.0/GarnetNetwork.hh
b/src/mem/ruby/network/garnet3.0/GarnetNetwork.hh
similarity index 96%
rename from src/mem/ruby/network/garnet2.0/GarnetNetwork.hh
rename to src/mem/ruby/network/garnet3.0/GarnetNetwork.hh
index bb4b24a..459e0c1 100644
--- a/src/mem/ruby/network/garnet2.0/GarnetNetwork.hh
+++ b/src/mem/ruby/network/garnet3.0/GarnetNetwork.hh
@@ -29,15 +29,15 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_GARNETNETWORK_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_GARNETNETWORK_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_GARNETNETWORK_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_GARNETNETWORK_HH__
#include <iostream>
#include <vector>
#include "mem/ruby/network/Network.hh"
#include "mem/ruby/network/fault_model/FaultModel.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
#include "params/GarnetNetwork.hh"
class FaultModel;
@@ -202,4 +202,4 @@
return out;
}
-#endif //__MEM_RUBY_NETWORK_GARNET2_0_GARNETNETWORK_HH__
+#endif //__MEM_RUBY_NETWORK_GARNET3_0_GARNETNETWORK_HH__
diff --git a/src/mem/ruby/network/garnet2.0/GarnetNetwork.py
b/src/mem/ruby/network/garnet3.0/GarnetNetwork.py
similarity index 94%
rename from src/mem/ruby/network/garnet2.0/GarnetNetwork.py
rename to src/mem/ruby/network/garnet3.0/GarnetNetwork.py
index 012ab60..a9235cb 100644
--- a/src/mem/ruby/network/garnet2.0/GarnetNetwork.py
+++ b/src/mem/ruby/network/garnet3.0/GarnetNetwork.py
@@ -36,7 +36,7 @@
class GarnetNetwork(RubyNetwork):
type = 'GarnetNetwork'
- cxx_header = "mem/ruby/network/garnet2.0/GarnetNetwork.hh"
+ cxx_header = "mem/ruby/network/garnet3.0/GarnetNetwork.hh"
num_rows = Param.Int(0, "number of rows if 2D (mesh/torus/..)
topology");
ni_flit_size = Param.UInt32(16, "network interface flit size in bytes")
vcs_per_vnet = Param.UInt32(4, "virtual channels per virtual network");
@@ -52,7 +52,7 @@
class GarnetNetworkInterface(ClockedObject):
type = 'GarnetNetworkInterface'
cxx_class = 'NetworkInterface'
- cxx_header = "mem/ruby/network/garnet2.0/NetworkInterface.hh"
+ cxx_header = "mem/ruby/network/garnet3.0/NetworkInterface.hh"
id = Param.UInt32("ID in relation to other network interfaces")
vcs_per_vnet = Param.UInt32(Parent.vcs_per_vnet,
@@ -65,7 +65,7 @@
class GarnetRouter(BasicRouter):
type = 'GarnetRouter'
cxx_class = 'Router'
- cxx_header = "mem/ruby/network/garnet2.0/Router.hh"
+ cxx_header = "mem/ruby/network/garnet3.0/Router.hh"
vcs_per_vnet = Param.UInt32(Parent.vcs_per_vnet,
"virtual channels per virtual network")
virt_nets = Param.UInt32(Parent.number_of_virtual_networks,
diff --git a/src/mem/ruby/network/garnet2.0/InputUnit.cc
b/src/mem/ruby/network/garnet3.0/InputUnit.cc
similarity index 97%
rename from src/mem/ruby/network/garnet2.0/InputUnit.cc
rename to src/mem/ruby/network/garnet3.0/InputUnit.cc
index db24aef..918355a 100644
--- a/src/mem/ruby/network/garnet2.0/InputUnit.cc
+++ b/src/mem/ruby/network/garnet3.0/InputUnit.cc
@@ -29,11 +29,11 @@
*/
-#include "mem/ruby/network/garnet2.0/InputUnit.hh"
+#include "mem/ruby/network/garnet3.0/InputUnit.hh"
#include "debug/RubyNetwork.hh"
-#include "mem/ruby/network/garnet2.0/Credit.hh"
-#include "mem/ruby/network/garnet2.0/Router.hh"
+#include "mem/ruby/network/garnet3.0/Credit.hh"
+#include "mem/ruby/network/garnet3.0/Router.hh"
using namespace std;
diff --git a/src/mem/ruby/network/garnet2.0/InputUnit.hh
b/src/mem/ruby/network/garnet3.0/InputUnit.hh
similarity index 89%
rename from src/mem/ruby/network/garnet2.0/InputUnit.hh
rename to src/mem/ruby/network/garnet3.0/InputUnit.hh
index 40ef251..c6aeb3f 100644
--- a/src/mem/ruby/network/garnet2.0/InputUnit.hh
+++ b/src/mem/ruby/network/garnet3.0/InputUnit.hh
@@ -29,19 +29,19 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_INPUTUNIT_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_INPUTUNIT_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_INPUTUNIT_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_INPUTUNIT_HH__
#include <iostream>
#include <vector>
#include "mem/ruby/common/Consumer.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/CreditLink.hh"
-#include "mem/ruby/network/garnet2.0/NetworkLink.hh"
-#include "mem/ruby/network/garnet2.0/Router.hh"
-#include "mem/ruby/network/garnet2.0/VirtualChannel.hh"
-#include "mem/ruby/network/garnet2.0/flitBuffer.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/CreditLink.hh"
+#include "mem/ruby/network/garnet3.0/NetworkLink.hh"
+#include "mem/ruby/network/garnet3.0/Router.hh"
+#include "mem/ruby/network/garnet3.0/VirtualChannel.hh"
+#include "mem/ruby/network/garnet3.0/flitBuffer.hh"
class InputUnit : public Consumer
{
@@ -163,4 +163,4 @@
std::vector<double> m_num_buffer_reads;
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_INPUTUNIT_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_INPUTUNIT_HH__
diff --git a/src/mem/ruby/network/garnet2.0/NetworkBridge.cc
b/src/mem/ruby/network/garnet3.0/NetworkBridge.cc
similarity index 99%
rename from src/mem/ruby/network/garnet2.0/NetworkBridge.cc
rename to src/mem/ruby/network/garnet3.0/NetworkBridge.cc
index e7d340a..2f94fc8 100644
--- a/src/mem/ruby/network/garnet2.0/NetworkBridge.cc
+++ b/src/mem/ruby/network/garnet3.0/NetworkBridge.cc
@@ -34,7 +34,7 @@
*/
-#include "mem/ruby/network/garnet2.0/NetworkBridge.hh"
+#include "mem/ruby/network/garnet3.0/NetworkBridge.hh"
#include <cmath>
diff --git a/src/mem/ruby/network/garnet2.0/NetworkBridge.hh
b/src/mem/ruby/network/garnet3.0/NetworkBridge.hh
similarity index 86%
rename from src/mem/ruby/network/garnet2.0/NetworkBridge.hh
rename to src/mem/ruby/network/garnet3.0/NetworkBridge.hh
index 0e8ac0c..2ac4582 100644
--- a/src/mem/ruby/network/garnet2.0/NetworkBridge.hh
+++ b/src/mem/ruby/network/garnet3.0/NetworkBridge.hh
@@ -33,19 +33,19 @@
* Authors: Srikant Bharadwaj
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_NETWORK_BRIDGE_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_NETWORK_BRIDGE_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_NETWORK_BRIDGE_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_NETWORK_BRIDGE_HH__
#include <iostream>
#include <queue>
#include <vector>
#include "mem/ruby/common/Consumer.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/CreditLink.hh"
-#include "mem/ruby/network/garnet2.0/GarnetLink.hh"
-#include "mem/ruby/network/garnet2.0/NetworkLink.hh"
-#include "mem/ruby/network/garnet2.0/flitBuffer.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/CreditLink.hh"
+#include "mem/ruby/network/garnet3.0/GarnetLink.hh"
+#include "mem/ruby/network/garnet3.0/NetworkLink.hh"
+#include "mem/ruby/network/garnet3.0/flitBuffer.hh"
#include "params/NetworkBridge.hh"
class GarnetNetwork;
@@ -97,4 +97,4 @@
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_NETWORK_BRIDGE_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_NETWORK_BRIDGE_HH__
diff --git a/src/mem/ruby/network/garnet2.0/NetworkInterface.cc
b/src/mem/ruby/network/garnet3.0/NetworkInterface.cc
similarity index 99%
rename from src/mem/ruby/network/garnet2.0/NetworkInterface.cc
rename to src/mem/ruby/network/garnet3.0/NetworkInterface.cc
index 1b3c262..4102f51 100644
--- a/src/mem/ruby/network/garnet2.0/NetworkInterface.cc
+++ b/src/mem/ruby/network/garnet3.0/NetworkInterface.cc
@@ -30,7 +30,7 @@
*/
-#include "mem/ruby/network/garnet2.0/NetworkInterface.hh"
+#include "mem/ruby/network/garnet3.0/NetworkInterface.hh"
#include <cassert>
#include <cmath>
@@ -38,8 +38,8 @@
#include "base/cast.hh"
#include "debug/RubyNetwork.hh"
#include "mem/ruby/network/MessageBuffer.hh"
-#include "mem/ruby/network/garnet2.0/Credit.hh"
-#include "mem/ruby/network/garnet2.0/flitBuffer.hh"
+#include "mem/ruby/network/garnet3.0/Credit.hh"
+#include "mem/ruby/network/garnet3.0/flitBuffer.hh"
#include "mem/ruby/slicc_interface/Message.hh"
using namespace std;
diff --git a/src/mem/ruby/network/garnet2.0/NetworkInterface.hh
b/src/mem/ruby/network/garnet3.0/NetworkInterface.hh
similarity index 93%
rename from src/mem/ruby/network/garnet2.0/NetworkInterface.hh
rename to src/mem/ruby/network/garnet3.0/NetworkInterface.hh
index 09a13d9..881d220 100644
--- a/src/mem/ruby/network/garnet2.0/NetworkInterface.hh
+++ b/src/mem/ruby/network/garnet3.0/NetworkInterface.hh
@@ -30,19 +30,19 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_NETWORKINTERFACE_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_NETWORKINTERFACE_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_NETWORKINTERFACE_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_NETWORKINTERFACE_HH__
#include <iostream>
#include <vector>
#include "mem/ruby/common/Consumer.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/Credit.hh"
-#include "mem/ruby/network/garnet2.0/CreditLink.hh"
-#include "mem/ruby/network/garnet2.0/GarnetNetwork.hh"
-#include "mem/ruby/network/garnet2.0/NetworkLink.hh"
-#include "mem/ruby/network/garnet2.0/OutVcState.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/Credit.hh"
+#include "mem/ruby/network/garnet3.0/CreditLink.hh"
+#include "mem/ruby/network/garnet3.0/GarnetNetwork.hh"
+#include "mem/ruby/network/garnet3.0/NetworkLink.hh"
+#include "mem/ruby/network/garnet3.0/OutVcState.hh"
#include "mem/ruby/slicc_interface/Message.hh"
#include "params/GarnetNetworkInterface.hh"
@@ -297,4 +297,4 @@
OutputPort *getOutportForVnet(int vnet);
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_NETWORKINTERFACE_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_NETWORKINTERFACE_HH__
diff --git a/src/mem/ruby/network/garnet2.0/NetworkLink.cc
b/src/mem/ruby/network/garnet3.0/NetworkLink.cc
similarity index 97%
rename from src/mem/ruby/network/garnet2.0/NetworkLink.cc
rename to src/mem/ruby/network/garnet3.0/NetworkLink.cc
index e947781..46c345d 100644
--- a/src/mem/ruby/network/garnet2.0/NetworkLink.cc
+++ b/src/mem/ruby/network/garnet3.0/NetworkLink.cc
@@ -30,11 +30,11 @@
*/
-#include "mem/ruby/network/garnet2.0/NetworkLink.hh"
+#include "mem/ruby/network/garnet3.0/NetworkLink.hh"
#include "base/trace.hh"
#include "debug/RubyNetwork.hh"
-#include "mem/ruby/network/garnet2.0/CreditLink.hh"
+#include "mem/ruby/network/garnet3.0/CreditLink.hh"
NetworkLink::NetworkLink(const Params *p)
: ClockedObject(p), Consumer(this), m_id(p->link_id),
diff --git a/src/mem/ruby/network/garnet2.0/NetworkLink.hh
b/src/mem/ruby/network/garnet3.0/NetworkLink.hh
similarity index 92%
rename from src/mem/ruby/network/garnet2.0/NetworkLink.hh
rename to src/mem/ruby/network/garnet3.0/NetworkLink.hh
index 9cf2efb..1ab3235 100644
--- a/src/mem/ruby/network/garnet2.0/NetworkLink.hh
+++ b/src/mem/ruby/network/garnet3.0/NetworkLink.hh
@@ -30,15 +30,15 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_NETWORKLINK_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_NETWORKLINK_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_NETWORKLINK_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_NETWORKLINK_HH__
#include <iostream>
#include <vector>
#include "mem/ruby/common/Consumer.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/flitBuffer.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/flitBuffer.hh"
#include "params/NetworkLink.hh"
#include "sim/clocked_object.hh"
@@ -97,4 +97,4 @@
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_NETWORKLINK_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_NETWORKLINK_HH__
diff --git a/src/mem/ruby/network/garnet2.0/OutVcState.cc
b/src/mem/ruby/network/garnet3.0/OutVcState.cc
similarity index 97%
rename from src/mem/ruby/network/garnet2.0/OutVcState.cc
rename to src/mem/ruby/network/garnet3.0/OutVcState.cc
index 812038d..563b1f3 100644
--- a/src/mem/ruby/network/garnet2.0/OutVcState.cc
+++ b/src/mem/ruby/network/garnet3.0/OutVcState.cc
@@ -28,7 +28,7 @@
*/
-#include "mem/ruby/network/garnet2.0/OutVcState.hh"
+#include "mem/ruby/network/garnet3.0/OutVcState.hh"
#include "mem/ruby/system/RubySystem.hh"
diff --git a/src/mem/ruby/network/garnet2.0/OutVcState.hh
b/src/mem/ruby/network/garnet3.0/OutVcState.hh
similarity index 89%
rename from src/mem/ruby/network/garnet2.0/OutVcState.hh
rename to src/mem/ruby/network/garnet3.0/OutVcState.hh
index 915c46f..72efe34 100644
--- a/src/mem/ruby/network/garnet2.0/OutVcState.hh
+++ b/src/mem/ruby/network/garnet3.0/OutVcState.hh
@@ -28,11 +28,11 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_OUTVCSTATE_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_OUTVCSTATE_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_OUTVCSTATE_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_OUTVCSTATE_HH__
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/GarnetNetwork.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/GarnetNetwork.hh"
class OutVcState
{
@@ -64,4 +64,4 @@
int m_max_credit_count;
};
-#endif //__MEM_RUBY_NETWORK_GARNET2_0_OUTVCSTATE_HH__
+#endif //__MEM_RUBY_NETWORK_GARNET3_0_OUTVCSTATE_HH__
diff --git a/src/mem/ruby/network/garnet2.0/OutputUnit.cc
b/src/mem/ruby/network/garnet3.0/OutputUnit.cc
similarity index 95%
rename from src/mem/ruby/network/garnet2.0/OutputUnit.cc
rename to src/mem/ruby/network/garnet3.0/OutputUnit.cc
index dfa63e3..8be6e16 100644
--- a/src/mem/ruby/network/garnet2.0/OutputUnit.cc
+++ b/src/mem/ruby/network/garnet3.0/OutputUnit.cc
@@ -29,13 +29,13 @@
*/
-#include "mem/ruby/network/garnet2.0/OutputUnit.hh"
+#include "mem/ruby/network/garnet3.0/OutputUnit.hh"
#include "debug/RubyNetwork.hh"
-#include "mem/ruby/network/garnet2.0/Credit.hh"
-#include "mem/ruby/network/garnet2.0/CreditLink.hh"
-#include "mem/ruby/network/garnet2.0/Router.hh"
-#include "mem/ruby/network/garnet2.0/flitBuffer.hh"
+#include "mem/ruby/network/garnet3.0/Credit.hh"
+#include "mem/ruby/network/garnet3.0/CreditLink.hh"
+#include "mem/ruby/network/garnet3.0/Router.hh"
+#include "mem/ruby/network/garnet3.0/flitBuffer.hh"
OutputUnit::OutputUnit(int id, PortDirection direction, Router *router,
uint32_t consumerVcs)
diff --git a/src/mem/ruby/network/garnet2.0/OutputUnit.hh
b/src/mem/ruby/network/garnet3.0/OutputUnit.hh
similarity index 91%
rename from src/mem/ruby/network/garnet2.0/OutputUnit.hh
rename to src/mem/ruby/network/garnet3.0/OutputUnit.hh
index 3e80dde..fe560a1 100644
--- a/src/mem/ruby/network/garnet2.0/OutputUnit.hh
+++ b/src/mem/ruby/network/garnet3.0/OutputUnit.hh
@@ -29,17 +29,17 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_OUTPUTUNIT_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_OUTPUTUNIT_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_OUTPUTUNIT_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_OUTPUTUNIT_HH__
#include <iostream>
#include <vector>
#include "base/compiler.hh"
#include "mem/ruby/common/Consumer.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/NetworkLink.hh"
-#include "mem/ruby/network/garnet2.0/OutVcState.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/NetworkLink.hh"
+#include "mem/ruby/network/garnet3.0/OutVcState.hh"
class CreditLink;
class Router;
@@ -111,4 +111,4 @@
std::vector<OutVcState> outVcState;
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_OUTPUTUNIT_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_OUTPUTUNIT_HH__
diff --git a/src/mem/ruby/network/garnet2.0/README.txt
b/src/mem/ruby/network/garnet3.0/README.txt
similarity index 89%
rename from src/mem/ruby/network/garnet2.0/README.txt
rename to src/mem/ruby/network/garnet3.0/README.txt
index 817b1d4..6425c02 100644
--- a/src/mem/ruby/network/garnet2.0/README.txt
+++ b/src/mem/ruby/network/garnet3.0/README.txt
@@ -1,6 +1,6 @@
-README for Garnet2.0
+README for Garnet3.0
Written By: Tushar Krishna (tus...@ece.gatech.edu)
-Last Updated: Jul 9, 2016
+Last Updated: Sep 9, 2020
-------------------------------------------------------
Garnet Network Parameters and Setup:
@@ -15,7 +15,7 @@
- NetworkInterface.cc::wakeup()
* Every NI connected to one coherence protocol controller on one end,
and one router on the other.
* receives messages from coherence protocol buffer in appropriate vnet
and converts them into network packets and sends them into the network.
- * garnet2.0 adds the ability to capture a network trace at this
point.
+ * garnet3.0 adds the ability to capture a network trace at this
point.
* receives flits from the network, extracts the protocol message and
sends it to the coherence protocol buffer in appropriate vnet.
* manages flow-control (i.e., credits) with its attached router.
* The consuming flit/credit output link of the NI is put in the global
event queue with a timestamp set to next cycle.
@@ -69,3 +69,11 @@
The eventqueue calls the wakeup function in the consumer.
+If a clock domain crossing(CDC) or Serializer-Deserializer unit is
+instantiated, then the Network Brisge takes over the flit in HeteroGarnet.
+- NetworkBridge::wakeup()
+ * Check if SerDes is enabled and do appropriate calculations for
+ serializing or deserializing the flits
+ * Check if CDC is enabled and schedule all the flits according
+ to the consumers clock domain.
+
diff --git a/src/mem/ruby/network/garnet2.0/Router.cc
b/src/mem/ruby/network/garnet3.0/Router.cc
similarity index 96%
rename from src/mem/ruby/network/garnet2.0/Router.cc
rename to src/mem/ruby/network/garnet3.0/Router.cc
index 9802b69..61cedc7 100644
--- a/src/mem/ruby/network/garnet2.0/Router.cc
+++ b/src/mem/ruby/network/garnet3.0/Router.cc
@@ -30,14 +30,14 @@
*/
-#include "mem/ruby/network/garnet2.0/Router.hh"
+#include "mem/ruby/network/garnet3.0/Router.hh"
#include "debug/RubyNetwork.hh"
-#include "mem/ruby/network/garnet2.0/CreditLink.hh"
-#include "mem/ruby/network/garnet2.0/GarnetNetwork.hh"
-#include "mem/ruby/network/garnet2.0/InputUnit.hh"
-#include "mem/ruby/network/garnet2.0/NetworkLink.hh"
-#include "mem/ruby/network/garnet2.0/OutputUnit.hh"
+#include "mem/ruby/network/garnet3.0/CreditLink.hh"
+#include "mem/ruby/network/garnet3.0/GarnetNetwork.hh"
+#include "mem/ruby/network/garnet3.0/InputUnit.hh"
+#include "mem/ruby/network/garnet3.0/NetworkLink.hh"
+#include "mem/ruby/network/garnet3.0/OutputUnit.hh"
using namespace std;
diff --git a/src/mem/ruby/network/garnet2.0/Router.hh
b/src/mem/ruby/network/garnet3.0/Router.hh
similarity index 91%
rename from src/mem/ruby/network/garnet2.0/Router.hh
rename to src/mem/ruby/network/garnet3.0/Router.hh
index 312ab4d..a0f6786 100644
--- a/src/mem/ruby/network/garnet2.0/Router.hh
+++ b/src/mem/ruby/network/garnet3.0/Router.hh
@@ -29,8 +29,8 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_ROUTER_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_ROUTER_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_ROUTER_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_ROUTER_HH__
#include <iostream>
#include <memory>
@@ -39,12 +39,12 @@
#include "mem/ruby/common/Consumer.hh"
#include "mem/ruby/common/NetDest.hh"
#include "mem/ruby/network/BasicRouter.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/CrossbarSwitch.hh"
-#include "mem/ruby/network/garnet2.0/GarnetNetwork.hh"
-#include "mem/ruby/network/garnet2.0/RoutingUnit.hh"
-#include "mem/ruby/network/garnet2.0/SwitchAllocator.hh"
-#include "mem/ruby/network/garnet2.0/flit.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/CrossbarSwitch.hh"
+#include "mem/ruby/network/garnet3.0/GarnetNetwork.hh"
+#include "mem/ruby/network/garnet3.0/RoutingUnit.hh"
+#include "mem/ruby/network/garnet3.0/SwitchAllocator.hh"
+#include "mem/ruby/network/garnet3.0/flit.hh"
#include "params/GarnetRouter.hh"
class NetworkLink;
@@ -154,4 +154,4 @@
Stats::Scalar m_crossbar_activity;
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_ROUTER_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_ROUTER_HH__
diff --git a/src/mem/ruby/network/garnet2.0/RoutingUnit.cc
b/src/mem/ruby/network/garnet3.0/RoutingUnit.cc
similarity index 98%
rename from src/mem/ruby/network/garnet2.0/RoutingUnit.cc
rename to src/mem/ruby/network/garnet3.0/RoutingUnit.cc
index 5ba0dec..7b71d4f 100644
--- a/src/mem/ruby/network/garnet2.0/RoutingUnit.cc
+++ b/src/mem/ruby/network/garnet3.0/RoutingUnit.cc
@@ -28,12 +28,12 @@
*/
-#include "mem/ruby/network/garnet2.0/RoutingUnit.hh"
+#include "mem/ruby/network/garnet3.0/RoutingUnit.hh"
#include "base/cast.hh"
#include "debug/RubyNetwork.hh"
-#include "mem/ruby/network/garnet2.0/InputUnit.hh"
-#include "mem/ruby/network/garnet2.0/Router.hh"
+#include "mem/ruby/network/garnet3.0/InputUnit.hh"
+#include "mem/ruby/network/garnet3.0/Router.hh"
#include "mem/ruby/slicc_interface/Message.hh"
RoutingUnit::RoutingUnit(Router *router)
diff --git a/src/mem/ruby/network/garnet2.0/RoutingUnit.hh
b/src/mem/ruby/network/garnet3.0/RoutingUnit.hh
similarity index 91%
rename from src/mem/ruby/network/garnet2.0/RoutingUnit.hh
rename to src/mem/ruby/network/garnet3.0/RoutingUnit.hh
index a0ed901..036170a 100644
--- a/src/mem/ruby/network/garnet2.0/RoutingUnit.hh
+++ b/src/mem/ruby/network/garnet3.0/RoutingUnit.hh
@@ -28,14 +28,14 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_ROUTINGUNIT_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_ROUTINGUNIT_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_ROUTINGUNIT_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_ROUTINGUNIT_HH__
#include "mem/ruby/common/Consumer.hh"
#include "mem/ruby/common/NetDest.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/GarnetNetwork.hh"
-#include "mem/ruby/network/garnet2.0/flit.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/GarnetNetwork.hh"
+#include "mem/ruby/network/garnet3.0/flit.hh"
class InputUnit;
class Router;
@@ -88,4 +88,4 @@
std::map<PortDirection, int> m_outports_dirn2idx;
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_ROUTINGUNIT_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_ROUTINGUNIT_HH__
diff --git a/src/mem/ruby/network/garnet2.0/SConscript
b/src/mem/ruby/network/garnet3.0/SConscript
similarity index 100%
rename from src/mem/ruby/network/garnet2.0/SConscript
rename to src/mem/ruby/network/garnet3.0/SConscript
diff --git a/src/mem/ruby/network/garnet2.0/SwitchAllocator.cc
b/src/mem/ruby/network/garnet3.0/SwitchAllocator.cc
similarity index 97%
rename from src/mem/ruby/network/garnet2.0/SwitchAllocator.cc
rename to src/mem/ruby/network/garnet3.0/SwitchAllocator.cc
index 1ed6de1..2d1e4e2 100644
--- a/src/mem/ruby/network/garnet2.0/SwitchAllocator.cc
+++ b/src/mem/ruby/network/garnet3.0/SwitchAllocator.cc
@@ -29,13 +29,13 @@
*/
-#include "mem/ruby/network/garnet2.0/SwitchAllocator.hh"
+#include "mem/ruby/network/garnet3.0/SwitchAllocator.hh"
#include "debug/RubyNetwork.hh"
-#include "mem/ruby/network/garnet2.0/GarnetNetwork.hh"
-#include "mem/ruby/network/garnet2.0/InputUnit.hh"
-#include "mem/ruby/network/garnet2.0/OutputUnit.hh"
-#include "mem/ruby/network/garnet2.0/Router.hh"
+#include "mem/ruby/network/garnet3.0/GarnetNetwork.hh"
+#include "mem/ruby/network/garnet3.0/InputUnit.hh"
+#include "mem/ruby/network/garnet3.0/OutputUnit.hh"
+#include "mem/ruby/network/garnet3.0/Router.hh"
SwitchAllocator::SwitchAllocator(Router *router)
: Consumer(router)
diff --git a/src/mem/ruby/network/garnet2.0/SwitchAllocator.hh
b/src/mem/ruby/network/garnet3.0/SwitchAllocator.hh
similarity index 92%
rename from src/mem/ruby/network/garnet2.0/SwitchAllocator.hh
rename to src/mem/ruby/network/garnet3.0/SwitchAllocator.hh
index b309735..6352491 100644
--- a/src/mem/ruby/network/garnet2.0/SwitchAllocator.hh
+++ b/src/mem/ruby/network/garnet3.0/SwitchAllocator.hh
@@ -29,14 +29,14 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_SWITCHALLOCATOR_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_SWITCHALLOCATOR_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_SWITCHALLOCATOR_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_SWITCHALLOCATOR_HH__
#include <iostream>
#include <vector>
#include "mem/ruby/common/Consumer.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
class Router;
class InputUnit;
@@ -83,4 +83,4 @@
std::vector<std::vector<int>> m_vc_winners; // a list for each outport
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_SWITCHALLOCATOR_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_SWITCHALLOCATOR_HH__
diff --git a/src/mem/ruby/network/garnet2.0/VirtualChannel.cc
b/src/mem/ruby/network/garnet3.0/VirtualChannel.cc
similarity index 97%
rename from src/mem/ruby/network/garnet2.0/VirtualChannel.cc
rename to src/mem/ruby/network/garnet3.0/VirtualChannel.cc
index 0b53983..d8dea68 100644
--- a/src/mem/ruby/network/garnet2.0/VirtualChannel.cc
+++ b/src/mem/ruby/network/garnet3.0/VirtualChannel.cc
@@ -29,7 +29,7 @@
*/
-#include "mem/ruby/network/garnet2.0/VirtualChannel.hh"
+#include "mem/ruby/network/garnet3.0/VirtualChannel.hh"
VirtualChannel::VirtualChannel()
: inputBuffer(), m_vc_state(IDLE_, Tick(0)), m_output_port(-1),
diff --git a/src/mem/ruby/network/garnet2.0/VirtualChannel.hh
b/src/mem/ruby/network/garnet3.0/VirtualChannel.hh
similarity index 91%
rename from src/mem/ruby/network/garnet2.0/VirtualChannel.hh
rename to src/mem/ruby/network/garnet3.0/VirtualChannel.hh
index f206299..1ad91e0 100644
--- a/src/mem/ruby/network/garnet2.0/VirtualChannel.hh
+++ b/src/mem/ruby/network/garnet3.0/VirtualChannel.hh
@@ -29,13 +29,13 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_VIRTUALCHANNEL_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_VIRTUALCHANNEL_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_VIRTUALCHANNEL_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_VIRTUALCHANNEL_HH__
#include <utility>
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/flitBuffer.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/flitBuffer.hh"
class VirtualChannel
{
@@ -96,4 +96,4 @@
int m_output_vc;
};
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_VIRTUALCHANNEL_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_VIRTUALCHANNEL_HH__
diff --git a/src/mem/ruby/network/garnet2.0/flit.cc
b/src/mem/ruby/network/garnet3.0/flit.cc
similarity index 98%
rename from src/mem/ruby/network/garnet2.0/flit.cc
rename to src/mem/ruby/network/garnet3.0/flit.cc
index 28a79d4..bfbfe6e 100644
--- a/src/mem/ruby/network/garnet2.0/flit.cc
+++ b/src/mem/ruby/network/garnet3.0/flit.cc
@@ -28,7 +28,7 @@
*/
-#include "mem/ruby/network/garnet2.0/flit.hh"
+#include "mem/ruby/network/garnet3.0/flit.hh"
#include "base/intmath.hh"
#include "debug/RubyNetwork.hh"
diff --git a/src/mem/ruby/network/garnet2.0/flit.hh
b/src/mem/ruby/network/garnet3.0/flit.hh
similarity index 95%
rename from src/mem/ruby/network/garnet2.0/flit.hh
rename to src/mem/ruby/network/garnet3.0/flit.hh
index 1bbd152..4cd410a 100644
--- a/src/mem/ruby/network/garnet2.0/flit.hh
+++ b/src/mem/ruby/network/garnet3.0/flit.hh
@@ -28,14 +28,14 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_FLIT_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_FLIT_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_FLIT_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_FLIT_HH__
#include <cassert>
#include <iostream>
#include "base/types.hh"
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
#include "mem/ruby/slicc_interface/Message.hh"
class flit
@@ -127,4 +127,4 @@
return out;
}
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_FLIT_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_FLIT_HH__
diff --git a/src/mem/ruby/network/garnet2.0/flitBuffer.cc
b/src/mem/ruby/network/garnet3.0/flitBuffer.cc
similarity index 97%
rename from src/mem/ruby/network/garnet2.0/flitBuffer.cc
rename to src/mem/ruby/network/garnet3.0/flitBuffer.cc
index c721639..973eca0 100644
--- a/src/mem/ruby/network/garnet2.0/flitBuffer.cc
+++ b/src/mem/ruby/network/garnet3.0/flitBuffer.cc
@@ -29,7 +29,7 @@
*/
-#include "mem/ruby/network/garnet2.0/flitBuffer.hh"
+#include "mem/ruby/network/garnet3.0/flitBuffer.hh"
flitBuffer::flitBuffer()
{
diff --git a/src/mem/ruby/network/garnet2.0/flitBuffer.hh
b/src/mem/ruby/network/garnet3.0/flitBuffer.hh
similarity index 90%
rename from src/mem/ruby/network/garnet2.0/flitBuffer.hh
rename to src/mem/ruby/network/garnet3.0/flitBuffer.hh
index f98ecf6..e51c08b 100644
--- a/src/mem/ruby/network/garnet2.0/flitBuffer.hh
+++ b/src/mem/ruby/network/garnet3.0/flitBuffer.hh
@@ -28,15 +28,15 @@
*/
-#ifndef __MEM_RUBY_NETWORK_GARNET2_0_FLITBUFFER_HH__
-#define __MEM_RUBY_NETWORK_GARNET2_0_FLITBUFFER_HH__
+#ifndef __MEM_RUBY_NETWORK_GARNET3_0_FLITBUFFER_HH__
+#define __MEM_RUBY_NETWORK_GARNET3_0_FLITBUFFER_HH__
#include <algorithm>
#include <iostream>
#include <vector>
-#include "mem/ruby/network/garnet2.0/CommonTypes.hh"
-#include "mem/ruby/network/garnet2.0/flit.hh"
+#include "mem/ruby/network/garnet3.0/CommonTypes.hh"
+#include "mem/ruby/network/garnet3.0/flit.hh"
class flitBuffer
{
@@ -88,4 +88,4 @@
return out;
}
-#endif // __MEM_RUBY_NETWORK_GARNET2_0_FLITBUFFER_HH__
+#endif // __MEM_RUBY_NETWORK_GARNET3_0_FLITBUFFER_HH__
--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/34259
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings
Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: Id4763421528305193ae0cd10c159b385a9513553
Gerrit-Change-Number: 34259
Gerrit-PatchSet: 1
Gerrit-Owner: Srikant Bharadwaj <srikant.bharad...@amd.com>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s