GenericRC Class Reference

#include <genericRC.h>

List of all members.

Classes

class  Address

Public Member Functions

 GenericRC ()
 ~GenericRC ()
void push (Flit *f, uint vc)
uint get_output_port (uint channel)
uint speculate_port (Flit *f, uint ch)
uint speculate_channel (Flit *f, uint ch)
uint get_virtual_channel (uint ch)
void resize (uint ch)
uint get_no_channels ()
uint no_adaptive_ports (uint ch)
uint no_adaptive_vcs (uint ch)
bool is_empty ()
string toString () const

Public Attributes

uint node_ip
uint address
vector< uintgrid_xloc
vector< uintgrid_yloc

Private Member Functions

uint route_x_y (uint addr)
void route_torus (HeadFlit *hf)
void route_ring (HeadFlit *hf)
void route_negative_first (HeadFlit *hf)
void route_west_first (HeadFlit *hf)
void route_north_last (HeadFlit *hf)
void route_north_last_non_minimal (HeadFlit *hf)
void route_odd_even (HeadFlit *hf)

Private Attributes

string name
uint vcs
vector< uintpossible_out_ports
vector< uintpossible_out_vcs
vector< Addressaddresses


Detailed Description

Definition at line 35 of file genericRC.h.


Constructor & Destructor Documentation

GenericRC::GenericRC (  ) 

Definition at line 31 of file genericRC.cc.

References address, name, and node_ip.

GenericRC::~GenericRC (  )  [inline]

Definition at line 39 of file genericRC.h.


Member Function Documentation

uint GenericRC::get_no_channels (  ) 

Definition at line 648 of file genericRC.cc.

References addresses.

uint GenericRC::get_output_port ( uint  channel  ) 

Definition at line 598 of file genericRC.cc.

References addresses, and possible_out_ports.

uint GenericRC::get_virtual_channel ( uint  ch  ) 

Definition at line 622 of file genericRC.cc.

References addresses, and possible_out_vcs.

bool GenericRC::is_empty (  ) 

Definition at line 654 of file genericRC.cc.

References addresses.

uint GenericRC::no_adaptive_ports ( uint  ch  ) 

Definition at line 616 of file genericRC.cc.

References addresses.

uint GenericRC::no_adaptive_vcs ( uint  ch  ) 

Definition at line 610 of file genericRC.cc.

References addresses.

void GenericRC::push ( Flit f,
uint  vc 
)

void GenericRC::resize ( uint  ch  ) 

Definition at line 635 of file genericRC.cc.

References addresses, and vcs.

void GenericRC::route_negative_first ( HeadFlit hf  )  [private]

Definition at line 86 of file genericRC.cc.

References _DBG, HeadFlit::dst_address, grid_xloc, grid_yloc, node_ip, and possible_out_ports.

Referenced by push().

Here is the caller graph for this function:

void GenericRC::route_north_last ( HeadFlit hf  )  [private]

Definition at line 215 of file genericRC.cc.

References _DBG, HeadFlit::dst_address, grid_xloc, grid_yloc, node_ip, and possible_out_ports.

Referenced by push().

Here is the caller graph for this function:

void GenericRC::route_north_last_non_minimal ( HeadFlit hf  )  [private]

Definition at line 295 of file genericRC.cc.

References _DBG, HeadFlit::dst_address, grid_size, grid_xloc, grid_yloc, HeadFlit::inport, no_nodes, node_ip, possible_out_ports, and route_x_y().

Referenced by push().

Here is the call graph for this function:

Here is the caller graph for this function:

void GenericRC::route_odd_even ( HeadFlit hf  )  [private]

Definition at line 379 of file genericRC.cc.

References _DBG, HeadFlit::dst_address, grid_xloc, grid_yloc, node_ip, possible_out_ports, and HeadFlit::src_address.

Referenced by push().

Here is the caller graph for this function:

void GenericRC::route_ring ( HeadFlit hf  )  [private]

Definition at line 79 of file genericRC.cc.

Referenced by push().

Here is the caller graph for this function:

void GenericRC::route_torus ( HeadFlit hf  )  [private]

Definition at line 73 of file genericRC.cc.

void GenericRC::route_west_first ( HeadFlit hf  )  [private]

Definition at line 148 of file genericRC.cc.

References _DBG, HeadFlit::dst_address, grid_xloc, grid_yloc, node_ip, and possible_out_ports.

Referenced by push().

Here is the caller graph for this function:

uint GenericRC::route_x_y ( uint  addr  )  [private]

Definition at line 39 of file genericRC.cc.

References _DBG, grid_xloc, grid_yloc, and node_ip.

Referenced by push(), and route_north_last_non_minimal().

Here is the caller graph for this function:

uint GenericRC::speculate_channel ( Flit f,
uint  ch 
)

uint GenericRC::speculate_port ( Flit f,
uint  ch 
)

string GenericRC::toString (  )  const

Definition at line 665 of file genericRC.cc.

References addresses.


Member Data Documentation

Definition at line 52 of file genericRC.h.

Referenced by GenericRC().

vector<Address> GenericRC::addresses [private]

string GenericRC::name [private]

Definition at line 59 of file genericRC.h.

Referenced by GenericRC().

vector< uint > GenericRC::possible_out_ports [private]

vector< uint > GenericRC::possible_out_vcs [private]

Definition at line 70 of file genericRC.h.

Referenced by get_virtual_channel(), and push().

uint GenericRC::vcs [private]

Definition at line 60 of file genericRC.h.

Referenced by push(), and resize().


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

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