DRAM command was not set in trace recorder

This commit is contained in:
Matthias Jung
2019-08-22 22:40:28 +02:00
parent c747010f0f
commit 6388b3d75c
2 changed files with 6 additions and 0 deletions

View File

@@ -141,6 +141,8 @@ void TlmRecorder::introduceTransactionSystem(tlm::tlm_generic_payload &trans)
{
unsigned int id = totalNumTransactions++;
currentTransactionsInSystem[&trans].id = id;
currentTransactionsInSystem[&trans].cmd = trans.get_command() ==
tlm::TLM_READ_COMMAND ? "R" : "W";
currentTransactionsInSystem[&trans].address = trans.get_address();
currentTransactionsInSystem[&trans].burstlength = trans.get_streaming_width();
currentTransactionsInSystem[&trans].dramExtension = DramExtension::getExtension(
@@ -378,8 +380,11 @@ void TlmRecorder::insertTransactionInDB(Transaction &recordingData)
recordingData.timeOnDataStrobe.end.value());
sqlite3_bind_int64(insertTransactionStatement, 13,
recordingData.timeOfGeneration.value());
sqlite3_bind_text(insertTransactionStatement, 14,
recordingData.cmd.c_str(), recordingData.cmd.length(), NULL);
executeSqlStatement(insertTransactionStatement);
}
void TlmRecorder::insertRangeInDB(unsigned int id, const sc_time &begin,

View File

@@ -94,6 +94,7 @@ private:
unsigned int id;
unsigned int address;
unsigned int burstlength;
std::string cmd;
DramExtension dramExtension;
sc_time timeOfGeneration;
TimeInterval timeOnDataStrobe;