Only use DRAMSysRecorable when recording is enabled
This commit is contained in:
@@ -74,7 +74,15 @@ int sc_main(int argc, char **argv)
|
|||||||
if (!configuration.tracesetup.has_value())
|
if (!configuration.tracesetup.has_value())
|
||||||
SC_REPORT_FATAL("Simulator", "No traffic initiators specified");
|
SC_REPORT_FATAL("Simulator", "No traffic initiators specified");
|
||||||
|
|
||||||
DRAMSys::DRAMSysRecordable dramSys("DRAMSys", configuration);
|
std::unique_ptr<DRAMSys::DRAMSys> dramSys;
|
||||||
|
if (configuration.simconfig.DatabaseRecording)
|
||||||
|
{
|
||||||
|
dramSys = std::make_unique<DRAMSys::DRAMSysRecordable>("DRAMSys", configuration);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dramSys = std::make_unique<DRAMSys::DRAMSys>("DRAMSys", configuration);
|
||||||
|
}
|
||||||
|
|
||||||
MemoryManager memoryManager(false);
|
MemoryManager memoryManager(false);
|
||||||
|
|
||||||
@@ -99,8 +107,8 @@ int sc_main(int argc, char **argv)
|
|||||||
|
|
||||||
for (auto const &initiator_config : configuration.tracesetup.value())
|
for (auto const &initiator_config : configuration.tracesetup.value())
|
||||||
{
|
{
|
||||||
uint64_t memorySize = dramSys.getConfig().memSpec->getSimMemSizeInBytes();
|
uint64_t memorySize = dramSys->getConfig().memSpec->getSimMemSizeInBytes();
|
||||||
unsigned int dataLength = dramSys.getConfig().memSpec->defaultBytesPerBurst;
|
unsigned int dataLength = dramSys->getConfig().memSpec->defaultBytesPerBurst;
|
||||||
|
|
||||||
auto initiator = std::visit(
|
auto initiator = std::visit(
|
||||||
[=, &memoryManager](auto &&config) -> std::unique_ptr<Initiator>
|
[=, &memoryManager](auto &&config) -> std::unique_ptr<Initiator>
|
||||||
@@ -163,7 +171,7 @@ int sc_main(int argc, char **argv)
|
|||||||
|
|
||||||
totalTransactions += initiator->totalRequests();
|
totalTransactions += initiator->totalRequests();
|
||||||
|
|
||||||
initiator->bind(dramSys.tSocket);
|
initiator->bind(dramSys->tSocket);
|
||||||
initiators.push_back(std::move(initiator));
|
initiators.push_back(std::move(initiator));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user