orca-sim
|
#include <HermesRouter.hpp>
Public Member Functions | |
uint32_t | GetRR () |
Buffer< FlitType > * | GetOutputBuffer (uint32_t p) |
Get a pointer to one of the output buffers. More... | |
Buffer< FlitType > * | GetInputBuffer (uint32_t p) |
void | SetOutputBuffer (Buffer< FlitType > *b, uint32_t port) |
SimulationTime | Run () |
Implementation of the Process' interface. More... | |
uint32_t | GetRouteXY (FlitType flit) |
return this More... | |
HermesRouter (std::string name, uint32_t x_pos, uint32_t y_pos) | |
Ctor. More... | |
~HermesRouter () | |
Dtor. More... | |
std::string | GetPortName (int port) |
Get the name of the port of id equals to <port> More... | |
void | Reset () |
Resets the instance to its starting state. More... | |
std::string | ToString () |
a name that identifies the model, advisably not empty. | |
Default ctor. | |
std::string | GetName () |
Getter method for the <_name> field. More... | |
void | SetName (std::string s) |
Setter method for the <_name> field. More... | |
Private Attributes | |
int16_t | _switch_control [5] |
int16_t | _flits_to_send [5] |
uint32_t | _round_robin |
uint32_t | _x |
uint32_t | _y |
Buffer< FlitType > * | _ob [5] |
Buffer< FlitType > * | _ib [5] |
Definition at line 61 of file HermesRouter.hpp.
HermesRouter::HermesRouter | ( | std::string | name, |
uint32_t | x_pos, | ||
uint32_t | y_pos | ||
) |
Ctor.
name | Name of the instance (proccess impl) |
x_pos | X coordinate (first part of router addr) |
y_pos | Y coordinate (second part of router addr) |
Definition at line 57 of file HermesRouter.cpp.
HermesRouter::~HermesRouter | ( | ) |
Dtor.
Free allocated memory if any.
Definition at line 82 of file HermesRouter.cpp.
Definition at line 241 of file HermesRouter.cpp.
|
inherited |
Get a pointer to one of the output buffers.
r | The port from which get the pointer. |
Definition at line 237 of file HermesRouter.cpp.
std::string HermesRouter::GetPortName | ( | int | port | ) |
Get the name of the port of id equals to <port>
port | the id of the port |
Definition at line 41 of file HermesRouter.cpp.
uint32_t HermesRouter::GetRouteXY | ( | FlitType | flit | ) |
return this
Calculate the port to route a given flit.
flit | to be routed |
Definition at line 214 of file HermesRouter.cpp.
uint32_t HermesRouter::GetRR | ( | ) |
Definition at line 102 of file HermesRouter.cpp.
|
virtual |
Resets the instance to its starting state.
Must be implemented by subclasses
Implements orcasim::base::TimedModel.
Definition at line 91 of file HermesRouter.cpp.
|
virtual |
Implementation of the Process' interface.
Implementation of the Run method from the Proccess abstract class.
Implements orcasim::base::TimedModel.
Definition at line 110 of file HermesRouter.cpp.
|
inherited |
Definition at line 245 of file HermesRouter.cpp.
std::string HermesRouter::ToString | ( | ) |
Definition at line 249 of file HermesRouter.cpp.
|
private |
Definition at line 78 of file HermesRouter.hpp.
Definition at line 90 of file HermesRouter.hpp.
Definition at line 87 of file HermesRouter.hpp.
|
private |
Definition at line 81 of file HermesRouter.hpp.
|
private |
Definition at line 75 of file HermesRouter.hpp.
|
private |
Definition at line 84 of file HermesRouter.hpp.
|
private |
Definition at line 84 of file HermesRouter.hpp.