gem5 v24.0.0.0
|
The WriteCluster class captures sets of writes where all writes are overlapping with at least one other write. More...
#include <mem_checker.hh>
Public Member Functions | |
WriteCluster () | |
void | startWrite (Serial serial, Tick _start, uint8_t data) |
Starts a write transaction. | |
void | completeWrite (Serial serial, Tick _complete) |
Completes a write transaction. | |
void | abortWrite (Serial serial) |
Aborts a write transaction. | |
bool | isComplete () const |
Public Attributes | |
Tick | start |
Start of earliest write in cluster. | |
Tick | complete |
Completion of last write in cluster. | |
std::unordered_map< Serial, Transaction > | writes |
Map of Serial --> Transaction of all writes in cluster; contains all, in-flight or already completed. | |
Private Attributes | |
Tick | completeMax |
size_t | numIncomplete |
The WriteCluster class captures sets of writes where all writes are overlapping with at least one other write.
Capturing writes in this way simplifies pruning of writes.
Definition at line 143 of file mem_checker.hh.
|
inline |
Definition at line 146 of file mem_checker.hh.
void gem5::MemChecker::WriteCluster::abortWrite | ( | MemChecker::Serial | serial | ) |
Aborts a write transaction.
serial | Unique identifier of a write previously started. |
Definition at line 106 of file mem_checker.cc.
References warn.
void gem5::MemChecker::WriteCluster::completeWrite | ( | MemChecker::Serial | serial, |
Tick | _complete ) |
Completes a write transaction.
serial | Unique identifier of a write previously started. |
_complete | When the write was sent off to the memory subsystem. |
Definition at line 74 of file mem_checker.cc.
References gem5::MemChecker::TICK_FUTURE, and warn.
|
inline |
Definition at line 180 of file mem_checker.hh.
References complete, and gem5::MemChecker::TICK_FUTURE.
Referenced by startWrite().
void gem5::MemChecker::WriteCluster::startWrite | ( | MemChecker::Serial | serial, |
Tick | _start, | ||
uint8_t | data ) |
Starts a write transaction.
serial | Unique identifier of the write. |
_start | When the write was sent off to the memory subsystem. |
data | The data that this write passed to the memory subsystem. |
Definition at line 47 of file mem_checker.cc.
References complete, data, gem5_assert, isComplete(), numIncomplete, start, gem5::MemChecker::TICK_FUTURE, and writes.
Referenced by gem5::MemChecker::ByteTracker::startWrite().
Tick gem5::MemChecker::WriteCluster::complete |
Completion of last write in cluster.
Definition at line 184 of file mem_checker.hh.
Referenced by isComplete(), and startWrite().
|
private |
Definition at line 193 of file mem_checker.hh.
|
private |
Definition at line 194 of file mem_checker.hh.
Referenced by startWrite().
Tick gem5::MemChecker::WriteCluster::start |
Start of earliest write in cluster.
Definition at line 183 of file mem_checker.hh.
Referenced by startWrite().
std::unordered_map<Serial, Transaction> gem5::MemChecker::WriteCluster::writes |
Map of Serial --> Transaction of all writes in cluster; contains all, in-flight or already completed.
Definition at line 190 of file mem_checker.hh.
Referenced by startWrite().