projects
/
gem5.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
config: add port directions and per-router delay in topology.
[gem5.git]
/
src
/
mem
/
ruby
/
network
/
Topology.hh
diff --git
a/src/mem/ruby/network/Topology.hh
b/src/mem/ruby/network/Topology.hh
index 7e0b12c63253cb8acb069ea2bf8d6d81471ad3d3..1a5f4b19d41825681010b62866bf78852edc48bb 100644
(file)
--- a/
src/mem/ruby/network/Topology.hh
+++ b/
src/mem/ruby/network/Topology.hh
@@
-52,11
+52,14
@@
class NetDest;
class Network;
typedef std::vector<std::vector<int> > Matrix;
class Network;
typedef std::vector<std::vector<int> > Matrix;
+typedef std::string PortDirection;
struct LinkEntry
{
BasicLink *link;
LinkDirection direction;
struct LinkEntry
{
BasicLink *link;
LinkDirection direction;
+ PortDirection src_outport_dirn;
+ PortDirection dst_inport_dirn;
};
typedef std::map<std::pair<SwitchID, SwitchID>, LinkEntry> LinkMap;
};
typedef std::map<std::pair<SwitchID, SwitchID>, LinkEntry> LinkMap;
@@
-72,7
+75,9
@@
class Topology
void print(std::ostream& out) const { out << "[Topology]"; }
private:
void print(std::ostream& out) const { out << "[Topology]"; }
private:
- void addLink(SwitchID src, SwitchID dest, BasicLink* link);
+ void addLink(SwitchID src, SwitchID dest, BasicLink* link,
+ PortDirection src_outport_dirn = "",
+ PortDirection dest_inport_dirn = "");
void makeLink(Network *net, SwitchID src, SwitchID dest,
const NetDest& routing_table_entry);
void makeLink(Network *net, SwitchID src, SwitchID dest,
const NetDest& routing_table_entry);