From 693138c756c0d22f53e9043666b5056f93f85c82 Mon Sep 17 00:00:00 2001 From: "Felipe S. Prado" Date: Mon, 24 Oct 2016 15:02:57 +0200 Subject: [PATCH 1/6] Small Changes --- .../core/refresh/RefreshManagerBankwise.cpp | 4 ++-- .../checker/PrechargeAllChecker.cpp | 2 +- DRAMSys/tests/simple/expected.txt | 24 +++++++++---------- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/DRAMSys/simulator/src/controller/core/refresh/RefreshManagerBankwise.cpp b/DRAMSys/simulator/src/controller/core/refresh/RefreshManagerBankwise.cpp index 456d4530..3aac9feb 100644 --- a/DRAMSys/simulator/src/controller/core/refresh/RefreshManagerBankwise.cpp +++ b/DRAMSys/simulator/src/controller/core/refresh/RefreshManagerBankwise.cpp @@ -89,10 +89,10 @@ void RefreshManagerBankwise::scheduleRefresh(tlm::tlm_generic_payload& payload, ScheduledCommand refresh(Command::AutoRefresh, time, getExecutionTime(Command::AutoRefresh, refreshPayload), extension); controllerCore.getCommandChecker(Command::AutoRefresh).delayToSatisfyConstraints(refresh); controllerCore.state->change(refresh); + extension.incrementRow(); controllerCore.controller.send(refresh, refreshPayload); - extension.incrementRow(); - planNextRefresh(extension.getBank()); + planNextRefresh(extension.getBank()); } void RefreshManagerBankwise::planNextRefresh(Bank bank) diff --git a/DRAMSys/simulator/src/controller/core/scheduling/checker/PrechargeAllChecker.cpp b/DRAMSys/simulator/src/controller/core/scheduling/checker/PrechargeAllChecker.cpp index 3dd96e35..aaf0f661 100644 --- a/DRAMSys/simulator/src/controller/core/scheduling/checker/PrechargeAllChecker.cpp +++ b/DRAMSys/simulator/src/controller/core/scheduling/checker/PrechargeAllChecker.cpp @@ -83,7 +83,7 @@ void PrechargeAllChecker::delayToSatisfyConstraints(ScheduledCommand& command) c } else if (lastCommand.getCommand() == Command::SREFX) { - command.establishMinDistanceFromStart(lastCommand.getEnd(), config.memSpec.tXSR); + command.establishMinDistanceFromStart(lastCommand.getStart(), config.memSpec.tXSR); } else reportFatal("Precharge All Checker", diff --git a/DRAMSys/tests/simple/expected.txt b/DRAMSys/tests/simple/expected.txt index 1f3e410b..dc514fec 100644 --- a/DRAMSys/tests/simple/expected.txt +++ b/DRAMSys/tests/simple/expected.txt @@ -2,24 +2,24 @@ Info: /OSCI/SystemC: Simulation stopped by user. sim.dram0 Total Energy: 4300303.75 pJ sim.dram0 Average Power: 12.60 mW sim.dram0 Total Time: 340669248 ps -sim.dram0 AVG BW: 1.00 GiB/s (4.81 %) -sim.dram0 AVG BW/IDLE: 10.64 GiB/s (51.27 %) -sim.dram0 MAX BW: 20.75 GiB/s +sim.dram0 AVG BW: 1.00 Gibit/s (4.81 %) +sim.dram0 AVG BW/IDLE: 10.64 Gibit/s (51.27 %) +sim.dram0 MAX BW: 20.75 Gibit/s sim.dram1 Total Energy: 2157481.55 pJ sim.dram1 Average Power: 6.32 mW sim.dram1 Total Time: 0 s -sim.dram1 AVG BW: -nan GiB/s (-nan %) -sim.dram1 AVG BW/IDLE: -nan GiB/s (-nan %) -sim.dram1 MAX BW: 20.75 GiB/s +sim.dram1 AVG BW: -nan Gibit/s (-nan %) +sim.dram1 AVG BW/IDLE: -nan Gibit/s (-nan %) +sim.dram1 MAX BW: 20.75 Gibit/s sim.dram2 Total Energy: 4202780.15 pJ sim.dram2 Average Power: 12.31 mW sim.dram2 Total Time: 340115040 ps -sim.dram2 AVG BW: 0.75 GiB/s (3.63 %) -sim.dram2 AVG BW/IDLE: 15.65 GiB/s (75.44 %) -sim.dram2 MAX BW: 20.75 GiB/s +sim.dram2 AVG BW: 0.75 Gibit/s (3.63 %) +sim.dram2 AVG BW/IDLE: 15.65 Gibit/s (75.44 %) +sim.dram2 MAX BW: 20.75 Gibit/s sim.dram3 Total Energy: 2293679.84 pJ sim.dram3 Average Power: 6.72 mW sim.dram3 Total Time: 312862464 ps -sim.dram3 AVG BW: 0.03 GiB/s (0.14 %) -sim.dram3 AVG BW/IDLE: 9.21 GiB/s (44.40 %) -sim.dram3 MAX BW: 20.75 GiB/s +sim.dram3 AVG BW: 0.03 Gibit/s (0.14 %) +sim.dram3 AVG BW/IDLE: 9.21 Gibit/s (44.40 %) +sim.dram3 MAX BW: 20.75 Gibit/s From 139bc9ae9e0b4d726997b3b6fad924f5917e75b5 Mon Sep 17 00:00:00 2001 From: "Felipe S. Prado" Date: Mon, 24 Oct 2016 16:01:28 +0200 Subject: [PATCH 2/6] Small Fix --- .../simulator/src/controller/core/ControllerCore.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/DRAMSys/simulator/src/controller/core/ControllerCore.cpp b/DRAMSys/simulator/src/controller/core/ControllerCore.cpp index da9df026..cb40e4bb 100644 --- a/DRAMSys/simulator/src/controller/core/ControllerCore.cpp +++ b/DRAMSys/simulator/src/controller/core/ControllerCore.cpp @@ -134,17 +134,21 @@ void ControllerCore::triggerRefresh(tlm::tlm_generic_payload& payload) state->cleanUp(time); - if (!refreshManager->isInvalidated(payload, time) && !powerDownManager->isInSelfRefresh(bank)) { + if (!refreshManager->isInvalidated(payload, time) && !powerDownManager->isInSelfRefresh(bank)) + { printDebugMessage("Triggering refresh on bank " + to_string(bank.ID())); powerDownManager->wakeUpForRefresh(bank, time); //expects PDNA and PDNP to exit without delay bool pdnpToSrefTransition = false; - if (config.PowerDownMode == EPowerDownMode::Staggered) { + if (config.PowerDownMode == EPowerDownMode::Staggered) + { pdnpToSrefTransition = state->getLastCommand(Command::PDNPX,bank).getStart() >= time; } - if (pdnpToSrefTransition) { + if (pdnpToSrefTransition) + { powerDownManager->sleep(bank,time); } - else { + else + { refreshManager->scheduleRefresh(payload, time); } } From 3815931f3ee6220d9f513e64bbb86d877445cf56 Mon Sep 17 00:00:00 2001 From: "Felipe S. Prado" Date: Mon, 24 Oct 2016 20:11:55 +0200 Subject: [PATCH 3/6] Refresh Checker --- .../src/controller/core/scheduling/checker/RefreshChecker.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DRAMSys/simulator/src/controller/core/scheduling/checker/RefreshChecker.cpp b/DRAMSys/simulator/src/controller/core/scheduling/checker/RefreshChecker.cpp index 271ce6db..111e3d31 100644 --- a/DRAMSys/simulator/src/controller/core/scheduling/checker/RefreshChecker.cpp +++ b/DRAMSys/simulator/src/controller/core/scheduling/checker/RefreshChecker.cpp @@ -104,7 +104,7 @@ void RefreshChecker::delayToSatisfyConstraints(ScheduledCommand& command) const } else if (lastCommand.getCommand() == Command::SREFX) { - command.establishMinDistanceFromStart(lastCommand.getEnd(), config.memSpec.tXSR); + command.establishMinDistanceFromStart(lastCommand.getStart(), config.memSpec.tXSR); } else if (lastCommand.getCommand() == Command::AutoRefresh) { From fe1eca682fada0bf5c2e5dcca02e10b4df147e59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89der=20F=2E=20Zulian?= Date: Tue, 25 Oct 2016 00:06:18 +0200 Subject: [PATCH 4/6] DRAMPower submodule updated with specific fix for mac A header file was missing. --- DRAMSys/simulator/src/common/third_party/DRAMPower | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DRAMSys/simulator/src/common/third_party/DRAMPower b/DRAMSys/simulator/src/common/third_party/DRAMPower index 5878beed..abcdd018 160000 --- a/DRAMSys/simulator/src/common/third_party/DRAMPower +++ b/DRAMSys/simulator/src/common/third_party/DRAMPower @@ -1 +1 @@ -Subproject commit 5878beedbc9123f3cc41481a4bb7431c7bca728b +Subproject commit abcdd0184e846fcf033ca82af9b559341d840d97 From 07c6918beca1e20eac9cb425e5004e23e46431f8 Mon Sep 17 00:00:00 2001 From: fzeder Date: Tue, 25 Oct 2016 00:08:03 +0200 Subject: [PATCH 5/6] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 43602566..4f2d9353 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ $ git push origin HEAD You may need to update your submodules. ```bash -git submodule update --init --recursive +$ git submodule update --init --recursive ``` ### Dependencies From d51ed243ee203e4543352277922aa5dd085c4bd8 Mon Sep 17 00:00:00 2001 From: Matthias Jung Date: Wed, 26 Oct 2016 11:19:55 +0200 Subject: [PATCH 6/6] updated MSC from Matthias' Diss. --- DRAMSys/docs/images/PayloadMemoryManager.svg | 5822 +++++++++++++++--- 1 file changed, 4840 insertions(+), 982 deletions(-) diff --git a/DRAMSys/docs/images/PayloadMemoryManager.svg b/DRAMSys/docs/images/PayloadMemoryManager.svg index 56a0547f..fc237c0c 100644 --- a/DRAMSys/docs/images/PayloadMemoryManager.svg +++ b/DRAMSys/docs/images/PayloadMemoryManager.svg @@ -1,1008 +1,4866 @@ - - + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + TracePlayer -BEGIN - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SystemC + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SystemC + + + + + + + + + + + + + + + + + + + + + + + + + + + SystemC + + + + + + + + + interrupt + jjjjjjjjjjjjjj + + + + + + + + + + + + + + + + + + + + + + + SystemC + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SystemC + + + + + + + + + + + + + + + +