Hello Jason Lowe-Power, Matthias Jung, Giacomo Travaglini, Andreas Sandberg,

I'd like you to reexamine a change. Please visit

    https://gem5-review.googlesource.com/c/public/gem5/+/13186

to look at the new patch set (#3).

Change subject: systemc: Implement signal based resets.
......................................................................

systemc: Implement signal based resets.

The implementation is based on sc_event sensitivities.

Also of note is that the way reset works in the Accellera
implementation isn't consistent with the spec. That says that
wait(int n) is supposed to be equivalent to calling wait() n times,
assuming n is greater than 0.

Instead, Accellera stores that count and then doesn't wake up the
process until the count is 0, decrementing it otherwise.

That means that when the process is in reset, it won't actually reset
for those intermediate wait()s which it would if wait() was called
repeatedly. Also, oddly, when a reset becomes asserted, it will clear
the count to 0 explicitly. That may have been an attempt to make the
behavior of wait(int n) match the spec, but it doesn't handle cases
where the reset is already set when wait(int n) is called.

Change-Id: I92f8e9a128e6618af94dc048ce570a4436e17e4b
---
M src/systemc/core/event.cc
M src/systemc/core/event.hh
M src/systemc/core/port.cc
M src/systemc/core/port.hh
M src/systemc/core/process.cc
M src/systemc/core/process.hh
M src/systemc/core/sc_module.cc
M src/systemc/core/sc_spawn.cc
M src/systemc/core/scheduler.cc
M src/systemc/core/scheduler.hh
M src/systemc/core/sensitivity.cc
M src/systemc/core/sensitivity.hh
M src/systemc/ext/core/sc_spawn.hh
13 files changed, 363 insertions(+), 52 deletions(-)


--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/13186
To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-Change-Id: I92f8e9a128e6618af94dc048ce570a4436e17e4b
Gerrit-Change-Number: 13186
Gerrit-PatchSet: 3
Gerrit-Owner: Gabe Black <[email protected]>
Gerrit-Reviewer: Andreas Sandberg <[email protected]>
Gerrit-Reviewer: Gabe Black <[email protected]>
Gerrit-Reviewer: Giacomo Travaglini <[email protected]>
Gerrit-Reviewer: Jason Lowe-Power <[email protected]>
Gerrit-Reviewer: Matthias Jung <[email protected]>
Gerrit-MessageType: newpatchset
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to