diff --git a/DRAMSys/simulator/src/controller/core/configuration/ConfigurationLoader.cpp b/DRAMSys/simulator/src/controller/core/configuration/ConfigurationLoader.cpp index afa05291..c7653d30 100644 --- a/DRAMSys/simulator/src/controller/core/configuration/ConfigurationLoader.cpp +++ b/DRAMSys/simulator/src/controller/core/configuration/ConfigurationLoader.cpp @@ -153,8 +153,15 @@ void ConfigurationLoader::loadMCConfig(Configuration& config, XMLElement* mcconf config.mcconfigUri = src; loadXML(src, doc); loadMCConfig(config, doc.FirstChildElement("mcconfig")); + } else + loadConfig(config, mcconfig); + + // check compatible between Store Mode and PowerDown Mode + if (config.StoreMode == StorageMode::ErrorModel && config.PowerDownMode != EPowerDownMode::NoPowerDown) { + SC_REPORT_FATAL("ConfigurationLoader", "Error model does not work when power down modes are activated"); + throw; } - loadConfig(config, mcconfig); + } void ConfigurationLoader::loadDDR3(Configuration& config, XMLElement* memspec)