The Sparta Modeling Framework
Loading...
Searching...
No Matches
SpartaSystemCSimulator.hpp
1
4
5#include "systemc_example_top.hpp"
6
7namespace sparta {
8 class Scheduler;
9 class TreeNode;
10}
11
12namespace sparta_sim
13{
17 {
18 public:
34
36
37 private:
38
39 void buildTree_() override;
40 void configureTree_() override;
41 void bindTree_() override;
42
43 void runRaw_(uint64_t run_time) override final {
44 sysc_sched_runner_.run(run_time);
45 }
46
47 sparta::SysCSpartaSchedulerAdapter sysc_sched_runner_;
48 std::vector<std::unique_ptr<sparta::TreeNode>> tns_to_delete_;
49
50 systemc_example::systemc_example_top systemc_example_top_;
51
52 };
53}
Simulation setup base class.
Glue code that connect the Sparta scheduler to SystemC.
A class that lets you schedule events now and in the future.
Class that "connects" Sparta to SystemC.
void run(Scheduler::Tick num_ticks=Scheduler::INDEFINITE)
Run simulation – all of it including SystemC.
Simulator which builds a sparta DeviceTree.
Top level constructor for the SystemC example TLM simulator.
SpartaSystemCSimulator(sparta::Scheduler *sched)
Construction of the SpartaSystemCSimulator.
Macros for handling exponential backoff.