gem5
v20.1.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. More... | |
void | completeWrite (Serial serial, Tick _complete) |
Completes a write transaction. More... | |
void | abortWrite (Serial serial) |
Aborts a write transaction. More... | |
bool | isComplete () const |
Public Attributes | |
Tick | start |
Start of earliest write in cluster. More... | |
Tick | complete |
Completion of last write in cluster. More... | |
std::unordered_map< Serial, Transaction > | writes |
Map of Serial --> Transaction of all writes in cluster; contains all, in-flight or already completed. More... | |
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 138 of file mem_checker.hh.
|
inline |
Definition at line 141 of file mem_checker.hh.
void MemChecker::WriteCluster::abortWrite | ( | MemChecker::Serial | serial | ) |
Aborts a write transaction.
serial | Unique identifier of a write previously started. |
Definition at line 101 of file mem_checker.cc.
References warn.
void 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 70 of file mem_checker.cc.
References MemChecker::TICK_FUTURE, and warn.
|
inline |
Definition at line 175 of file mem_checker.hh.
References complete, and MemChecker::TICK_FUTURE.
Referenced by startWrite().
void 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 43 of file mem_checker.cc.
References chatty_assert, complete, data, isComplete(), numIncomplete, start, MemChecker::TICK_FUTURE, and writes.
Tick MemChecker::WriteCluster::complete |
Completion of last write in cluster.
Definition at line 179 of file mem_checker.hh.
Referenced by isComplete(), and startWrite().
|
private |
Definition at line 188 of file mem_checker.hh.
|
private |
Definition at line 189 of file mem_checker.hh.
Referenced by startWrite().
Tick MemChecker::WriteCluster::start |
Start of earliest write in cluster.
Definition at line 178 of file mem_checker.hh.
Referenced by startWrite().
std::unordered_map<Serial, Transaction> MemChecker::WriteCluster::writes |
Map of Serial --> Transaction of all writes in cluster; contains all, in-flight or already completed.
Definition at line 185 of file mem_checker.hh.
Referenced by startWrite().