diff --git a/DRAMSys/library/src/common/TlmRecorder.cpp b/DRAMSys/library/src/common/TlmRecorder.cpp index 9d1bf9b9..c1137f5c 100644 --- a/DRAMSys/library/src/common/TlmRecorder.cpp +++ b/DRAMSys/library/src/common/TlmRecorder.cpp @@ -186,7 +186,11 @@ void TlmRecorder::commitRecordedDataToDB() } sc_time rangeBegin = recordingData.recordedPhases.front().interval.start; - sc_time rangeEnd = recordingData.recordedPhases.back().interval.end; + sc_time rangeEnd = rangeBegin; + for (auto &it : recordingData.recordedPhases) + { + rangeEnd = std::max(rangeEnd, it.interval.end); + } insertRangeInDB(recordingData.id, rangeBegin, rangeEnd); } @@ -261,6 +265,10 @@ void TlmRecorder::setUpTransactionTerminatingPhases() transactionTerminatingPhases.push_back(static_cast (END_REFB)); + // Refresh Same Bank + transactionTerminatingPhases.push_back(static_cast + (END_REFSB)); + // Phases for Power Down transactionTerminatingPhases.push_back(static_cast (END_PDNA));