gem5 v24.0.0.0
|
#include <flit.hh>
Public Member Functions | |
flit () | |
flit (int packet_id, int id, int vc, int vnet, RouteInfo route, int size, MsgPtr msg_ptr, int MsgSize, uint32_t bWidth, Tick curTime) | |
virtual | ~flit () |
int | get_outport () |
int | get_size () |
Tick | get_enqueue_time () |
Tick | get_dequeue_time () |
int | getPacketID () |
int | get_id () |
Tick | get_time () |
int | get_vnet () |
int | get_vc () |
RouteInfo | get_route () |
MsgPtr & | get_msg_ptr () |
flit_type | get_type () |
std::pair< flit_stage, Tick > | get_stage () |
Tick | get_src_delay () |
void | set_outport (int port) |
void | set_time (Tick time) |
void | set_vc (int vc) |
void | set_route (RouteInfo route) |
void | set_src_delay (Tick delay) |
void | set_dequeue_time (Tick time) |
void | set_enqueue_time (Tick time) |
void | increment_hops () |
virtual void | print (std::ostream &out) const |
bool | is_stage (flit_stage stage, Tick time) |
void | advance_stage (flit_stage t_stage, Tick newTime) |
bool | functionalRead (Packet *pkt, WriteMask &mask) |
bool | functionalWrite (Packet *pkt) |
virtual flit * | serialize (int ser_id, int parts, uint32_t bWidth) |
virtual flit * | deserialize (int des_id, int num_flits, uint32_t bWidth) |
Static Public Member Functions | |
static bool | greater (flit *n1, flit *n2) |
Public Attributes | |
uint32_t | m_width |
int | msgSize |
Protected Attributes | |
int | m_packet_id |
int | m_id |
int | m_vnet |
int | m_vc |
RouteInfo | m_route |
int | m_size |
Tick | m_enqueue_time |
Tick | m_dequeue_time |
Tick | m_time |
flit_type | m_type |
MsgPtr | m_msg_ptr |
int | m_outport |
Tick | src_delay |
std::pair< flit_stage, Tick > | m_stage |
|
inline |
Definition at line 53 of file flit.hh.
Referenced by deserialize(), and serialize().
gem5::ruby::garnet::flit::flit | ( | int | packet_id, |
int | id, | ||
int | vc, | ||
int | vnet, | ||
RouteInfo | route, | ||
int | size, | ||
MsgPtr | msg_ptr, | ||
int | MsgSize, | ||
uint32_t | bWidth, | ||
Tick | curTime ) |
Definition at line 46 of file flit.cc.
References gem5::ruby::garnet::BODY_, gem5::ruby::garnet::HEAD_, gem5::ruby::garnet::HEAD_TAIL_, gem5::ruby::garnet::I_, gem5::ArmISA::id, m_dequeue_time, m_enqueue_time, m_id, m_msg_ptr, m_packet_id, m_route, m_size, m_stage, m_time, m_type, m_vc, m_vnet, m_width, msgSize, and gem5::ruby::garnet::TAIL_.
|
inline |
Definition at line 93 of file flit.hh.
References m_stage.
Referenced by gem5::ruby::garnet::SwitchAllocator::arbitrate_outports(), gem5::ruby::garnet::CrossbarSwitch::wakeup(), and gem5::ruby::garnet::InputUnit::wakeup().
|
virtual |
Reimplemented in gem5::ruby::garnet::Credit.
Definition at line 94 of file flit.cc.
References gem5::divCeil(), flit(), m_enqueue_time, m_id, m_msg_ptr, m_packet_id, m_route, m_time, m_vc, m_vnet, m_width, msgSize, set_enqueue_time(), set_src_delay(), and src_delay.
Referenced by gem5::ruby::garnet::NetworkBridge::flitisizeAndSend().
Definition at line 129 of file flit.cc.
References gem5::ruby::Message::functionalRead(), m_msg_ptr, and gem5::ArmISA::mask.
bool gem5::ruby::garnet::flit::functionalWrite | ( | Packet * | pkt | ) |
Definition at line 136 of file flit.cc.
References gem5::ruby::Message::functionalWrite(), and m_msg_ptr.
|
inline |
Definition at line 62 of file flit.hh.
References m_dequeue_time.
Referenced by gem5::ruby::garnet::NetworkInterface::incrementStats().
|
inline |
Definition at line 61 of file flit.hh.
References m_enqueue_time.
Referenced by gem5::ruby::garnet::NetworkInterface::incrementStats().
|
inline |
Definition at line 64 of file flit.hh.
References m_id.
Referenced by gem5::ruby::garnet::NetworkBridge::flitisizeAndSend(), and greater().
|
inline |
Definition at line 69 of file flit.hh.
References m_msg_ptr.
Referenced by gem5::ruby::garnet::NetworkInterface::checkStallQueue(), gem5::ruby::garnet::NetworkInterface::scheduleFlit(), and gem5::ruby::garnet::NetworkInterface::wakeup().
|
inline |
Definition at line 59 of file flit.hh.
References m_outport.
Referenced by gem5::ruby::garnet::CrossbarSwitch::wakeup().
|
inline |
Definition at line 68 of file flit.hh.
References m_route.
Referenced by gem5::ruby::garnet::NetworkInterface::incrementStats(), and gem5::ruby::garnet::InputUnit::wakeup().
|
inline |
|
inline |
Definition at line 72 of file flit.hh.
References src_delay.
Referenced by gem5::ruby::garnet::NetworkInterface::incrementStats().
|
inline |
|
inline |
Definition at line 65 of file flit.hh.
References m_time.
Referenced by greater(), and gem5::ruby::garnet::flitBuffer::isReady().
|
inline |
Definition at line 70 of file flit.hh.
References m_type.
Referenced by gem5::ruby::garnet::SwitchAllocator::arbitrate_outports(), gem5::ruby::garnet::NetworkBridge::flitisizeAndSend(), gem5::ruby::garnet::NetworkInterface::incrementStats(), gem5::ruby::garnet::NetworkInterface::scheduleOutputPort(), gem5::ruby::garnet::InputUnit::wakeup(), and gem5::ruby::garnet::NetworkInterface::wakeup().
|
inline |
Definition at line 67 of file flit.hh.
References m_vc.
Referenced by gem5::ruby::garnet::NetworkInterface::checkStallQueue(), gem5::ruby::garnet::NetworkBridge::flitisizeAndSend(), gem5::ruby::garnet::InputUnit::wakeup(), gem5::ruby::garnet::NetworkInterface::wakeup(), gem5::ruby::garnet::NetworkLink::wakeup(), and gem5::ruby::garnet::OutputUnit::wakeup().
|
inline |
Definition at line 66 of file flit.hh.
References m_vnet.
Referenced by gem5::ruby::garnet::NetworkInterface::checkStallQueue(), gem5::ruby::garnet::NetworkInterface::incrementStats(), gem5::ruby::garnet::NetworkInterface::scheduleFlit(), gem5::ruby::garnet::NetworkInterface::wakeup(), and gem5::ruby::garnet::NetworkLink::wakeup().
|
inline |
Definition at line 63 of file flit.hh.
References m_packet_id.
Definition at line 100 of file flit.hh.
References get_id(), and get_time().
|
inline |
Definition at line 82 of file flit.hh.
References gem5::ruby::garnet::RouteInfo::hops_traversed, and m_route.
Referenced by gem5::ruby::garnet::InputUnit::wakeup().
|
inline |
Definition at line 86 of file flit.hh.
References m_stage.
Referenced by gem5::ruby::garnet::VirtualChannel::need_stage(), and gem5::ruby::garnet::CrossbarSwitch::wakeup().
|
virtual |
Reimplemented in gem5::ruby::garnet::Credit.
Definition at line 110 of file flit.cc.
References gem5::ruby::garnet::RouteInfo::dest_ni, gem5::ruby::garnet::RouteInfo::dest_router, m_id, m_packet_id, m_route, m_size, m_time, m_type, m_vc, m_vnet, m_width, gem5::ruby::garnet::RouteInfo::src_ni, and gem5::ruby::garnet::RouteInfo::src_router.
Referenced by gem5::ruby::garnet::operator<<().
|
virtual |
Reimplemented in gem5::ruby::garnet::Credit.
Definition at line 77 of file flit.cc.
References gem5::divCeil(), flit(), m_enqueue_time, m_id, m_msg_ptr, m_packet_id, m_route, m_time, m_vc, m_vnet, m_width, msgSize, set_enqueue_time(), set_src_delay(), and src_delay.
Referenced by gem5::ruby::garnet::NetworkBridge::flitisizeAndSend().
|
inline |
Definition at line 79 of file flit.hh.
References m_dequeue_time.
Referenced by gem5::ruby::garnet::NetworkInterface::wakeup().
|
inline |
Definition at line 80 of file flit.hh.
References m_enqueue_time.
Referenced by deserialize(), and serialize().
|
inline |
Definition at line 74 of file flit.hh.
References m_outport.
Referenced by gem5::ruby::garnet::SwitchAllocator::arbitrate_outports().
|
inline |
|
inline |
Definition at line 78 of file flit.hh.
References src_delay.
Referenced by deserialize(), gem5::ruby::garnet::NetworkInterface::flitisizeMessage(), and serialize().
|
inline |
Definition at line 75 of file flit.hh.
References m_time.
Referenced by gem5::ruby::garnet::NetworkBridge::scheduleFlit(), gem5::ruby::garnet::NetworkInterface::scheduleOutputPort(), gem5::ruby::garnet::CrossbarSwitch::wakeup(), and gem5::ruby::garnet::NetworkLink::wakeup().
|
inline |
Definition at line 76 of file flit.hh.
References m_vc.
Referenced by gem5::ruby::garnet::SwitchAllocator::arbitrate_outports().
|
protected |
Definition at line 125 of file flit.hh.
Referenced by flit(), get_dequeue_time(), and set_dequeue_time().
|
protected |
Definition at line 125 of file flit.hh.
Referenced by deserialize(), flit(), get_enqueue_time(), serialize(), and set_enqueue_time().
|
protected |
Definition at line 120 of file flit.hh.
Referenced by deserialize(), flit(), get_id(), print(), and serialize().
|
protected |
Definition at line 128 of file flit.hh.
Referenced by deserialize(), flit(), functionalRead(), functionalWrite(), get_msg_ptr(), and serialize().
|
protected |
Definition at line 129 of file flit.hh.
Referenced by get_outport(), and set_outport().
|
protected |
Definition at line 119 of file flit.hh.
Referenced by deserialize(), flit(), getPacketID(), print(), and serialize().
|
protected |
Definition at line 123 of file flit.hh.
Referenced by deserialize(), flit(), get_route(), increment_hops(), print(), serialize(), and set_route().
|
protected |
Definition at line 124 of file flit.hh.
Referenced by flit(), get_size(), and print().
|
protected |
Definition at line 131 of file flit.hh.
Referenced by advance_stage(), flit(), get_stage(), and is_stage().
|
protected |
Definition at line 126 of file flit.hh.
Referenced by gem5::ruby::garnet::Credit::deserialize(), deserialize(), flit(), get_time(), gem5::ruby::garnet::Credit::print(), print(), gem5::ruby::garnet::Credit::serialize(), serialize(), and set_time().
|
protected |
Definition at line 127 of file flit.hh.
Referenced by gem5::ruby::garnet::Credit::Credit(), flit(), get_type(), gem5::ruby::garnet::Credit::print(), and print().
|
protected |
Definition at line 122 of file flit.hh.
Referenced by gem5::ruby::garnet::Credit::deserialize(), deserialize(), flit(), get_vc(), gem5::ruby::garnet::Credit::print(), print(), gem5::ruby::garnet::Credit::serialize(), serialize(), and set_vc().
|
protected |
Definition at line 121 of file flit.hh.
Referenced by deserialize(), flit(), get_vnet(), print(), and serialize().
uint32_t gem5::ruby::garnet::flit::m_width |
Definition at line 116 of file flit.hh.
Referenced by deserialize(), flit(), print(), serialize(), gem5::ruby::garnet::InputUnit::wakeup(), gem5::ruby::garnet::NetworkInterface::wakeup(), and gem5::ruby::garnet::NetworkLink::wakeup().
int gem5::ruby::garnet::flit::msgSize |
Definition at line 117 of file flit.hh.
Referenced by deserialize(), flit(), gem5::ruby::garnet::NetworkBridge::flitisizeAndSend(), and serialize().
|
protected |
Definition at line 130 of file flit.hh.
Referenced by deserialize(), get_src_delay(), serialize(), and set_src_delay().