diff options
Diffstat (limited to 'src/systemc/tests/systemc/kernel/sc_sensitive/test05')
-rw-r--r-- | src/systemc/tests/systemc/kernel/sc_sensitive/test05/golden/test05.log | 7 | ||||
-rw-r--r-- | src/systemc/tests/systemc/kernel/sc_sensitive/test05/test05.cpp | 37 |
2 files changed, 44 insertions, 0 deletions
diff --git a/src/systemc/tests/systemc/kernel/sc_sensitive/test05/golden/test05.log b/src/systemc/tests/systemc/kernel/sc_sensitive/test05/golden/test05.log new file mode 100644 index 000000000..252bd31f1 --- /dev/null +++ b/src/systemc/tests/systemc/kernel/sc_sensitive/test05/golden/test05.log @@ -0,0 +1,7 @@ +SystemC Simulation +1 ns +5 ns +6 ns +1006 ns + +Info: /OSCI/SystemC: Simulation stopped by user. diff --git a/src/systemc/tests/systemc/kernel/sc_sensitive/test05/test05.cpp b/src/systemc/tests/systemc/kernel/sc_sensitive/test05/test05.cpp new file mode 100644 index 000000000..fc2a8b21d --- /dev/null +++ b/src/systemc/tests/systemc/kernel/sc_sensitive/test05/test05.cpp @@ -0,0 +1,37 @@ +#include "systemc.h" + +SC_MODULE(TB) +{ + SC_CTOR(TB) + { + SC_THREAD(exec); + sensitive << m_clk.pos(); + } + void exec() + { + for (;;) + { + wait(2); + cout << sc_time_stamp() << endl; + wait(4); + cout << sc_time_stamp() << endl; + wait(1); + cout << sc_time_stamp() << endl; + wait(1000); + cout << sc_time_stamp() << endl; + sc_stop(); + } + } + sc_in_clk m_clk; +}; + +int sc_main( int, char*[] ) +{ + sc_clock clock; + TB tb("tb"); + + tb.m_clk(clock); + sc_start(2000, SC_NS); + + return 0; +} |