SrcClockDomain::PerfLevel PerfLevel
VoltageDomain * voltageDomain() const
Get the voltage domain.
void registerSrcClockDom(SrcClockDomain *src_clock_dom)
Register a SrcClockDomain with this voltage domain.
VoltageDomain(const Params &p)
VoltageDomainStats(VoltageDomain &vd)
gem5::VoltageDomain::VoltageDomainStats stats
void startup() override
Startup has all SrcClockDomains registered with this voltage domain, so try to make sure that all per...
SrcClockChildren srcClockChildren
double voltage(PerfLevel perf_level) const
Get the voltage at specified performance level.
void serialize(CheckpointOut &cp) const override
Serialize an object.
const Voltages voltageOpPoints
List of possible minimum voltage at each of the frequency operational points, should be in descending...
bool sanitiseVoltages()
Recomputes the highest (fastest, i.e., numerically lowest) requested performance level of all associa...
std::vector< SrcClockDomain * > SrcClockChildren
List of associated SrcClockDomains that are connected to this voltage domain.
The source clock domains provides the notion of a clock domain that is connected to a tunable clock s...
void unserialize(CheckpointIn &cp) override
Unserialize an object.
PerfLevel perfLevel() const
Get the voltage point of the domain.
statistics::Value voltage
Stat for reporting voltage of the domain.
A VoltageDomain is used to group clock domains that operate under the same voltage.
std::vector< double > Voltages
#define gem5_assert(cond,...)
The assert macro will function like a normal assert, but will use panic instead of straight abort().
VoltageDomainParams Params
uint32_t numVoltages() const