gem5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
flit Class Reference

#include <flit.hh>

Inheritance diagram for flit:
Credit

Public Member Functions

 flit ()
 
 flit (int id, int vc, int vnet, RouteInfo route, int size, MsgPtr msg_ptr, Cycles curTime)
 
int get_outport ()
 
int get_size ()
 
Cycles get_enqueue_time ()
 
Cycles get_dequeue_time ()
 
int get_id ()
 
Cycles get_time ()
 
int get_vnet ()
 
int get_vc ()
 
RouteInfo get_route ()
 
MsgPtrget_msg_ptr ()
 
flit_type get_type ()
 
std::pair< flit_stage, Cyclesget_stage ()
 
Cycles get_src_delay ()
 
void set_outport (int port)
 
void set_time (Cycles time)
 
void set_vc (int vc)
 
void set_route (RouteInfo route)
 
void set_src_delay (Cycles delay)
 
void set_dequeue_time (Cycles time)
 
void increment_hops ()
 
void print (std::ostream &out) const
 
bool is_stage (flit_stage stage, Cycles time)
 
void advance_stage (flit_stage t_stage, Cycles newTime)
 
bool functionalWrite (Packet *pkt)
 

Static Public Member Functions

static bool greater (flit *n1, flit *n2)
 

Protected Attributes

int m_id
 
int m_vnet
 
int m_vc
 
RouteInfo m_route
 
int m_size
 
Cycles m_enqueue_time
 
Cycles m_dequeue_time
 
Cycles m_time
 
flit_type m_type
 
MsgPtr m_msg_ptr
 
int m_outport
 
Cycles src_delay
 
std::pair< flit_stage, Cyclesm_stage
 

Detailed Description

Definition at line 44 of file flit.hh.

Constructor & Destructor Documentation

flit::flit ( )
inline

Definition at line 47 of file flit.hh.

flit::flit ( int  id,
int  vc,
int  vnet,
RouteInfo  route,
int  size,
MsgPtr  msg_ptr,
Cycles  curTime 
)

Member Function Documentation

void flit::advance_stage ( flit_stage  t_stage,
Cycles  newTime 
)
inline

Definition at line 83 of file flit.hh.

References m_stage.

Referenced by SwitchAllocator::arbitrate_outports(), CrossbarSwitch::wakeup(), and InputUnit::wakeup().

bool flit::functionalWrite ( Packet pkt)

Definition at line 82 of file flit.cc.

References Message::functionalWrite(), and m_msg_ptr.

Cycles flit::get_dequeue_time ( )
inline

Definition at line 54 of file flit.hh.

References m_dequeue_time.

Referenced by NetworkInterface::incrementStats().

Cycles flit::get_enqueue_time ( )
inline

Definition at line 53 of file flit.hh.

References m_enqueue_time.

Referenced by NetworkInterface::incrementStats().

int flit::get_id ( )
inline

Definition at line 55 of file flit.hh.

References m_id.

Referenced by greater().

MsgPtr& flit::get_msg_ptr ( )
inline

Definition at line 60 of file flit.hh.

References m_msg_ptr.

Referenced by NetworkInterface::checkStallQueue(), and NetworkInterface::wakeup().

int flit::get_outport ( )
inline

Definition at line 51 of file flit.hh.

References m_outport.

Referenced by CrossbarSwitch::wakeup().

RouteInfo flit::get_route ( )
inline

Definition at line 59 of file flit.hh.

References m_route.

Referenced by NetworkInterface::incrementStats(), and InputUnit::wakeup().

int flit::get_size ( )
inline

Definition at line 52 of file flit.hh.

References m_size.

Cycles flit::get_src_delay ( )
inline

Definition at line 63 of file flit.hh.

References src_delay.

Referenced by NetworkInterface::incrementStats().

std::pair<flit_stage, Cycles> flit::get_stage ( )
inline

Definition at line 62 of file flit.hh.

References m_stage.

Cycles flit::get_time ( )
inline

Definition at line 56 of file flit.hh.

References m_time.

Referenced by greater(), and flitBuffer::isReady().

flit_type flit::get_type ( )
inline
int flit::get_vc ( )
inline
int flit::get_vnet ( )
inline
static bool flit::greater ( flit n1,
flit n2 
)
inlinestatic

Definition at line 90 of file flit.hh.

References get_id(), and get_time().

Referenced by flitBuffer::getTopFlit(), and flitBuffer::insert().

void flit::increment_hops ( )
inline

Definition at line 72 of file flit.hh.

References RouteInfo::hops_traversed, and m_route.

Referenced by InputUnit::wakeup().

bool flit::is_stage ( flit_stage  stage,
Cycles  time 
)
inline

Definition at line 76 of file flit.hh.

References m_stage.

Referenced by VirtualChannel::need_stage(), and CrossbarSwitch::wakeup().

void flit::print ( std::ostream &  out) const
void flit::set_dequeue_time ( Cycles  time)
inline

Definition at line 70 of file flit.hh.

References m_dequeue_time.

Referenced by NetworkInterface::wakeup().

void flit::set_outport ( int  port)
inline

Definition at line 65 of file flit.hh.

References m_outport.

Referenced by SwitchAllocator::arbitrate_outports().

void flit::set_route ( RouteInfo  route)
inline

Definition at line 68 of file flit.hh.

References m_route.

void flit::set_src_delay ( Cycles  delay)
inline

Definition at line 69 of file flit.hh.

References src_delay.

Referenced by NetworkInterface::flitisizeMessage().

void flit::set_time ( Cycles  time)
inline

Definition at line 66 of file flit.hh.

References m_time.

Referenced by NetworkInterface::scheduleOutputLink(), CrossbarSwitch::wakeup(), and NetworkLink::wakeup().

void flit::set_vc ( int  vc)
inline

Definition at line 67 of file flit.hh.

References m_vc.

Referenced by SwitchAllocator::arbitrate_outports().

Member Data Documentation

Cycles flit::m_dequeue_time
protected

Definition at line 108 of file flit.hh.

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

Cycles flit::m_enqueue_time
protected

Definition at line 108 of file flit.hh.

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

int flit::m_id
protected

Definition at line 103 of file flit.hh.

Referenced by Credit::Credit(), flit(), get_id(), and print().

MsgPtr flit::m_msg_ptr
protected

Definition at line 110 of file flit.hh.

Referenced by flit(), functionalWrite(), and get_msg_ptr().

int flit::m_outport
protected

Definition at line 111 of file flit.hh.

Referenced by get_outport(), and set_outport().

RouteInfo flit::m_route
protected

Definition at line 106 of file flit.hh.

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

int flit::m_size
protected

Definition at line 107 of file flit.hh.

Referenced by flit(), and get_size().

std::pair<flit_stage, Cycles> flit::m_stage
protected

Definition at line 113 of file flit.hh.

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

Cycles flit::m_time
protected

Definition at line 108 of file flit.hh.

Referenced by Credit::Credit(), flit(), get_time(), and set_time().

flit_type flit::m_type
protected

Definition at line 109 of file flit.hh.

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

int flit::m_vc
protected

Definition at line 105 of file flit.hh.

Referenced by Credit::Credit(), flit(), get_vc(), print(), and set_vc().

int flit::m_vnet
protected

Definition at line 104 of file flit.hh.

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

Cycles flit::src_delay
protected

Definition at line 112 of file flit.hh.

Referenced by get_src_delay(), and set_src_delay().


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

Generated on Fri Jun 9 2017 13:04:10 for gem5 by doxygen 1.8.6