Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

Sink Struct Reference

Module to define sink application for an ipcore. More...

#include <Sink.h>

Inheritance diagram for Sink:

ipcore sc_module List of all members.

Public Member Functions

 SC_CTOR (Sink)
 Constructor.
void send ()
 send flits
void recv ()
 recieve flits
 SC_CTOR (ipcore)
 Constructor.
void entry ()
 process to keep track of simulation count in the module, sensitive to clock
void setID (UI tileID)
flitcreate_hdt_flit (int pkt_id, int flit_id, UI route_info)
 create a hdt flit with given packet id, flit id and destination
flitcreate_head_flit (int pkt_id, int flit_id, UI route_info)
 create a head flit with given packet id, flit id and destination
flitcreate_data_flit (int pkt_id, int flit_id)
 create a data flit with given packet id and flit id
flitcreate_tail_flit (int pkt_id, int flit_id)
 create a tail flit with given packet id and flit id
void set_cmd (flit *, int cmd_value)
 sets command field of flit equal to given value
void set_data (flit *, int data_int_value)
 sets integer data field of flit equal to given value
void set_data (flit *, string data_string_value)
 sets string data field of flit equal to given value
void set_payload (flit *, int cmd_value, int data_int_value)
 sets command field and integer data field of flit equal to given values
void set_payload (flit *, int cmd_value, string data_string_value)
 sets command field and string data field of flit equal to given values
void get_cmd (flit, int &cmd_value)
 return command field of flit in second parameter
void get_data (flit, int &data_int_value)
 return integer data field of flit in second parameter
void get_data (flit, string &data_string_value)
 return string data field of flit in second parameter
void get_payload (flit, int &cmd_value, int &data_int_value)
 return command field and integer data field of flit in second and third parameter respectively
void get_payload (flit, int &cmd_value, string &data_string_value)
 return command field and string data field of flit in second and third parameter respectively
int get_random_dest ()
 return a randomly chosen destination

Public Attributes

sc_in_clk clock
 input clock port
sc_in< flitflit_inport
 input data/flit port
sc_out< flitflit_outport
 ouput data/flit port
sc_in< creditLinecredit_in [NUM_VCS]
 input ports to recieve credit info (buffer status)
UI tileID
 unique tile id
ULL sim_count
 number of clock cycles
RNG * ran_var
 random variable

Detailed Description

Module to define sink application for an ipcore.

This application should be plugged in to any core which is not generating any traffic, but is capable of recieving any incoming flits.


Member Function Documentation

flit * ipcore::create_data_flit int  pkt_id,
int  flit_id
[inherited]
 

create a data flit with given packet id and flit id

Method to create a data flit Parameters:

  • packet id
  • flit id returns pointer to new flit

flit * ipcore::create_hdt_flit int  pkt_id,
int  flit_id,
UI  route_info
[inherited]
 

create a hdt flit with given packet id, flit id and destination

Method to create a hdt flit hdt flit represents a packet consisting of single flit. Parameters:

  • packet id
  • flit id
  • route info
    • destination tileID for XY and OE routing
    • route code fro source routing
returns pointer to new flit

flit * ipcore::create_head_flit int  pkt_id,
int  flit_id,
UI  route_info
[inherited]
 

create a head flit with given packet id, flit id and destination

Method to create a head flit Parameters:

  • packet id
  • flit id
  • route info
    • destination tileID for XY and OE routing
    • route code fro source routing
returns pointer to new flit

flit * ipcore::create_tail_flit int  pkt_id,
int  flit_id
[inherited]
 

create a tail flit with given packet id and flit id

Method to create a tail flit Parameters:

  • packet id
  • flit id returns pointer to new flit

void ipcore::entry  )  [inherited]
 

process to keep track of simulation count in the module, sensitive to clock

Process sensitive to clock Keeps track of clock cycles in the module

void ipcore::get_cmd flit  inflit,
int &  cmd_value
[inherited]
 

return command field of flit in second parameter

Method to return command field of a flit Parameters:

  • flit
  • integer variable in which command value is returned

void ipcore::get_data flit  inflit,
string &  data_string_value
[inherited]
 

return string data field of flit in second parameter

Method to return string data field of a flit Parameters:

  • flit
  • string variable in which string data value is returned

void ipcore::get_data flit  inflit,
int &  data_int_value
[inherited]
 

return integer data field of flit in second parameter

Method to return integer data field of a flit Parameters:

  • flit
  • integer variable in which integer data value is returned

void ipcore::get_payload flit  inflit,
int &  cmd_value,
string &  data_string_value
[inherited]
 

return command field and string data field of flit in second and third parameter respectively

Method to return both command field and string data field of a flit Parameters:

  • flit
  • integer variable in which command value is returned
  • string variable in which string data value is returned

void ipcore::get_payload flit  inflit,
int &  cmd_value,
int &  data_int_value
[inherited]
 

return command field and integer data field of flit in second and third parameter respectively

Method to return both command field and integer data field of a flit Parameters:

  • flit
  • integer variable in which command value is returned
  • integer variable in which integer data value is returned

int ipcore::get_random_dest  )  [inherited]
 

return a randomly chosen destination

Method to return a random destination

void Sink::recv  )  [virtual]
 

recieve flits

Thread sensitive to clock and inport event

  • inherited from ipcore
  • recieve incoming flits
  • assign arrival timestamps

Implements ipcore.

ipcore::SC_CTOR ipcore   )  [inherited]
 

Constructor.

Sink::SC_CTOR Sink   ) 
 

Constructor.

void Sink::send  )  [virtual]
 

send flits

Thread sensitive to clock

  • inherited from ipcore

Implements ipcore.

void ipcore::set_cmd flit inflit,
int  cmd_value
[inherited]
 

sets command field of flit equal to given value

Method to assign value to command field of a flit Parameters:

  • pointer to flit
  • integer representing command

void ipcore::set_data flit inflit,
string  data_string_value
[inherited]
 

sets string data field of flit equal to given value

Method to assign value to string data field of a flit Parameters:

  • pointer to flit
  • string data

void ipcore::set_data flit inflit,
int  data_int_value
[inherited]
 

sets integer data field of flit equal to given value

Method to assign value to integer data field of a flit Parameters:

  • pointer to flit
  • integer data

void ipcore::set_payload flit inflit,
int  cmd_value,
string  data_string_value
[inherited]
 

sets command field and string data field of flit equal to given values

Method to assign value to both command and string data field of a flit Parameters:

  • pointer to flit
  • integer representing command
  • string data

void ipcore::set_payload flit inflit,
int  cmd_value,
int  data_int_value
[inherited]
 

sets command field and integer data field of flit equal to given values

Method to assign value to both command and integer data field of a flit Parameters:

  • pointer to flit
  • integer representing command
  • integer data

void ipcore::setID UI  tileID  )  [inherited]
 

sets tileID


Member Data Documentation

sc_in_clk ipcore::clock [inherited]
 

input clock port

sc_in<creditLine> ipcore::credit_in[NUM_VCS] [inherited]
 

input ports to recieve credit info (buffer status)

sc_in<flit> ipcore::flit_inport [inherited]
 

input data/flit port

sc_out<flit> ipcore::flit_outport [inherited]
 

ouput data/flit port

RNG* ipcore::ran_var [inherited]
 

random variable

ULL ipcore::sim_count [inherited]
 

number of clock cycles

UI ipcore::tileID [inherited]
 

unique tile id


Generated on Mon May 7 19:03:19 2007 for NIRGAM by  doxygen 1.3.9.1