Add number of bankgroups and REFSB command length to trace analyzer.
This commit is contained in:
@@ -19,6 +19,7 @@ CREATE TABLE GeneralInfo(
|
||||
NumberOfTransactions INTEGER,
|
||||
TraceEnd INTEGER,
|
||||
NumberOfRanks INTEGER,
|
||||
NumberOfBankgroups INTEGER,
|
||||
NumberOfBanks INTEGER,
|
||||
clk INTEGER,
|
||||
UnitOfTime TEXT,
|
||||
@@ -41,6 +42,7 @@ CREATE TABLE CommandLengths(
|
||||
WRA INTEGER,
|
||||
REFA INTEGER,
|
||||
REFB INTEGER,
|
||||
REFSB INTEGER,
|
||||
PDEA INTEGER,
|
||||
PDXA INTEGER,
|
||||
PDEP INTEGER,
|
||||
|
||||
@@ -275,86 +275,86 @@ void TlmRecorder::prepareSqlStatements()
|
||||
insertTransactionString =
|
||||
"INSERT INTO Transactions VALUES (:id,:rangeID,:address,:burstlength,:thread,:channel,:rank,"
|
||||
":bankgroup,:bank,:row,:column,:dataStrobeBegin,:dataStrobeEnd, :timeOfGeneration,:command)";
|
||||
|
||||
insertRangeString = "INSERT INTO Ranges VALUES (:id,:begin,:end)";
|
||||
|
||||
updateRangeString = "UPDATE Ranges SET End = :end WHERE ID = :id";
|
||||
|
||||
updateDataStrobeString =
|
||||
"UPDATE Transactions SET DataStrobeBegin = :begin, DataStrobeEnd = :end WHERE ID = :id";
|
||||
|
||||
insertPhaseString =
|
||||
"INSERT INTO Phases (PhaseName,PhaseBegin,PhaseEnd,Transact) VALUES (:name,:begin,:end,:transaction)";
|
||||
|
||||
updatePhaseString =
|
||||
"UPDATE Phases SET PhaseEnd = :end WHERE Transact = :trans AND PhaseName = :name";
|
||||
|
||||
insertGeneralInfoString =
|
||||
"INSERT INTO GeneralInfo VALUES"
|
||||
"(:numberOfTransactions,:end,:numberOfRanks,:numberOfBanks,:clk,:unitOfTime,:mcconfig,:memspec,"
|
||||
"(:numberOfTransactions,:end,:numberOfRanks,:numberOfBankgroups,:numberOfBanks,:clk,:unitOfTime,:mcconfig,:memspec,"
|
||||
":traces,:windowSize, :flexibleRefresh, :maxRefBurst, :controllerThread)";
|
||||
|
||||
insertCommandLengthsString =
|
||||
"INSERT INTO CommandLengths VALUES"
|
||||
"(:ACT, :PRE, :PREA, :RD, :RDA, :WR, :WRA, :REFA, :REFB, :PDEA, :PDXA, :PDEP, :PDXP, :SREFEN, :SREFEX)";
|
||||
"(:ACT, :PRE, :PREA, :RD, :RDA, :WR, :WRA, :REFA, :REFB, :REFSB, :PDEA, :PDXA, :PDEP, :PDXP, :SREFEN, :SREFEX)";
|
||||
|
||||
insertDebugMessageString =
|
||||
"INSERT INTO DebugMessages (Time,Message) Values (:time,:message)";
|
||||
|
||||
insertPowerString = "INSERT INTO Power VALUES (:time,:averagePower)";
|
||||
|
||||
sqlite3_prepare_v2(db, insertTransactionString.c_str(), -1,
|
||||
&insertTransactionStatement, 0);
|
||||
sqlite3_prepare_v2(db, insertTransactionString.c_str(), -1, &insertTransactionStatement, 0);
|
||||
sqlite3_prepare_v2(db, insertRangeString.c_str(), -1, &insertRangeStatement, 0);
|
||||
sqlite3_prepare_v2(db, updateRangeString.c_str(), -1, &updateRangeStatement, 0);
|
||||
sqlite3_prepare_v2(db, insertPhaseString.c_str(), -1, &insertPhaseStatement, 0);
|
||||
sqlite3_prepare_v2(db, updatePhaseString.c_str(), -1, &updatePhaseStatement, 0);
|
||||
sqlite3_prepare_v2(db, updateDataStrobeString.c_str(), -1,
|
||||
&updateDataStrobeStatement, 0);
|
||||
sqlite3_prepare_v2(db, insertGeneralInfoString.c_str(), -1,
|
||||
&insertGeneralInfoStatement, 0);
|
||||
sqlite3_prepare_v2(db, insertCommandLengthsString.c_str(), -1,
|
||||
&insertCommandLengthsStatement, 0);
|
||||
sqlite3_prepare_v2(db, insertDebugMessageString.c_str(), -1,
|
||||
&insertDebugMessageStatement, 0);
|
||||
sqlite3_prepare_v2(db, updateDataStrobeString.c_str(), -1, &updateDataStrobeStatement, 0);
|
||||
sqlite3_prepare_v2(db, insertGeneralInfoString.c_str(), -1, &insertGeneralInfoStatement, 0);
|
||||
sqlite3_prepare_v2(db, insertCommandLengthsString.c_str(), -1, &insertCommandLengthsStatement, 0);
|
||||
sqlite3_prepare_v2(db, insertDebugMessageString.c_str(), -1, &insertDebugMessageStatement, 0);
|
||||
sqlite3_prepare_v2(db, insertPowerString.c_str(), -1, &insertPowerStatement, 0);
|
||||
}
|
||||
|
||||
void TlmRecorder::insertDebugMessageInDB(std::string message, const sc_time &time)
|
||||
{
|
||||
sqlite3_bind_int64(insertDebugMessageStatement, 1, time.value());
|
||||
sqlite3_bind_text(insertDebugMessageStatement, 2, message.c_str(),
|
||||
message.length(), 0);
|
||||
sqlite3_bind_text(insertDebugMessageStatement, 2, message.c_str(), message.length(), 0);
|
||||
executeSqlStatement(insertDebugMessageStatement);
|
||||
}
|
||||
|
||||
void TlmRecorder::insertGeneralInfo()
|
||||
{
|
||||
sqlite3_bind_int64(insertGeneralInfoStatement, 1, totalNumTransactions - 1);
|
||||
sqlite3_bind_int64(insertGeneralInfoStatement, 2,
|
||||
simulationTimeCoveredByRecording.value());
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 3,
|
||||
Configuration::getInstance().memSpec->numberOfRanks);
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 4,
|
||||
Configuration::getInstance().memSpec->numberOfBanks);
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 5,
|
||||
Configuration::getInstance().memSpec->tCK.value());
|
||||
sqlite3_bind_text(insertGeneralInfoStatement, 6, "PS", 2, NULL);
|
||||
sqlite3_bind_text(insertGeneralInfoStatement, 7, mcconfig.c_str(),
|
||||
mcconfig.length(), NULL);
|
||||
sqlite3_bind_text(insertGeneralInfoStatement, 8, memspec.c_str(),
|
||||
memspec.length(), NULL);
|
||||
sqlite3_bind_text(insertGeneralInfoStatement, 9, traces.c_str(),
|
||||
traces.length(), NULL);
|
||||
sqlite3_bind_int64(insertGeneralInfoStatement, 2, simulationTimeCoveredByRecording.value());
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 3, Configuration::getInstance().memSpec->numberOfRanks);
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 4, Configuration::getInstance().memSpec->numberOfBankGroups);
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 5, Configuration::getInstance().memSpec->numberOfBanks);
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 6, Configuration::getInstance().memSpec->tCK.value());
|
||||
sqlite3_bind_text(insertGeneralInfoStatement, 7, "PS", 2, NULL);
|
||||
sqlite3_bind_text(insertGeneralInfoStatement, 8, mcconfig.c_str(), mcconfig.length(), NULL);
|
||||
sqlite3_bind_text(insertGeneralInfoStatement, 9, memspec.c_str(), memspec.length(), NULL);
|
||||
sqlite3_bind_text(insertGeneralInfoStatement, 10, traces.c_str(), traces.length(), NULL);
|
||||
if (!Configuration::getInstance().enableWindowing)
|
||||
sqlite3_bind_int64(insertGeneralInfoStatement, 10, 0);
|
||||
sqlite3_bind_int64(insertGeneralInfoStatement, 11, 0);
|
||||
else
|
||||
sqlite3_bind_int64(insertGeneralInfoStatement, 10,
|
||||
(Configuration::getInstance().memSpec->tCK *
|
||||
Configuration::getInstance().windowSize).value());
|
||||
sqlite3_bind_int64(insertGeneralInfoStatement, 11,
|
||||
(Configuration::getInstance().memSpec->tCK *
|
||||
Configuration::getInstance().windowSize).value());
|
||||
|
||||
if ((Configuration::getInstance().refreshMaxPostponed > 0)
|
||||
|| (Configuration::getInstance().refreshMaxPulledin > 0)) {
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 11, 1);
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 12,
|
||||
std::max(Configuration::getInstance().refreshMaxPostponed,
|
||||
Configuration::getInstance().refreshMaxPulledin));
|
||||
} else {
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 11, 0);
|
||||
|| (Configuration::getInstance().refreshMaxPulledin > 0))
|
||||
{
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 12, 1);
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 13,
|
||||
std::max(Configuration::getInstance().refreshMaxPostponed,
|
||||
Configuration::getInstance().refreshMaxPulledin));
|
||||
}
|
||||
else
|
||||
{
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 12, 0);
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 13, 0);
|
||||
}
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 13, UINT_MAX);
|
||||
sqlite3_bind_int(insertGeneralInfoStatement, 14, UINT_MAX);
|
||||
executeSqlStatement(insertGeneralInfoStatement);
|
||||
}
|
||||
|
||||
@@ -371,12 +371,13 @@ void TlmRecorder::insertCommandLengths()
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 7, memSpec->getCommandLength(Command::WRA) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 8, memSpec->getCommandLength(Command::REFA) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 9, memSpec->getCommandLength(Command::REFB) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 10, memSpec->getCommandLength(Command::PDEA) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 11, memSpec->getCommandLength(Command::PDXA) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 12, memSpec->getCommandLength(Command::PDEP) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 13, memSpec->getCommandLength(Command::PDXP) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 14, memSpec->getCommandLength(Command::SREFEN) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 15, memSpec->getCommandLength(Command::SREFEX) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 10, 1);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 11, memSpec->getCommandLength(Command::PDEA) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 12, memSpec->getCommandLength(Command::PDXA) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 13, memSpec->getCommandLength(Command::PDEP) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 14, memSpec->getCommandLength(Command::PDXP) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 15, memSpec->getCommandLength(Command::SREFEN) / memSpec->tCK);
|
||||
sqlite3_bind_int(insertCommandLengthsStatement, 16, memSpec->getCommandLength(Command::SREFEX) / memSpec->tCK);
|
||||
|
||||
executeSqlStatement(insertCommandLengthsStatement);
|
||||
}
|
||||
|
||||
@@ -47,6 +47,7 @@ struct CommandLengths
|
||||
unsigned WRA;
|
||||
unsigned REFA;
|
||||
unsigned REFB;
|
||||
unsigned REFSB;
|
||||
unsigned PDEA;
|
||||
unsigned PDXA;
|
||||
unsigned PDEP;
|
||||
@@ -56,10 +57,11 @@ struct CommandLengths
|
||||
|
||||
CommandLengths(unsigned ACT, unsigned PRE, unsigned PREA,
|
||||
unsigned RD, unsigned RDA, unsigned WR, unsigned WRA,
|
||||
unsigned REFA, unsigned REFB, unsigned PDEA, unsigned PDXA,
|
||||
unsigned PDEP, unsigned PDXP, unsigned SREFEN, unsigned SREFEX) :
|
||||
unsigned REFA, unsigned REFB, unsigned REFSB,
|
||||
unsigned PDEA, unsigned PDXA, unsigned PDEP, unsigned PDXP,
|
||||
unsigned SREFEN, unsigned SREFEX) :
|
||||
ACT(ACT), PRE(PRE), PREA(PREA), RD(RD), RDA(RDA), WR(WR), WRA(WRA),
|
||||
REFA(REFA), REFB(REFB), PDEA(PDEA), PDXA(PDXA),
|
||||
REFA(REFA), REFB(REFB), REFSB(REFSB), PDEA(PDEA), PDXA(PDXA),
|
||||
PDEP(PDEP), PDXP(PDXP), SREFEN(SREFEN), SREFEX(SREFEX) {}
|
||||
|
||||
CommandLengths() {}
|
||||
|
||||
@@ -45,6 +45,7 @@ struct GeneralInfo {
|
||||
unsigned int numberOfPhases;
|
||||
Timespan span;
|
||||
unsigned int numberOfRanks;
|
||||
unsigned int numberOfBankgroups;
|
||||
unsigned int numberOfBanks;
|
||||
QString description;
|
||||
QString unitOfTime;
|
||||
@@ -53,12 +54,12 @@ struct GeneralInfo {
|
||||
unsigned int controllerThread;
|
||||
|
||||
public:
|
||||
GeneralInfo(unsigned int numberOfTransactions, unsigned int numberOfPhases,
|
||||
Timespan span, unsigned int numberOfRanks, unsigned int numberOfBanks,
|
||||
GeneralInfo(unsigned int numberOfTransactions, unsigned int numberOfPhases, Timespan span,
|
||||
unsigned int numberOfRanks, unsigned int numberOfBankgroups, unsigned int numberOfBanks,
|
||||
const QString &description, QString unitOfTime, unsigned int clkPeriod,
|
||||
unsigned int windowSize, unsigned int controllerThread) :
|
||||
numberOfTransactions(numberOfTransactions) , numberOfPhases(numberOfPhases),
|
||||
span(span), numberOfRanks(numberOfRanks), numberOfBanks(numberOfBanks),
|
||||
numberOfTransactions(numberOfTransactions) , numberOfPhases(numberOfPhases), span(span),
|
||||
numberOfRanks(numberOfRanks), numberOfBankgroups(numberOfBankgroups), numberOfBanks(numberOfBanks),
|
||||
description(description), unitOfTime(unitOfTime), clkPeriod(clkPeriod),
|
||||
windowSize(windowSize), controllerThread(controllerThread) {}
|
||||
|
||||
|
||||
@@ -314,8 +314,22 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
class REFSB : public AUTO_REFRESH
|
||||
{
|
||||
public:
|
||||
using AUTO_REFRESH::AUTO_REFRESH;
|
||||
protected:
|
||||
virtual QString Name() const override
|
||||
{
|
||||
return "REFSB";
|
||||
}
|
||||
virtual bool isBankwise() const override
|
||||
{
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
class PRECHARGE_ALL : public Phase
|
||||
class PREA : public Phase
|
||||
{
|
||||
public:
|
||||
using Phase::Phase;
|
||||
|
||||
@@ -68,7 +68,7 @@ shared_ptr<Phase> PhaseFactory::CreatePhase(ID id, const QString &dbPhaseName,
|
||||
return shared_ptr<Phase>(new ACT(id, span, trans,
|
||||
{Timespan(span.Begin(), span.Begin() + clk * cl.ACT)}, std::shared_ptr<Timespan>()));
|
||||
else if (dbPhaseName == "PREA")
|
||||
return shared_ptr<Phase>(new PRECHARGE_ALL(id, span, trans,
|
||||
return shared_ptr<Phase>(new PREA(id, span, trans,
|
||||
{Timespan(span.Begin(), span.Begin() + clk * cl.PREA)}, std::shared_ptr<Timespan>()));
|
||||
else if (dbPhaseName == "REFA")
|
||||
return shared_ptr<Phase>(new REFA(id, span, trans,
|
||||
@@ -76,6 +76,9 @@ shared_ptr<Phase> PhaseFactory::CreatePhase(ID id, const QString &dbPhaseName,
|
||||
else if (dbPhaseName == "REFB")
|
||||
return shared_ptr<Phase>(new REFB(id, span, trans,
|
||||
{Timespan(span.Begin(), span.Begin() + clk * cl.REFB)}, std::shared_ptr<Timespan>()));
|
||||
else if (dbPhaseName == "REFSB")
|
||||
return shared_ptr<Phase>(new REFSB(id, span, trans,
|
||||
{Timespan(span.Begin(), span.Begin() + clk * cl.REFSB)}, std::shared_ptr<Timespan>()));
|
||||
else if (dbPhaseName == "RD")
|
||||
return shared_ptr<Phase>(new RD(id, span, trans, {Timespan(span.Begin(), span.Begin() + clk * cl.RD)},
|
||||
std::shared_ptr<Timespan>(new Timespan(trans->SpanOnDataStrobe()))));
|
||||
|
||||
@@ -238,7 +238,7 @@ ID TraceDB::getTransactionIDFromPhaseID(ID phaseID)
|
||||
GeneralInfo TraceDB::getGeneralInfoFromDB()
|
||||
{
|
||||
QSqlQuery query(database);
|
||||
query.prepare("SELECT NumberOfTransactions, TraceEnd, NumberOfRanks, NumberOfBanks, Clk, "
|
||||
query.prepare("SELECT NumberOfTransactions, TraceEnd, NumberOfRanks, NumberOfBankgroups, NumberOfBanks, Clk, "
|
||||
"UnitOfTime, Traces, Memspec, MCconfig, WindowSize, ControllerThread FROM GeneralInfo");
|
||||
executeQuery(query);
|
||||
|
||||
@@ -246,16 +246,17 @@ GeneralInfo TraceDB::getGeneralInfoFromDB()
|
||||
unsigned int numberOfTransactions = query.value(0).toInt();
|
||||
traceTime traceEnd = query.value(1).toLongLong();
|
||||
unsigned int numberOfRanks = query.value(2).toInt();
|
||||
unsigned int numberOfBanks = query.value(3).toInt();
|
||||
unsigned int clkPeriod = query.value(4).toInt();
|
||||
QString unitOfTime = query.value(5).toString();
|
||||
unsigned int numberOfBankgroups = query.value(3).toInt();
|
||||
unsigned int numberOfBanks = query.value(4).toInt();
|
||||
unsigned int clkPeriod = query.value(5).toInt();
|
||||
QString unitOfTime = query.value(6).toString();
|
||||
unsigned int numberOfPhases = getNumberOfPhases();
|
||||
|
||||
QString traces = "Traces: " + query.value(6).toString();
|
||||
QString memspec = "Memspec: " + query.value(7).toString();
|
||||
QString mcconfig = "MCconfig: " + query.value(8).toString();
|
||||
unsigned int windowSize = query.value(9).toInt();
|
||||
unsigned int controllerThread = query.value(10).toUInt();
|
||||
QString traces = "Traces: " + query.value(7).toString();
|
||||
QString memspec = "Memspec: " + query.value(8).toString();
|
||||
QString mcconfig = "MCconfig: " + query.value(9).toString();
|
||||
unsigned int windowSize = query.value(10).toInt();
|
||||
unsigned int controllerThread = query.value(11).toUInt();
|
||||
|
||||
QString description = (traces + "\n");
|
||||
description += mcconfig + "\n";
|
||||
@@ -268,8 +269,8 @@ GeneralInfo TraceDB::getGeneralInfoFromDB()
|
||||
description += "Window size:" + QString::number(windowSize) + "\n";
|
||||
|
||||
return GeneralInfo(numberOfTransactions, numberOfPhases, Timespan(0, traceEnd),
|
||||
numberOfRanks, numberOfBanks, description, unitOfTime,
|
||||
clkPeriod, windowSize, controllerThread);
|
||||
numberOfRanks, numberOfBankgroups, numberOfBanks,
|
||||
description, unitOfTime, clkPeriod, windowSize, controllerThread);
|
||||
} else {
|
||||
throw sqlException("Tracefile corrupted. No general info table",
|
||||
this->pathToDB.toStdString());
|
||||
@@ -293,14 +294,15 @@ CommandLengths TraceDB::getCommandLengthsFromDB()
|
||||
unsigned WRA = query.value(6).toInt();
|
||||
unsigned REFA = query.value(7).toInt();
|
||||
unsigned REFB = query.value(8).toInt();
|
||||
unsigned PDEA = query.value(9).toInt();
|
||||
unsigned PDXA = query.value(10).toInt();
|
||||
unsigned PDEP = query.value(11).toInt();
|
||||
unsigned PDXP = query.value(12).toInt();
|
||||
unsigned SREFEN = query.value(13).toInt();
|
||||
unsigned SREFEX = query.value(14).toInt();
|
||||
unsigned REFSB = query.value(9).toInt();
|
||||
unsigned PDEA = query.value(10).toInt();
|
||||
unsigned PDXA = query.value(11).toInt();
|
||||
unsigned PDEP = query.value(12).toInt();
|
||||
unsigned PDXP = query.value(13).toInt();
|
||||
unsigned SREFEN = query.value(14).toInt();
|
||||
unsigned SREFEX = query.value(15).toInt();
|
||||
|
||||
return CommandLengths(ACT, PRE, PREA, RD, RDA, WR, WRA, REFA, REFB,
|
||||
return CommandLengths(ACT, PRE, PREA, RD, RDA, WR, WRA, REFA, REFB, REFSB,
|
||||
PDEA, PDXA, PDEP, PDXP, SREFEN, SREFEX);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -54,6 +54,7 @@ struct TraceDrawingProperties {
|
||||
int yValCommandBus;
|
||||
int yValDataBus;
|
||||
unsigned int numberOfRanks;
|
||||
unsigned int numberOfBankgroups;
|
||||
unsigned int numberOfBanks;
|
||||
unsigned int banksPerRank;
|
||||
|
||||
@@ -68,8 +69,8 @@ struct TraceDrawingProperties {
|
||||
drawText(drawText), drawBorder(drawBorder), colorGrouping(colorGrouping),
|
||||
yValResponse(yValResponse), yValRequest(yValRequest),
|
||||
yValCommandBus(yValCommandBus), yValDataBus(yValDataBus),
|
||||
numberOfRanks(numberOfRanks), numberOfBanks(numberOfBanks),
|
||||
banksPerRank(numberOfBanks / numberOfRanks) {}
|
||||
numberOfRanks(numberOfRanks), numberOfBankgroups(numberOfBankgroups),
|
||||
numberOfBanks(numberOfBanks), banksPerRank(numberOfBanks / numberOfRanks) {}
|
||||
|
||||
QHash<int, QString> getLabels() const
|
||||
{
|
||||
@@ -78,7 +79,7 @@ struct TraceDrawingProperties {
|
||||
result[i] = QString("Bank ") + QString::number(i);
|
||||
}
|
||||
|
||||
result[yValCommandBus] = "Cmd Bus";
|
||||
result[yValCommandBus] = "Command Bus";
|
||||
result[yValResponse] = "RESP";
|
||||
result[yValRequest] = "REQ";
|
||||
result[yValDataBus] = "Data Bus";
|
||||
|
||||
@@ -206,6 +206,7 @@ void TracePlot::connectNavigatorQ_SIGNALS()
|
||||
void TracePlot::setUpDrawingProperties()
|
||||
{
|
||||
drawingProperties.numberOfRanks = navigator->GeneralTraceInfo().numberOfRanks;
|
||||
drawingProperties.numberOfBankgroups = navigator->GeneralTraceInfo().numberOfBankgroups;
|
||||
drawingProperties.numberOfBanks = navigator->GeneralTraceInfo().numberOfBanks;
|
||||
drawingProperties.banksPerRank = drawingProperties.numberOfBanks / drawingProperties.numberOfRanks;
|
||||
drawingProperties.yValResponse = drawingProperties.numberOfBanks;
|
||||
|
||||
@@ -87,6 +87,7 @@ void TraceScroller::setUpTracePlotItem()
|
||||
void TraceScroller::setUpDrawingProperties()
|
||||
{
|
||||
drawingProperties.numberOfRanks = navigator->GeneralTraceInfo().numberOfRanks;
|
||||
drawingProperties.numberOfBankgroups = navigator->GeneralTraceInfo().numberOfBankgroups;
|
||||
drawingProperties.numberOfBanks = navigator->GeneralTraceInfo().numberOfBanks;
|
||||
drawingProperties.banksPerRank = drawingProperties.numberOfBanks / drawingProperties.numberOfRanks;
|
||||
drawingProperties.yValResponse = drawingProperties.numberOfBanks;
|
||||
|
||||
Reference in New Issue
Block a user