systemc: Don't use write() in sc_clock to set the clock value.

The two different processes we have to use to match Accellera behavior
would trip the checks in write.

Change-Id: Iee729b239bccd8f7b854894000c9ef2c47600563
Reviewed-on: https://gem5-review.googlesource.com/c/13202
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
This commit is contained in:
Gabe Black
2018-10-01 22:47:27 -07:00
parent f93e27666f
commit c736ef1b2f

View File

@@ -101,8 +101,18 @@ class sc_clock : public sc_signal<bool>
::sc_gem5::ClockTick *_gem5UpEdge;
::sc_gem5::ClockTick *_gem5DownEdge;
void tickUp() { sc_signal<bool>::write(true); }
void tickDown() { sc_signal<bool>::write(false); }
void
tickUp()
{
m_new_val = true;
request_update();
}
void
tickDown()
{
m_new_val = false;
request_update();
}
};
typedef sc_in<bool> sc_in_clk;