|
gem5
v21.2.1.1
|
#include <CrossbarSwitch.hh>
Public Member Functions | |
| CrossbarSwitch (Router *router) | |
| ~CrossbarSwitch ()=default | |
| void | wakeup () |
| void | init () |
| void | print (std::ostream &out) const |
| void | update_sw_winner (int inport, flit *t_flit) |
| double | get_crossbar_activity () |
| uint32_t | functionalWrite (Packet *pkt) |
| void | resetStats () |
Public Member Functions inherited from gem5::ruby::Consumer | |
| Consumer (ClockedObject *_em) | |
| virtual | ~Consumer () |
| virtual void | storeEventInfo (int info) |
| bool | alreadyScheduled (Tick time) |
| ClockedObject * | getObject () |
| void | scheduleEventAbsolute (Tick timeAbs) |
| void | scheduleEvent (Cycles timeDelta) |
Private Attributes | |
| Router * | m_router |
| int | m_num_vcs |
| double | m_crossbar_activity |
| std::vector< flitBuffer > | switchBuffers |
Definition at line 53 of file CrossbarSwitch.hh.
| gem5::ruby::garnet::CrossbarSwitch::CrossbarSwitch | ( | Router * | router | ) |
Definition at line 47 of file CrossbarSwitch.cc.
|
default |
| uint32_t gem5::ruby::garnet::CrossbarSwitch::functionalWrite | ( | Packet * | pkt | ) |
Definition at line 95 of file CrossbarSwitch.cc.
References switchBuffers.
Referenced by gem5::ruby::garnet::Router::functionalWrite().
|
inline |
Definition at line 68 of file CrossbarSwitch.hh.
References m_crossbar_activity.
Referenced by gem5::ruby::garnet::Router::collateStats().
| void gem5::ruby::garnet::CrossbarSwitch::init | ( | ) |
Definition at line 54 of file CrossbarSwitch.cc.
References gem5::ruby::garnet::Router::get_num_inports(), m_router, and switchBuffers.
Referenced by gem5::ruby::garnet::Router::init().
|
inlinevirtual |
Implements gem5::ruby::Consumer.
Definition at line 60 of file CrossbarSwitch.hh.
| void gem5::ruby::garnet::CrossbarSwitch::resetStats | ( | ) |
Definition at line 107 of file CrossbarSwitch.cc.
References m_crossbar_activity.
Referenced by gem5::ruby::garnet::Router::resetStats().
|
inline |
Definition at line 63 of file CrossbarSwitch.hh.
References switchBuffers.
Referenced by gem5::ruby::garnet::Router::grant_switch().
|
virtual |
Implements gem5::ruby::Consumer.
Definition at line 66 of file CrossbarSwitch.cc.
References gem5::ruby::garnet::flit::advance_stage(), gem5::Clocked::clockEdge(), gem5::Clocked::curCycle(), gem5::curTick(), DPRINTF, gem5::ruby::garnet::Router::get_id(), gem5::ruby::garnet::flit::get_outport(), gem5::ruby::garnet::Router::getOutputUnit(), gem5::ruby::garnet::OutputUnit::insert_flit(), gem5::ruby::garnet::flit::is_stage(), gem5::ruby::garnet::LT_, m_crossbar_activity, m_router, gem5::ruby::garnet::flit::set_time(), gem5::ruby::garnet::ST_, and switchBuffers.
Referenced by gem5::ruby::garnet::Router::wakeup().
|
private |
Definition at line 76 of file CrossbarSwitch.hh.
Referenced by get_crossbar_activity(), resetStats(), and wakeup().
|
private |
Definition at line 75 of file CrossbarSwitch.hh.
|
private |
Definition at line 74 of file CrossbarSwitch.hh.
|
private |
Definition at line 77 of file CrossbarSwitch.hh.
Referenced by functionalWrite(), init(), update_sw_winner(), and wakeup().