summaryrefslogtreecommitdiff
path: root/src/sim/system.hh
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/system.hh
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/system.hh')
-rw-r--r--src/sim/system.hh7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/sim/system.hh b/src/sim/system.hh
index c67f70219..7e167c75f 100644
--- a/src/sim/system.hh
+++ b/src/sim/system.hh
@@ -293,6 +293,11 @@ class System : public MemObject
*/
Addr getPageShift() const { return TheISA::PageShift; }
+ /**
+ * The thermal model used for this system (if any).
+ */
+ ThermalModel * getThermalModel() const { return thermalModel; }
+
protected:
PhysicalMemory physmem;
@@ -313,6 +318,8 @@ class System : public MemObject
*/
std::vector<std::string> masterIds;
+ ThermalModel * thermalModel;
+
public:
/** Request an id used to create a request object in the system. All objects