summaryrefslogtreecommitdiff
path: root/src/sim/sub_system.cc
diff options
context:
space:
mode:
authorDavid Guillen Fandos <david.guillen@arm.com>2015-05-12 10:26:47 +0100
committerDavid Guillen Fandos <david.guillen@arm.com>2015-05-12 10:26:47 +0100
commit75c82f1fe3e654ca7d472d8f824424ff450c01d1 (patch)
treeb07198404e3647302cc66e800fb7bf1fcdad01fa /src/sim/sub_system.cc
parent85dadcd38133252652686b92c52cc6a38c90331c (diff)
downloadgem5-75c82f1fe3e654ca7d472d8f824424ff450c01d1.tar.xz
sim: Adding thermal model support
This patch adds basic thermal support to gem5. It models energy dissipation through a circuital equivalent, which allows us to use RC networks. This lays down the basic infrastructure to do so, but it does not "work" due to the lack of power models. For now some hardcoded number is used as a PoC. The solver is embedded in the patch.
Diffstat (limited to 'src/sim/sub_system.cc')
-rw-r--r--src/sim/sub_system.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/sim/sub_system.cc b/src/sim/sub_system.cc
index e6e119b35..771590cf7 100644
--- a/src/sim/sub_system.cc
+++ b/src/sim/sub_system.cc
@@ -39,6 +39,15 @@
#include "params/SubSystem.hh"
#include "sim/sub_system.hh"
+#include "sim/power/thermal_domain.hh"
+
+SubSystem::SubSystem(const Params *p)
+ : SimObject(p)
+{
+ // Link thermalDomain <-> SubSystem
+ if (p->thermal_domain)
+ p->thermal_domain->setSubSystem(this);
+}
SubSystem *
SubSystemParams::create()