#include <Bursty.h>
Inheritance diagram for BurstyTraffic:
Public Member Functions | |
SC_CTOR (BurstyTraffic) | |
Constructor. | |
void | init () |
generate traffic log as per traffic configuration | |
double | next_interval () |
return next packet interval | |
SC_CTOR (TrafficGenerator) | |
Constructor. | |
SC_CTOR (ipcore) | |
Constructor. | |
void | send () |
generate traffic according to traffic config file | |
void | recv () |
recieve flits | |
sc_time_unit | strToTime (string) |
convert time unit from string representation to systemC representation | |
void | entry () |
process to keep track of simulation count in the module, sensitive to clock | |
void | setID (UI tileID) |
flit * | create_hdt_flit (int pkt_id, int flit_id, UI route_info) |
create a hdt flit with given packet id, flit id and destination | |
flit * | create_head_flit (int pkt_id, int flit_id, UI route_info) |
create a head flit with given packet id, flit id and destination | |
flit * | create_data_flit (int pkt_id, int flit_id) |
create a data flit with given packet id and flit id | |
flit * | create_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 | |
int | pkt_size |
size of packet (in bytes) | |
int | load |
percentage load | |
int | avg_burstlen |
average burst length | |
int | avg_offtime |
average offtime (interval between two bursts) | |
int | pkt_interval |
inter-packet interval | |
int | rem |
number of packets remaining in a burst | |
ExponentialRandomVariable | var_burstlen |
exponentially distributed random variable for burst length | |
ExponentialRandomVariable | var_offtime |
exponentially distributed random variable for offtime | |
string | dst_type |
string to determine wether destination is fixed or random | |
int | num_flits |
Number of flits per packet. | |
int | flit_interval |
Inter-flit interval (in clock cycles). | |
int | route_info |
destination address or routing code (for source routing) | |
int | next_pkt_time |
inter packet interval (in clock cycles) | |
int | cycles_per_flit |
number of cycles required for processing one flit | |
sc_in_clk | clock |
input clock port | |
sc_in< flit > | flit_inport |
input data/flit port | |
sc_out< flit > | flit_outport |
ouput data/flit port | |
sc_in< creditLine > | credit_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 |
derived from TrafficGenerator
|
create a data flit with given packet id and flit id Method to create a data flit Parameters:
|
|
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:
|
|
create a head flit with given packet id, flit id and destination Method to create a head flit Parameters:
|
|
create a tail flit with given packet id and flit id Method to create a tail flit Parameters:
|
|
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 |
|
return command field of flit in second parameter Method to return command field of a flit Parameters:
|
|
return string data field of flit in second parameter Method to return string data field of a flit Parameters:
|
|
return integer data field of flit in second parameter Method to return integer data field of a flit Parameters:
|
|
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:
|
|
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:
|
|
return a randomly chosen destination Method to return a random destination |
|
generate traffic log as per traffic configuration Process to generate Bursty traffic
|
|
return next packet interval Method to return inter-packet interval Implements TrafficGenerator. |
|
recieve flits Thread sensitive to clock and inport event
Implements ipcore. |
|
Constructor.
|
|
Constructor.
|
|
Constructor.
|
|
generate traffic according to traffic config file Thread sensitive to clock
Implements ipcore. |
|
sets command field of flit equal to given value Method to assign value to command field of a flit Parameters:
|
|
sets string data field of flit equal to given value Method to assign value to string data field of a flit Parameters:
|
|
sets integer data field of flit equal to given value Method to assign value to integer data field of a flit Parameters:
|
|
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:
|
|
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:
|
|
sets tileID |
|
convert time unit from string representation to systemC representation Method to convert time unit from string representation to systemC representation |
|
average burst length
|
|
average offtime (interval between two bursts)
|
|
input clock port
|
|
input ports to recieve credit info (buffer status)
|
|
number of cycles required for processing one flit
|
|
string to determine wether destination is fixed or random
|
|
input data/flit port
|
|
Inter-flit interval (in clock cycles).
|
|
ouput data/flit port
|
|
percentage load
|
|
inter packet interval (in clock cycles)
|
|
Number of flits per packet.
|
|
inter-packet interval
|
|
size of packet (in bytes)
|
|
random variable
|
|
number of packets remaining in a burst
|
|
destination address or routing code (for source routing)
|
|
number of clock cycles
|
|
unique tile id
|
|
exponentially distributed random variable for burst length
|
|
exponentially distributed random variable for offtime
|