Hello Andreas Sandberg,
I'd like you to do a code review. Please visit
https://gem5-review.googlesource.com/7163
to review the following change.
Change subject: mem-ruby: Fix wakeup timeouts for the MOESI_CMP_token
protocol
......................................................................
mem-ruby: Fix wakeup timeouts for the MOESI_CMP_token protocol
This changeset fixes a bug that was affecting the MOESI_CMP_token
protocol where setting the next timeout required an absolute tick in
the future.
Change-Id: Ibfdb59354e13c7e552cb3389e71bda010f333249
Reviewed-by: Andreas Sandberg <[email protected]>
---
M src/mem/protocol/MOESI_CMP_token-dir.sm
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/src/mem/protocol/MOESI_CMP_token-dir.sm
b/src/mem/protocol/MOESI_CMP_token-dir.sm
index 1a749b1..9029064 100644
--- a/src/mem/protocol/MOESI_CMP_token-dir.sm
+++ b/src/mem/protocol/MOESI_CMP_token-dir.sm
@@ -494,7 +494,8 @@
// IssueCount.
// Set a wakeup timer
- reissueTimerTable.set(address,
cyclesToTicks(reissue_wakeup_latency));
+ reissueTimerTable.set(
+ address, clockEdge() + cyclesToTicks(reissue_wakeup_latency));
}
}
@@ -562,7 +563,8 @@
// IssueCount.
// Set a wakeup timer
- reissueTimerTable.set(address,
cyclesToTicks(reissue_wakeup_latency));
+ reissueTimerTable.set(
+ address, clockEdge() + cyclesToTicks(reissue_wakeup_latency));
}
}
@@ -808,7 +810,8 @@
//
if (reissueTimerTable.isSet(address)) {
reissueTimerTable.unset(address);
- reissueTimerTable.set(address, cyclesToTicks(fixed_timeout_latency));
+ reissueTimerTable.set(
+ address, clockEdge() + cyclesToTicks(fixed_timeout_latency));
}
}
@@ -816,7 +819,8 @@
//
// currently only support a fixed timeout latency
//
- reissueTimerTable.set(address, cyclesToTicks(fixed_timeout_latency));
+ reissueTimerTable.set(
+ address, clockEdge() + cyclesToTicks(fixed_timeout_latency));
}
action(ut_unsetReissueTimer, "ut", desc="Unset reissue timer.") {
--
To view, visit https://gem5-review.googlesource.com/7163
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings
Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ibfdb59354e13c7e552cb3389e71bda010f333249
Gerrit-Change-Number: 7163
Gerrit-PatchSet: 1
Gerrit-Owner: Nikos Nikoleris <[email protected]>
Gerrit-Reviewer: Andreas Sandberg <[email protected]>
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev