gem5  v20.1.0.0
Public Member Functions | Protected Attributes | List of all members
StochasticGen Class Reference

#include <base_gen.hh>

Inheritance diagram for StochasticGen:
BaseGen LinearGen RandomGen DramGen NvmGen DramRotGen

Public Member Functions

 StochasticGen (SimObject &obj, RequestorID requestor_id, Tick _duration, Addr start_addr, Addr end_addr, Addr _blocksize, Addr cacheline_size, Tick min_period, Tick max_period, uint8_t read_percent, Addr data_limit)
 
- Public Member Functions inherited from BaseGen
 BaseGen (SimObject &obj, RequestorID requestor_id, Tick _duration)
 Create a base generator. More...
 
virtual ~BaseGen ()
 
std::string name () const
 Get the name, useful for DPRINTFs. More...
 
virtual void enter ()=0
 Enter this generator state. More...
 
virtual PacketPtr getNextPacket ()=0
 Get the next generated packet. More...
 
virtual void exit ()
 Exit this generator state. More...
 
virtual Tick nextPacketTick (bool elastic, Tick delay) const =0
 Determine the tick when the next packet is available. More...
 

Protected Attributes

const Addr startAddr
 Start of address range. More...
 
const Addr endAddr
 End of address range. More...
 
const Addr blocksize
 Blocksize and address increment. More...
 
const Addr cacheLineSize
 Cache line size in the simulated system. More...
 
const Tick minPeriod
 Request generation period. More...
 
const Tick maxPeriod
 
const uint8_t readPercent
 Percent of generated transactions that should be reads. More...
 
const Addr dataLimit
 Maximum amount of data to manipulate. More...
 
- Protected Attributes inherited from BaseGen
const std::string _name
 Name to use for status and debug printing. More...
 
const RequestorID requestorId
 The RequestorID used for generating requests. More...
 

Additional Inherited Members

- Public Attributes inherited from BaseGen
const Tick duration
 Time to spend in this state. More...
 
- Protected Member Functions inherited from BaseGen
PacketPtr getPacket (Addr addr, unsigned size, const MemCmd &cmd, Request::FlagsType flags=0)
 Generate a new request and associated packet. More...
 

Detailed Description

Definition at line 132 of file base_gen.hh.

Constructor & Destructor Documentation

◆ StochasticGen()

StochasticGen::StochasticGen ( SimObject obj,
RequestorID  requestor_id,
Tick  _duration,
Addr  start_addr,
Addr  end_addr,
Addr  _blocksize,
Addr  cacheline_size,
Tick  min_period,
Tick  max_period,
uint8_t  read_percent,
Addr  data_limit 
)

Definition at line 79 of file base_gen.cc.

References blocksize, cacheLineSize, fatal, and BaseGen::name().

Member Data Documentation

◆ blocksize

const Addr StochasticGen::blocksize
protected

◆ cacheLineSize

const Addr StochasticGen::cacheLineSize
protected

Cache line size in the simulated system.

Definition at line 153 of file base_gen.hh.

Referenced by StochasticGen().

◆ dataLimit

const Addr StochasticGen::dataLimit
protected

Maximum amount of data to manipulate.

Definition at line 165 of file base_gen.hh.

Referenced by RandomGen::nextPacketTick(), and LinearGen::nextPacketTick().

◆ endAddr

const Addr StochasticGen::endAddr
protected

End of address range.

Definition at line 147 of file base_gen.hh.

Referenced by DramGen::genStartAddr(), NvmGen::genStartAddr(), RandomGen::getNextPacket(), and LinearGen::getNextPacket().

◆ maxPeriod

const Tick StochasticGen::maxPeriod
protected

Definition at line 157 of file base_gen.hh.

Referenced by RandomGen::nextPacketTick(), and LinearGen::nextPacketTick().

◆ minPeriod

const Tick StochasticGen::minPeriod
protected

Request generation period.

Definition at line 156 of file base_gen.hh.

Referenced by RandomGen::nextPacketTick(), and LinearGen::nextPacketTick().

◆ readPercent

const uint8_t StochasticGen::readPercent
protected

Percent of generated transactions that should be reads.

Definition at line 162 of file base_gen.hh.

Referenced by DramRotGen::DramRotGen(), RandomGen::getNextPacket(), LinearGen::getNextPacket(), DramGen::getNextPacket(), NvmGen::getNextPacket(), and DramRotGen::getNextPacket().

◆ startAddr

const Addr StochasticGen::startAddr
protected

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

Generated on Wed Sep 30 2020 14:02:32 for gem5 by doxygen 1.8.17