ChampSim
champsim::operable Class Referenceabstract

#include <operable.h>

Inheritance diagram for champsim::operable:
[legend]

Public Member Functions

 operable (double scale)
 
long _operate ()
 
virtual void initialize ()
 
virtual long operate ()=0
 
virtual void begin_phase ()
 
virtual void end_phase (unsigned)
 
virtual void print_deadlock ()
 

Public Attributes

const double CLOCK_SCALE
 
double leap_operation = 0
 
uint64_t current_cycle = 0
 
bool warmup = true
 

Constructor & Destructor Documentation

◆ operable()

champsim::operable::operable ( double  scale)
inlineexplicit

Member Function Documentation

◆ _operate()

long champsim::operable::_operate ( )
inline

◆ begin_phase()

virtual void champsim::operable::begin_phase ( )
inlinevirtual

Reimplemented in PageTableWalker, O3_CPU, MEMORY_CONTROLLER, and CACHE.

◆ end_phase()

virtual void champsim::operable::end_phase ( unsigned  )
inlinevirtual

Reimplemented in O3_CPU, MEMORY_CONTROLLER, and CACHE.

◆ initialize()

virtual void champsim::operable::initialize ( )
inlinevirtual

Reimplemented in O3_CPU, MEMORY_CONTROLLER, and CACHE.

◆ operate()

virtual long champsim::operable::operate ( )
pure virtual

◆ print_deadlock()

virtual void champsim::operable::print_deadlock ( )
inlinevirtual

Reimplemented in PageTableWalker, O3_CPU, MEMORY_CONTROLLER, and CACHE.

Member Data Documentation

◆ CLOCK_SCALE

const double champsim::operable::CLOCK_SCALE

◆ current_cycle

uint64_t champsim::operable::current_cycle = 0

◆ leap_operation

double champsim::operable::leap_operation = 0

◆ warmup

bool champsim::operable::warmup = true

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