gem5 v24.0.0.0
Loading...
Searching...
No Matches
gem5::ruby::garnet::flit Class Reference

#include <flit.hh>

Inheritance diagram for gem5::ruby::garnet::flit:
gem5::ruby::garnet::Credit

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 ()
 
MsgPtrget_msg_ptr ()
 
flit_type get_type ()
 
std::pair< flit_stage, Tickget_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 flitserialize (int ser_id, int parts, uint32_t bWidth)
 
virtual flitdeserialize (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, Tickm_stage
 

Detailed Description

Definition at line 50 of file flit.hh.

Constructor & Destructor Documentation

◆ flit() [1/2]

gem5::ruby::garnet::flit::flit ( )
inline

Definition at line 53 of file flit.hh.

Referenced by deserialize(), and serialize().

◆ flit() [2/2]

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 )

◆ ~flit()

virtual gem5::ruby::garnet::flit::~flit ( )
inlinevirtual

Definition at line 57 of file flit.hh.

Member Function Documentation

◆ advance_stage()

void gem5::ruby::garnet::flit::advance_stage ( flit_stage t_stage,
Tick newTime )
inline

◆ deserialize()

flit * gem5::ruby::garnet::flit::deserialize ( int des_id,
int num_flits,
uint32_t bWidth )
virtual

◆ functionalRead()

bool gem5::ruby::garnet::flit::functionalRead ( Packet * pkt,
WriteMask & mask )

Definition at line 129 of file flit.cc.

References gem5::ruby::Message::functionalRead(), m_msg_ptr, and gem5::ArmISA::mask.

◆ functionalWrite()

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.

◆ get_dequeue_time()

Tick gem5::ruby::garnet::flit::get_dequeue_time ( )
inline

Definition at line 62 of file flit.hh.

References m_dequeue_time.

Referenced by gem5::ruby::garnet::NetworkInterface::incrementStats().

◆ get_enqueue_time()

Tick gem5::ruby::garnet::flit::get_enqueue_time ( )
inline

Definition at line 61 of file flit.hh.

References m_enqueue_time.

Referenced by gem5::ruby::garnet::NetworkInterface::incrementStats().

◆ get_id()

int gem5::ruby::garnet::flit::get_id ( )
inline

Definition at line 64 of file flit.hh.

References m_id.

Referenced by gem5::ruby::garnet::NetworkBridge::flitisizeAndSend(), and greater().

◆ get_msg_ptr()

MsgPtr & gem5::ruby::garnet::flit::get_msg_ptr ( )
inline

◆ get_outport()

int gem5::ruby::garnet::flit::get_outport ( )
inline

Definition at line 59 of file flit.hh.

References m_outport.

Referenced by gem5::ruby::garnet::CrossbarSwitch::wakeup().

◆ get_route()

RouteInfo gem5::ruby::garnet::flit::get_route ( )
inline

◆ get_size()

int gem5::ruby::garnet::flit::get_size ( )
inline

Definition at line 60 of file flit.hh.

References m_size.

◆ get_src_delay()

Tick gem5::ruby::garnet::flit::get_src_delay ( )
inline

Definition at line 72 of file flit.hh.

References src_delay.

Referenced by gem5::ruby::garnet::NetworkInterface::incrementStats().

◆ get_stage()

std::pair< flit_stage, Tick > gem5::ruby::garnet::flit::get_stage ( )
inline

Definition at line 71 of file flit.hh.

References m_stage.

◆ get_time()

Tick gem5::ruby::garnet::flit::get_time ( )
inline

Definition at line 65 of file flit.hh.

References m_time.

Referenced by greater(), and gem5::ruby::garnet::flitBuffer::isReady().

◆ get_type()

◆ get_vc()

◆ get_vnet()

◆ getPacketID()

int gem5::ruby::garnet::flit::getPacketID ( )
inline

Definition at line 63 of file flit.hh.

References m_packet_id.

◆ greater()

static bool gem5::ruby::garnet::flit::greater ( flit * n1,
flit * n2 )
inlinestatic

Definition at line 100 of file flit.hh.

References get_id(), and get_time().

◆ increment_hops()

void gem5::ruby::garnet::flit::increment_hops ( )
inline

◆ is_stage()

bool gem5::ruby::garnet::flit::is_stage ( flit_stage stage,
Tick time )
inline

◆ print()

◆ serialize()

