|
gem5 [DEVELOP-FOR-25.0]
|
#include <RoutingUnit.hh>
Public Member Functions | |
| RoutingUnit (Router *router) | |
| int | outportCompute (RouteInfo route, int inport, PortDirection inport_dirn) |
| void | addRoute (std::vector< NetDest > &routing_table_entry) |
| void | addWeight (int link_weight) |
| int | lookupRoutingTable (int vnet, NetDest net_dest) |
| void | addInDirection (PortDirection inport_dirn, int inport) |
| void | addOutDirection (PortDirection outport_dirn, int outport) |
| int | outportComputeXY (RouteInfo route, int inport, PortDirection inport_dirn) |
| int | outportComputeCustom (RouteInfo route, int inport, PortDirection inport_dirn) |
| bool | supportsVnet (int vnet, std::vector< int > sVnets) |
Private Attributes | |
| Router * | m_router |
| std::vector< std::vector< NetDest > > | m_routing_table |
| std::vector< int > | m_weight_table |
| std::map< PortDirection, int > | m_inports_dirn2idx |
| std::map< int, PortDirection > | m_inports_idx2dirn |
| std::map< int, PortDirection > | m_outports_idx2dirn |
| std::map< PortDirection, int > | m_outports_dirn2idx |
Definition at line 52 of file RoutingUnit.hh.
| gem5::ruby::garnet::RoutingUnit::RoutingUnit | ( | Router * | router | ) |
Definition at line 49 of file RoutingUnit.cc.
References m_router, m_routing_table, and m_weight_table.
| void gem5::ruby::garnet::RoutingUnit::addInDirection | ( | PortDirection | inport_dirn, |
| int | inport ) |
Definition at line 149 of file RoutingUnit.cc.
References m_inports_dirn2idx, and m_inports_idx2dirn.
| void gem5::ruby::garnet::RoutingUnit::addOutDirection | ( | PortDirection | outport_dirn, |
| int | outport ) |
Definition at line 156 of file RoutingUnit.cc.
References m_outports_dirn2idx, and m_outports_idx2dirn.
| void gem5::ruby::garnet::RoutingUnit::addRoute | ( | std::vector< NetDest > & | routing_table_entry | ) |
Definition at line 57 of file RoutingUnit.cc.
References m_routing_table, and gem5::ArmISA::v.
| void gem5::ruby::garnet::RoutingUnit::addWeight | ( | int | link_weight | ) |
Definition at line 68 of file RoutingUnit.cc.
References m_weight_table.
| int gem5::ruby::garnet::RoutingUnit::lookupRoutingTable | ( | int | vnet, |
| NetDest | net_dest ) |
Definition at line 97 of file RoutingUnit.cc.
References gem5::X86ISA::exit, fatal, INFINITE_, gem5::ruby::NetDest::intersectionIsNotEmpty(), m_router, m_routing_table, and m_weight_table.
Referenced by outportCompute().
| int gem5::ruby::garnet::RoutingUnit::outportCompute | ( | RouteInfo | route, |
| int | inport, | ||
| PortDirection | inport_dirn ) |
Definition at line 169 of file RoutingUnit.cc.
References gem5::ruby::garnet::CUSTOM_, gem5::ruby::garnet::RouteInfo::dest_router, lookupRoutingTable(), m_router, gem5::ruby::garnet::RouteInfo::net_dest, outportComputeCustom(), outportComputeXY(), gem5::ruby::garnet::TABLE_, gem5::ruby::garnet::RouteInfo::vnet, and gem5::ruby::garnet::XY_.
| int gem5::ruby::garnet::RoutingUnit::outportComputeCustom | ( | RouteInfo | route, |
| int | inport, | ||
| PortDirection | inport_dirn ) |
| int gem5::ruby::garnet::RoutingUnit::outportComputeXY | ( | RouteInfo | route, |
| int | inport, | ||
| PortDirection | inport_dirn ) |
Definition at line 208 of file RoutingUnit.cc.
References gem5::ruby::garnet::RouteInfo::dest_router, m_outports_dirn2idx, m_router, and panic.
Referenced by outportCompute().
| bool gem5::ruby::garnet::RoutingUnit::supportsVnet | ( | int | vnet, |
| std::vector< int > | sVnets ) |
Definition at line 74 of file RoutingUnit.cc.
|
private |
Definition at line 94 of file RoutingUnit.hh.
Referenced by addInDirection().
|
private |
Definition at line 95 of file RoutingUnit.hh.
Referenced by addInDirection().
|
private |
Definition at line 97 of file RoutingUnit.hh.
Referenced by addOutDirection(), and outportComputeXY().
|
private |
Definition at line 96 of file RoutingUnit.hh.
Referenced by addOutDirection().
|
private |
Definition at line 87 of file RoutingUnit.hh.
Referenced by lookupRoutingTable(), outportCompute(), outportComputeXY(), and RoutingUnit().
|
private |
Definition at line 90 of file RoutingUnit.hh.
Referenced by addRoute(), lookupRoutingTable(), and RoutingUnit().
|
private |
Definition at line 91 of file RoutingUnit.hh.
Referenced by addWeight(), lookupRoutingTable(), and RoutingUnit().