32 #ifndef __MEM_RUBY_NETWORK_GARNET2_0_OUTPUTUNIT_HH__ 33 #define __MEM_RUBY_NETWORK_GARNET2_0_OUTPUTUNIT_HH__ 56 void print(std::ostream& out)
const {};
107 #endif // __MEM_RUBY_NETWORK_GARNET2_0_OUTPUTUNIT_HH__
void set_out_link(NetworkLink *link)
Cycles is a wrapper class for representing cycle counts, i.e.
#define M5_CLASS_VAR_USED
void decrement_credit(int out_vc)
PortDirection get_direction()
CreditLink * m_credit_link
flitBuffer * getOutQueue()
bool has_credit(int out_vc)
std::vector< OutVcState > outVcState
std::string PortDirection
PortDirection m_direction
A Packet is used to encapsulate a transfer between two objects in the memory system (e...
void set_credit_link(CreditLink *credit_link)
bool has_free_vc(int vnet)
void print(std::ostream &out) const
int get_credit_count(int vc)
int M5_CLASS_VAR_USED m_id
void increment_credit(int out_vc)
OutputUnit(int id, PortDirection direction, Router *router)
bool is_vc_idle(int vc, Cycles curTime)
uint32_t functionalWrite(Packet *pkt)
void set_vc_state(VC_state_type state, int vc, Cycles curTime)
int select_free_vc(int vnet)
void insert_flit(flit *t_flit)