flit * gem5::ruby::garnet::flit::serialize ( int ser_id,
int parts,
uint32_t bWidth )
virtual

◆ set_dequeue_time()

void gem5::ruby::garnet::flit::set_dequeue_time ( Tick time)
inline

Definition at line 79 of file flit.hh.

References m_dequeue_time.

Referenced by gem5::ruby::garnet::NetworkInterface::wakeup().

◆ set_enqueue_time()

void gem5::ruby::garnet::flit::set_enqueue_time ( Tick time)
inline

Definition at line 80 of file flit.hh.

References m_enqueue_time.

Referenced by deserialize(), and serialize().

◆ set_outport()

void gem5::ruby::garnet::flit::set_outport ( int port)
inline

Definition at line 74 of file flit.hh.

References m_outport.

Referenced by gem5::ruby::garnet::SwitchAllocator::arbitrate_outports().

◆ set_route()

void gem5::ruby::garnet::flit::set_route ( RouteInfo route)
inline

Definition at line 77 of file flit.hh.

References m_route.

◆ set_src_delay()

void gem5::ruby::garnet::flit::set_src_delay ( Tick delay)
inline

Definition at line 78 of file flit.hh.

References src_delay.

Referenced by deserialize(), gem5::ruby::garnet::NetworkInterface::flitisizeMessage(), and serialize().

◆ set_time()

◆ set_vc()

void gem5::ruby::garnet::flit::set_vc ( int vc)
inline

Definition at line 76 of file flit.hh.

References m_vc.

Referenced by gem5::ruby::garnet::SwitchAllocator::arbitrate_outports().

Member Data Documentation

◆ m_dequeue_time

Tick gem5::ruby::garnet::flit::m_dequeue_time
protected

Definition at line 125 of file flit.hh.

Referenced by flit(), get_dequeue_time(), and set_dequeue_time().

◆ m_enqueue_time

Tick gem5::ruby::garnet::flit::m_enqueue_time
protected

Definition at line 125 of file flit.hh.

Referenced by deserialize(), flit(), get_enqueue_time(), serialize(), and set_enqueue_time().

◆ m_id

int gem5::ruby::garnet::flit::m_id
protected

Definition at line 120 of file flit.hh.

Referenced by deserialize(), flit(), get_id(), print(), and serialize().

◆ m_msg_ptr

MsgPtr gem5::ruby::garnet::flit::m_msg_ptr
protected

Definition at line 128 of file flit.hh.

Referenced by deserialize(), flit(), functionalRead(), functionalWrite(), get_msg_ptr(), and serialize().

◆ m_outport

int gem5::ruby::garnet::flit::m_outport
protected

Definition at line 129 of file flit.hh.

Referenced by get_outport(), and set_outport().

◆ m_packet_id

int gem5::ruby::garnet::flit::m_packet_id
protected

Definition at line 119 of file flit.hh.

Referenced by deserialize(), flit(), getPacketID(), print(), and serialize().

◆ m_route

RouteInfo gem5::ruby::garnet::flit::m_route
protected

Definition at line 123 of file flit.hh.

Referenced by deserialize(), flit(), get_route(), increment_hops(), print(), serialize(), and set_route().

◆ m_size

int gem5::ruby::garnet::flit::m_size
protected

Definition at line 124 of file flit.hh.

Referenced by flit(), get_size(), and print().

◆ m_stage

std::pair<flit_stage, Tick> gem5::ruby::garnet::flit::m_stage
protected

Definition at line 131 of file flit.hh.

Referenced by advance_stage(), flit(), get_stage(), and is_stage().

◆ m_time

◆ m_type

flit_type gem5::ruby::garnet::flit::m_type
protected

◆ m_vc

◆ m_vnet

int gem5::ruby::garnet::flit::m_vnet
protected

Definition at line 121 of file flit.hh.

Referenced by deserialize(), flit(), get_vnet(), print(), and serialize().

◆ m_width

◆ msgSize

int gem5::ruby::garnet::flit::msgSize

◆ src_delay

Tick gem5::ruby::garnet::flit::src_delay
protected

Definition at line 130 of file flit.hh.

Referenced by deserialize(), get_src_delay(), serialize(), and set_src_delay().


The documentation for this class was generated from the following files:

Generated on Tue Jun 18 2024 16:24:22 for gem5 by doxygen 1.11.0