gem5  v20.1.0.0
Public Member Functions | Public Attributes | Static Private Member Functions | List of all members
DRAMPower Class Reference

DRAMPower is a standalone tool which calculates the power consumed by a DRAM in the system. More...

#include <drampower.hh>

Public Member Functions

 DRAMPower (const DRAMInterfaceParams *p, bool include_io)
 

Public Attributes

libDRAMPower powerlib
 

Static Private Member Functions

static Data::MemArchitectureSpec getArchParams (const DRAMInterfaceParams *p)
 Transform the architechture parameters defined in DRAMInterfaceParams to the memSpec of DRAMPower. More...
 
static Data::MemTimingSpec getTimingParams (const DRAMInterfaceParams *p)
 Transforms the timing parameters defined in DRAMInterfaceParams to the memSpec of DRAMPower. More...
 
static Data::MemPowerSpec getPowerParams (const DRAMInterfaceParams *p)
 Transforms the power and current parameters defined in DRAMInterfaceParams to the memSpec of DRAMPower. More...
 
static uint8_t getDataRate (const DRAMInterfaceParams *p)
 Determine data rate, either one or two. More...
 
static bool hasTwoVDD (const DRAMInterfaceParams *p)
 Determine if DRAM has two voltage domains (or one) More...
 
static Data::MemorySpecification getMemSpec (const DRAMInterfaceParams *p)
 Return an instance of MemSpec based on the DRAMInterfaceParams. More...
 

Detailed Description

DRAMPower is a standalone tool which calculates the power consumed by a DRAM in the system.

This class wraps the DRAMPower library.

Definition at line 53 of file drampower.hh.

Constructor & Destructor Documentation

◆ DRAMPower()

DRAMPower::DRAMPower ( const DRAMInterfaceParams *  p,
bool  include_io 
)

Definition at line 43 of file drampower.cc.

Member Function Documentation

◆ getArchParams()

Data::MemArchitectureSpec DRAMPower::getArchParams ( const DRAMInterfaceParams *  p)
staticprivate

Transform the architechture parameters defined in DRAMInterfaceParams to the memSpec of DRAMPower.

Definition at line 49 of file drampower.cc.

References hasTwoVDD(), and MipsISA::p.

Referenced by getMemSpec().

◆ getDataRate()

uint8_t DRAMPower::getDataRate ( const DRAMInterfaceParams *  p)
staticprivate

Determine data rate, either one or two.

Definition at line 151 of file drampower.cc.

References divCeil(), fatal, and MipsISA::p.

◆ getMemSpec()

Data::MemorySpecification DRAMPower::getMemSpec ( const DRAMInterfaceParams *  p)
staticprivate

Return an instance of MemSpec based on the DRAMInterfaceParams.

Definition at line 135 of file drampower.cc.

References getArchParams(), getPowerParams(), getTimingParams(), and MipsISA::p.

◆ getPowerParams()

Data::MemPowerSpec DRAMPower::getPowerParams ( const DRAMInterfaceParams *  p)
staticprivate

Transforms the power and current parameters defined in DRAMInterfaceParams to the memSpec of DRAMPower.

Definition at line 103 of file drampower.cc.

References MipsISA::p.

Referenced by getMemSpec().

◆ getTimingParams()

Data::MemTimingSpec DRAMPower::getTimingParams ( const DRAMInterfaceParams *  p)
staticprivate

Transforms the timing parameters defined in DRAMInterfaceParams to the memSpec of DRAMPower.

Definition at line 71 of file drampower.cc.

References divCeil(), SimClock::Int::ns, and MipsISA::p.

Referenced by getMemSpec().

◆ hasTwoVDD()

bool DRAMPower::hasTwoVDD ( const DRAMInterfaceParams *  p)
staticprivate

Determine if DRAM has two voltage domains (or one)

Definition at line 145 of file drampower.cc.

References MipsISA::p.

Referenced by getArchParams().

Member Data Documentation

◆ powerlib

libDRAMPower DRAMPower::powerlib

Definition at line 95 of file drampower.hh.


The documentation for this class was generated from the following files:

Generated on Wed Sep 30 2020 14:02:23 for gem5 by doxygen 1.8.17