VcaMsgAware Class Reference

#include <vcaMsgAware.h>

List of all members.

Public Member Functions

 VcaMsgAware ()
 ~VcaMsgAware ()
void init (uint ports, uint vcs)
void set_no_msg_classes (uint no_msg_classes)
void request (uint output_port, uint msg_class_id, uint requestor_id, ullint req_arrival_time)
uint pick_winners (void)
uint get_no_requestors (void)
void clear_winner (uint winner, uint oc)

Public Attributes

vector< vector< map< uint,
uint > > > 
winners

Private Attributes

vector< vector< vector< uint > > > arbiter
vector< vector< vector< ullint > > > arbiter_arrival_time
vector< vector< deque< uint > > > available_vcs
uint vcs
uint ports
uint no_mclasses


Detailed Description

Definition at line 33 of file vcaMsgAware.h.


Constructor & Destructor Documentation

VcaMsgAware::VcaMsgAware (  ) 

Definition at line 28 of file vcaMsgAware.cc.

VcaMsgAware::~VcaMsgAware (  ) 

Definition at line 32 of file vcaMsgAware.cc.


Member Function Documentation

void VcaMsgAware::clear_winner ( uint  winner,
uint  oc 
)

Definition at line 155 of file vcaMsgAware.cc.

References available_vcs, no_mclasses, ports, and winners.

Referenced by RouterReqReply::do_switch_traversal().

Here is the caller graph for this function:

uint VcaMsgAware::get_no_requestors ( void   ) 

Definition at line 143 of file vcaMsgAware.cc.

References arbiter, no_mclasses, and ports.

Referenced by RouterReqReply::do_virtual_channel_allocation().

Here is the caller graph for this function:

void VcaMsgAware::init ( uint  ports,
uint  vcs 
)

Definition at line 44 of file vcaMsgAware.cc.

References arbiter, arbiter_arrival_time, available_vcs, no_mclasses, ports, vcs, and winners.

Referenced by RouterReqReply::init().

Here is the caller graph for this function:

uint VcaMsgAware::pick_winners ( void   ) 

-------------------------------------------------------------------------------------- Class: VcaMsgAware Method: pick_winners Description: Single vca unit per router. picks all possible winners in a given invocation. returns the number of winners that were picked in a given cycle --------------------------------------------------------------------------------------

Definition at line 106 of file vcaMsgAware.cc.

References arbiter, arbiter_arrival_time, available_vcs, no_mclasses, ports, and winners.

Referenced by RouterReqReply::do_virtual_channel_allocation().

Here is the caller graph for this function:

void VcaMsgAware::request ( uint  output_port,
uint  msg_class_id,
uint  requestor_id,
ullint  req_arrival_time 
)

Definition at line 75 of file vcaMsgAware.cc.

References arbiter, and arbiter_arrival_time.

Referenced by RouterReqReply::do_virtual_channel_allocation().

Here is the caller graph for this function:

void VcaMsgAware::set_no_msg_classes ( uint  no_msg_classes  ) 

Definition at line 37 of file vcaMsgAware.cc.

References no_mclasses.

Referenced by RouterReqReply::init().

Here is the caller graph for this function:


Member Data Documentation

vector< vector< vector<uint> > > VcaMsgAware::arbiter [private]

Definition at line 47 of file vcaMsgAware.h.

Referenced by get_no_requestors(), init(), pick_winners(), and request().

vector< vector< vector<ullint> > > VcaMsgAware::arbiter_arrival_time [private]

Definition at line 48 of file vcaMsgAware.h.

Referenced by init(), pick_winners(), and request().

vector< vector< deque<uint> > > VcaMsgAware::available_vcs [private]

Definition at line 49 of file vcaMsgAware.h.

Referenced by clear_winner(), init(), and pick_winners().

Definition at line 52 of file vcaMsgAware.h.

Referenced by clear_winner(), get_no_requestors(), init(), pick_winners(), and set_no_msg_classes().

Definition at line 51 of file vcaMsgAware.h.

Referenced by clear_winner(), get_no_requestors(), init(), and pick_winners().

Definition at line 50 of file vcaMsgAware.h.

Referenced by init().

vector< vector< map<uint, uint> > > VcaMsgAware::winners


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

Generated on Tue Oct 19 17:22:25 2010 for IRIS by  doxygen 1.5.8