gem5  v22.1.0.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
tlm_utils::tlm_quantumkeeper Class Reference

#include <tlm_quantumkeeper.h>

Public Member Functions

 tlm_quantumkeeper ()
 
virtual ~tlm_quantumkeeper ()
 
virtual void inc (const sc_core::sc_time &t)
 
virtual void set (const sc_core::sc_time &t)
 
virtual bool need_sync () const
 
virtual void sync ()
 
void set_and_sync (const sc_core::sc_time &t)
 
virtual void reset ()
 
virtual sc_core::sc_time get_current_time () const
 
virtual sc_core::sc_time get_local_time () const
 

Static Public Member Functions

static void set_global_quantum (const sc_core::sc_time &t)
 
static const sc_core::sc_timeget_global_quantum ()
 

Protected Member Functions

virtual sc_core::sc_time compute_local_quantum ()
 

Protected Attributes

sc_core::sc_time m_next_sync_point
 
sc_core::sc_time m_local_time
 

Detailed Description

Definition at line 33 of file tlm_quantumkeeper.h.

Constructor & Destructor Documentation

◆ tlm_quantumkeeper()

tlm_utils::tlm_quantumkeeper::tlm_quantumkeeper ( )
inline

Definition at line 56 of file tlm_quantumkeeper.h.

◆ ~tlm_quantumkeeper()

virtual tlm_utils::tlm_quantumkeeper::~tlm_quantumkeeper ( )
inlinevirtual

Definition at line 60 of file tlm_quantumkeeper.h.

Member Function Documentation

◆ compute_local_quantum()

virtual sc_core::sc_time tlm_utils::tlm_quantumkeeper::compute_local_quantum ( )
inlineprotectedvirtual

◆ get_current_time()

virtual sc_core::sc_time tlm_utils::tlm_quantumkeeper::get_current_time ( ) const
inlinevirtual

◆ get_global_quantum()

static const sc_core::sc_time& tlm_utils::tlm_quantumkeeper::get_global_quantum ( )
inlinestatic

◆ get_local_time()

virtual sc_core::sc_time tlm_utils::tlm_quantumkeeper::get_local_time ( ) const
inlinevirtual

◆ inc()

virtual void tlm_utils::tlm_quantumkeeper::inc ( const sc_core::sc_time t)
inlinevirtual

Definition at line 65 of file tlm_quantumkeeper.h.

References m_local_time, and gem5::VegaISA::t.

◆ need_sync()

virtual bool tlm_utils::tlm_quantumkeeper::need_sync ( ) const
inlinevirtual

◆ reset()

virtual void tlm_utils::tlm_quantumkeeper::reset ( )
inlinevirtual

◆ set()

virtual void tlm_utils::tlm_quantumkeeper::set ( const sc_core::sc_time t)
inlinevirtual

Definition at line 70 of file tlm_quantumkeeper.h.

References m_local_time, and gem5::VegaISA::t.

Referenced by CoreDecouplingLTInitiator::run(), and set_and_sync().

◆ set_and_sync()

void tlm_utils::tlm_quantumkeeper::set_and_sync ( const sc_core::sc_time t)
inline

Definition at line 94 of file tlm_quantumkeeper.h.

References need_sync(), set(), sync(), and gem5::VegaISA::t.

◆ set_global_quantum()

static void tlm_utils::tlm_quantumkeeper::set_global_quantum ( const sc_core::sc_time t)
inlinestatic

◆ sync()

virtual void tlm_utils::tlm_quantumkeeper::sync ( )
inlinevirtual

Definition at line 85 of file tlm_quantumkeeper.h.

References m_local_time, reset(), and sc_core::wait().

Referenced by CoreDecouplingLTInitiator::run(), and set_and_sync().

Member Data Documentation

◆ m_local_time

sc_core::sc_time tlm_utils::tlm_quantumkeeper::m_local_time
protected

Definition at line 147 of file tlm_quantumkeeper.h.

Referenced by get_current_time(), get_local_time(), inc(), need_sync(), reset(), set(), and sync().

◆ m_next_sync_point

sc_core::sc_time tlm_utils::tlm_quantumkeeper::m_next_sync_point
protected

Definition at line 146 of file tlm_quantumkeeper.h.

Referenced by need_sync(), and reset().


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

Generated on Wed Dec 21 2022 10:25:13 for gem5 by doxygen 1.9.1