Provides the interface to the SystemC kernel. More...
#include <simulation.h>
Public Member Functions | |
| Simulation (ConfObjectRef o, InternalInterface *internal) | |
| virtual | ~Simulation () |
| void | run () override |
| void | stop () override |
| void | switch_in () override |
| void | switch_out () override |
| uint64 | set_delta (conf_object_t *NOTNULL event_handler_obj, const event_class_t *next_event_ec, uint64 delta) override |
| uint64 | get_delta (conf_object_t *NOTNULL event_handler_obj) override |
| double | get () const override |
| std::vector< conf_object_t * > | serialized_memory_group (unsigned group_index) override |
| std::vector< conf_object_t * > | execution_group (unsigned group_index) override |
| concurrency_mode_t | supported_modes () override |
| concurrency_mode_t | current_mode () override |
| void | switch_mode (concurrency_mode_t mode) override |
| void | message_pending () override |
| void | yield_request () override |
| int | runDeltaPhase (int count) override |
| bool | runSimulation (sc_core::sc_time t) override |
| void | stopSimulation () override |
| sc_core::sc_simcontext * | context () const override |
| ConfObjectRef | simics_object () const override |
| void | set_run_next_delta (const int &count) |
| uint64_t | get_sc_time_resolution () const |
| void | set_sc_time_resolution (uint64_t time_resolution) |
Public Member Functions inherited from simics::systemc::iface::SimulationInterface | |
| virtual | ~SimulationInterface () |
| virtual int | runDeltaPhase (int count)=0 |
| virtual bool | runSimulation (sc_core::sc_time t)=0 |
| virtual void | stopSimulation ()=0 |
| virtual sc_core::sc_simcontext * | context () const =0 |
| virtual ConfObjectRef | simics_object () const =0 |
Public Member Functions inherited from simics::systemc::iface::EventDeltaInterface | |
| virtual | ~EventDeltaInterface () |
| virtual uint64 | set_delta (conf_object_t *NOTNULL event_handler_obj, const event_class_t *next_event_ec, uint64 delta)=0 |
| virtual uint64 | get_delta (conf_object_t *NOTNULL event_handler_obj)=0 |
Public Member Functions inherited from simics::systemc::iface::ExecuteInterface | |
| virtual | ~ExecuteInterface () |
| virtual void | run ()=0 |
| virtual void | stop ()=0 |
| virtual void | switch_in ()=0 |
| virtual void | switch_out ()=0 |
Public Member Functions inherited from simics::systemc::iface::FrequencyInterface | |
| virtual double | get () const =0 |
| virtual | ~FrequencyInterface () |
Public Member Functions inherited from simics::systemc::iface::ConcurrencyGroupInterface | |
| virtual std::vector< conf_object_t * > | serialized_memory_group (unsigned group_index)=0 |
| virtual std::vector< conf_object_t * > | execution_group (unsigned group_index)=0 |
| virtual | ~ConcurrencyGroupInterface () |
Public Member Functions inherited from simics::systemc::iface::ConcurrencyModeInterface | |
| virtual concurrency_mode_t | supported_modes ()=0 |
| virtual concurrency_mode_t | current_mode ()=0 |
| virtual void | switch_mode (concurrency_mode_t mode)=0 |
| virtual | ~ConcurrencyModeInterface () |
Public Member Functions inherited from simics::systemc::iface::ExecuteControlInterface | |
| virtual void | message_pending ()=0 |
| virtual void | yield_request ()=0 |
| virtual | ~ExecuteControlInterface () |
Protected Member Functions | |
| void | finalize () |
| virtual void | callHandleEvent () |
| const std::vector< conf_object_t * > & | instances () const |
| void | set_frequency (double frequency) |
Provides the interface to the SystemC kernel.
Handles running the SystemC scheduler on entry from Simics. The class also maintains the simulation context, making it possible to create multiple instances of the same module.
| simics::systemc::Simulation::Simulation | ( | ConfObjectRef | o, |
| InternalInterface * | internal | ||
| ) |
|
virtual |
|
protectedvirtual |
|
overridevirtual |
Implements simics::systemc::iface::SimulationInterface.
|
overridevirtual |
Implements simics::systemc::iface::ConcurrencyModeInterface.
|
overridevirtual |
|
protected |
|
overridevirtual |
Implements simics::systemc::iface::FrequencyInterface.
|
overridevirtual |
Implements simics::systemc::iface::EventDeltaInterface.
|
inline |
|
protected |
|
overridevirtual |
Implements simics::systemc::iface::ExecuteControlInterface.
|
overridevirtual |
Implements simics::systemc::iface::ExecuteInterface.
|
overridevirtual |
Implements simics::systemc::iface::SimulationInterface.
|
overridevirtual |
Implements simics::systemc::iface::SimulationInterface.
|
overridevirtual |
|
overridevirtual |
Implements simics::systemc::iface::EventDeltaInterface.
|
protected |
| void simics::systemc::Simulation::set_run_next_delta | ( | const int & | count | ) |
| void simics::systemc::Simulation::set_sc_time_resolution | ( | uint64_t | time_resolution | ) |
|
overridevirtual |
Implements simics::systemc::iface::SimulationInterface.
|
overridevirtual |
Implements simics::systemc::iface::ExecuteInterface.
|
overridevirtual |
Implements simics::systemc::iface::SimulationInterface.
|
overridevirtual |
Implements simics::systemc::iface::ConcurrencyModeInterface.
|
overridevirtual |
Implements simics::systemc::iface::ExecuteInterface.
|
overridevirtual |
Implements simics::systemc::iface::ConcurrencyModeInterface.
|
overridevirtual |
Implements simics::systemc::iface::ExecuteInterface.
|
overridevirtual |
Implements simics::systemc::iface::ExecuteControlInterface.