PToPSwitchArbiter Class Reference

#include <ptop_swa.h>

List of all members.

Public Member Functions

 PToPSwitchArbiter ()
 ~PToPSwitchArbiter ()
void resize (uint p)
bool is_requested (uint outp, uint inp)
void request (uint p, uint inp)
SA_unit pick_winner (uint p)
SA_unit do_round_robin_arbitration (uint p)
SA_unit do_priority_round_robin_arbitration (uint p)
SA_unit do_fcfs_arbitration (uint p)
void clear_winner (uint p, uint ip)
void clear_requested (uint p, uint ip)
void request (uint oport, uint inport, message_class m)
bool is_empty ()
string toString () const

Public Attributes

uint address
string name
uint node_ip

Private Attributes

uint PORTS
uint CHANNELS
vector< bool > locked
vector< bool > done
vector< vector< bool > > requested
vector< vector< bool > > priority_reqs
vector< bool > port_locked
vector< vector< SA_unit > > requesting_inputs
vector< SA_unitlast_winner
vector< uintlast_port_winner


Detailed Description

Definition at line 31 of file ptop_swa.h.


Constructor & Destructor Documentation

PToPSwitchArbiter::PToPSwitchArbiter (  ) 

Definition at line 24 of file ptop_swa.cc.

References name.

PToPSwitchArbiter::~PToPSwitchArbiter (  ) 

Definition at line 29 of file ptop_swa.cc.


Member Function Documentation

void PToPSwitchArbiter::clear_requested ( uint  p,
uint  ip 
)

Definition at line 300 of file ptop_swa.cc.

References priority_reqs, and requested.

Referenced by GenericRouterPhy::do_switch_allocation().

Here is the caller graph for this function:

void PToPSwitchArbiter::clear_winner ( uint  p,
uint  ip 
)

Definition at line 289 of file ptop_swa.cc.

References done, locked, priority_reqs, and requested.

Referenced by GenericRouterPhy::do_switch_traversal().

Here is the caller graph for this function:

SA_unit PToPSwitchArbiter::do_fcfs_arbitration ( uint  p  ) 

Definition at line 245 of file ptop_swa.cc.

References _DBG_NOARG, done, last_winner, locked, Simulator::Now(), PORTS, requested, and requesting_inputs.

Referenced by pick_winner().

Here is the call graph for this function:

Here is the caller graph for this function:

SA_unit PToPSwitchArbiter::do_priority_round_robin_arbitration ( uint  p  ) 

Definition at line 177 of file ptop_swa.cc.

References _DBG_NOARG, done, last_port_winner, last_winner, locked, PORTS, priority_reqs, requested, and requesting_inputs.

Referenced by pick_winner().

Here is the caller graph for this function:

SA_unit PToPSwitchArbiter::do_round_robin_arbitration ( uint  p  ) 

Definition at line 121 of file ptop_swa.cc.

References _DBG_NOARG, done, last_port_winner, last_winner, locked, PORTS, requested, and requesting_inputs.

Referenced by pick_winner().

Here is the caller graph for this function:

bool PToPSwitchArbiter::is_empty ( void   ) 

Definition at line 308 of file ptop_swa.cc.

References PORTS, and requested.

Referenced by GenericRouterPhy::do_switch_allocation().

Here is the caller graph for this function:

bool PToPSwitchArbiter::is_requested ( uint  outp,
uint  inp 
)

Definition at line 70 of file ptop_swa.cc.

References requested.

Referenced by GenericRouterPhy::handle_tick_event().

Here is the caller graph for this function:

SA_unit PToPSwitchArbiter::pick_winner ( uint  p  ) 

Definition at line 100 of file ptop_swa.cc.

References do_fcfs_arbitration(), do_priority_round_robin_arbitration(), do_round_robin_arbitration(), FCFS, ROUND_ROBIN, ROUND_ROBIN_PRIORITY, and sw_arbitration.

Referenced by GenericRouterPhy::do_switch_allocation().

Here is the call graph for this function:

Here is the caller graph for this function:

void PToPSwitchArbiter::request ( uint  oport,
uint  inport,
message_class  m 
)

Definition at line 86 of file ptop_swa.cc.

References done, Simulator::Now(), priority_msg_type, priority_reqs, requested, and requesting_inputs.

Here is the call graph for this function:

void PToPSwitchArbiter::request ( uint  p,
uint  inp 
)

Definition at line 76 of file ptop_swa.cc.

References done, Simulator::Now(), requested, and requesting_inputs.

Referenced by GenericRouterPhy::handle_tick_event().

Here is the call graph for this function:

Here is the caller graph for this function:

void PToPSwitchArbiter::resize ( uint  p  ) 

Definition at line 34 of file ptop_swa.cc.

References done, last_port_winner, last_winner, locked, port_locked, PORTS, priority_reqs, requested, and requesting_inputs.

Referenced by GenericRouterPhy::init().

Here is the caller graph for this function:

string PToPSwitchArbiter::toString (  )  const

Definition at line 321 of file ptop_swa.cc.

References requested.

Referenced by GenericRouterPhy::toString().

Here is the caller graph for this function:


Member Data Documentation

Definition at line 48 of file ptop_swa.h.

Referenced by GenericRouterPhy::init().

Definition at line 56 of file ptop_swa.h.

vector< bool> PToPSwitchArbiter::done [private]

vector< bool> PToPSwitchArbiter::locked [private]

Definition at line 49 of file ptop_swa.h.

Referenced by PToPSwitchArbiter().

Definition at line 50 of file ptop_swa.h.

Referenced by GenericRouterPhy::init().

vector< bool> PToPSwitchArbiter::port_locked [private]

Definition at line 61 of file ptop_swa.h.

Referenced by resize().

vector< vector <bool> > PToPSwitchArbiter::priority_reqs [private]

vector< vector <bool> > PToPSwitchArbiter::requested [private]

vector< vector<SA_unit> > PToPSwitchArbiter::requesting_inputs [private]


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

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