diff --git a/dram/resources/configs/memconfigs/_old/fr_fcfs_bankwise.xml b/dram/resources/configs/memconfigs/_old/fr_fcfs_bankwise.xml
new file mode 100644
index 00000000..1c2d4e9d
--- /dev/null
+++ b/dram/resources/configs/memconfigs/_old/fr_fcfs_bankwise.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dram/resources/configs/memconfigs/_old/fr_fcfs_unaware.xml b/dram/resources/configs/memconfigs/_old/fr_fcfs_unaware.xml
new file mode 100644
index 00000000..167af96e
--- /dev/null
+++ b/dram/resources/configs/memconfigs/_old/fr_fcfs_unaware.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dram/resources/configs/memconfigs/_old/grouper.xml b/dram/resources/configs/memconfigs/_old/grouper.xml
new file mode 100644
index 00000000..73116e13
--- /dev/null
+++ b/dram/resources/configs/memconfigs/_old/grouper.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dram/resources/configs/memconfigs/_old/par_bs.xml b/dram/resources/configs/memconfigs/_old/par_bs.xml
new file mode 100644
index 00000000..d2f77288
--- /dev/null
+++ b/dram/resources/configs/memconfigs/_old/par_bs.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dram/resources/configs/memconfigs/_old/par_bs_unaware.xml b/dram/resources/configs/memconfigs/_old/par_bs_unaware.xml
new file mode 100644
index 00000000..aed501d7
--- /dev/null
+++ b/dram/resources/configs/memconfigs/_old/par_bs_unaware.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dram/resources/configs/simconfigs/simple.xml b/dram/resources/configs/simconfigs/simple.xml
new file mode 100644
index 00000000..2afec97e
--- /dev/null
+++ b/dram/resources/configs/simconfigs/simple.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/dram/resources/simulations/sim-batch.xml b/dram/resources/simulations/sim-batch.xml
index 3ce68d4f..4d4d7562 100644
--- a/dram/resources/simulations/sim-batch.xml
+++ b/dram/resources/simulations/sim-batch.xml
@@ -3,13 +3,13 @@
-
+
-
+
-
+
@@ -17,7 +17,7 @@
- medium.stl
+ small.stl
diff --git a/dram/src/common/Utils.cpp b/dram/src/common/Utils.cpp
index 96bd6d63..82a96635 100644
--- a/dram/src/common/Utils.cpp
+++ b/dram/src/common/Utils.cpp
@@ -129,14 +129,40 @@ string queryStringParameter(XMLElement* node, string name)
return 0;
}
+string errorToString(XMLError error)
+{
+ switch(error){
+ case XML_NO_ERROR: return "no error"; case XML_NO_ATTRIBUTE: return "NO_ATTRIBUTE";
+ case XML_WRONG_ATTRIBUTE_TYPE: return "WRONG_ATTRIBUTE_TYPE";
+ case XML_ERROR_FILE_NOT_FOUND: return "FILE_NOT_FOUND";
+ case XML_ERROR_FILE_COULD_NOT_BE_OPENED: return "FILE_COULD_NOT_BE_OPENED";
+ case XML_ERROR_FILE_READ_ERROR: return "FILE_READ_ERROR";
+ case XML_ERROR_ELEMENT_MISMATCH: return "ERROR_ELEMENT_MISMATCH";
+ case XML_ERROR_PARSING_ELEMENT: return "ERROR_PARSING_ELEMENT";
+ case XML_ERROR_PARSING_ATTRIBUTE: return "ERROR_PARSING_ATTRIBUTE";
+ case XML_ERROR_IDENTIFYING_TAG: return "ERROR_IDENTIFYING_TAG";
+ case XML_ERROR_PARSING_TEXT: return "ERROR_PARSING_TEXT";
+ case XML_ERROR_PARSING_CDATA: return "ERROR_PARSING_CDATA";
+ case XML_ERROR_PARSING_COMMENT: return "ERROR_PARSING_COMMENT";
+ case XML_ERROR_PARSING_DECLARATION: return "ERROR_PARSING_DECLARATION";
+ case XML_ERROR_PARSING_UNKNOWN: return "ERROR_PARSING_UNKNOWN";
+ case XML_ERROR_EMPTY_DOCUMENT: return "ERROR_EMPTY_DOCUMENT";
+ case XML_ERROR_MISMATCHED_ELEMENT: return "ERROR_MISMATCHED_ELEMENT";
+ case XML_ERROR_PARSING: return "ERROR_PARSING";
+ case XML_CAN_NOT_CONVERT_TEXT: return "CAN_NOT_CONVERT_TEXT";
+ case XML_NO_TEXT_NODE: return "NO_TEXT_NODE";
+ default: "";
+ }
+}
+
void loadXML(string uri, XMLDocument& doc)
{
XMLError error = doc.LoadFile(uri.c_str());
if (error)
{
- //TODO specify error
- reportFatal("Configuration", "Error loading xml from: " + uri);
+ reportFatal("Configuration", "Error loading xml from: " + uri + " "
+ + errorToString(error));
}
}
diff --git a/dram/src/controller/core/configuration/ConfigurationLoader.cpp b/dram/src/controller/core/configuration/ConfigurationLoader.cpp
index 433d8cac..d8bf7caa 100644
--- a/dram/src/controller/core/configuration/ConfigurationLoader.cpp
+++ b/dram/src/controller/core/configuration/ConfigurationLoader.cpp
@@ -51,7 +51,6 @@ void ConfigurationLoader::loadSimConfig(Configuration& config, XMLElement* simco
{
XMLDocument doc;
string src(simconfig->Attribute("src"));
- std::cout<<"inner first"<
+#include "../../../common/third_party/tinyxml2.h"
+#include "../../../common/Utils.h"
+#include "Configuration.h"
+
+namespace core {
+
+class MemSpecLoader
+{
+public:
+ //void loadConfiguration(Configuration& config, std::string memspecUri, std::string memconfigUri);
+ static void loadMemConfig(std::string memconfigUri);
+ static void loadMemConfig(XMLElement* memconfig);
+private:
+ //void loadMemConfig(Configuration& config, tinyxml2::XMLElement* memspec);
+ //void loadMemSpec(Configuration& config, tinyxml2::XMLElement* memspec);
+ //void loadDDR4(Configuration& config, tinyxml2::XMLElement* memspec);
+ //void loadWideIO(Configuration& config, tinyxml2::XMLElement* memspec);
+};
+
+} /* namespace core */
+
+#endif /* MEMSPECLOADER_H_ */
diff --git a/dram/src/controller/core/scheduling/checker/PrechargeChecker.cpp b/dram/src/controller/core/scheduling/checker/PrechargeChecker.cpp
index 58ed2ffb..8df83b68 100644
--- a/dram/src/controller/core/scheduling/checker/PrechargeChecker.cpp
+++ b/dram/src/controller/core/scheduling/checker/PrechargeChecker.cpp
@@ -25,7 +25,17 @@ void PrechargeChecker::delayToSatisfyConstraints(ScheduledCommand& command) cons
}
else if (lastCommand.getCommand() == Command::Write)
{
- //command.delayToMeetConstraint(lastCommand.getStart(), config.memSpec.tWL + getWriteAccessTime() + config.memSpec.tWR);
+
+ std::cout<<"\nPrechargecheck----- "<PowerAnalysys
+//configuration->ModelStorage
+//configuration->ModelErrotInjection
#ifdef POWER
#define IFPOW(x) x
diff --git a/dram/src/simulation/SimulationManager.cpp b/dram/src/simulation/SimulationManager.cpp
index 7c161b5a..33d63c44 100644
--- a/dram/src/simulation/SimulationManager.cpp
+++ b/dram/src/simulation/SimulationManager.cpp
@@ -13,8 +13,7 @@ using namespace std;
using namespace tinyxml2;
-SimulationManager::SimulationManager(string resources) :
- silent(false), resources(resources)
+SimulationManager::SimulationManager(string resources) : resources(resources)
{
}
diff --git a/dram/src/simulation/SimulationManager.h b/dram/src/simulation/SimulationManager.h
index 432d8c1c..4c832b93 100644
--- a/dram/src/simulation/SimulationManager.h
+++ b/dram/src/simulation/SimulationManager.h
@@ -16,8 +16,6 @@
struct SimulationBatch
{
- //std::string simulationName;
-
std::vector dramSetups;
std::map> traceSetups;
void print();
@@ -34,7 +32,6 @@ public:
void runSimulations();
void startTraceAnalyzer();
- bool silent;
private:
std::string resources;
std::string exportPath;
@@ -47,7 +44,6 @@ private:
void runSimulation(std::string traceName, DramSetup dramSetup, std::vector traceSetup);
void parseSimulationBatch(tinyxml2::XMLElement* simulation);
void addTraceSetup(SimulationBatch& batch, tinyxml2::XMLElement* element);
- void checkPaths();
void report(std::string message);
};