sim: Expose the current clock period as a stat

This patch adds observability to the clock period of the clock domains
by including it as a stat.

As a result of adding this, the regressions will be updated in a
separate patch.
This commit is contained in:
Andreas Hansson 2014-01-24 15:29:30 -06:00
parent ca89eba79e
commit 1d85e914a6
2 changed files with 23 additions and 0 deletions

View file

@ -49,6 +49,20 @@
#include "sim/voltage_domain.hh" #include "sim/voltage_domain.hh"
#include "sim/clocked_object.hh" #include "sim/clocked_object.hh"
void
ClockDomain::regStats()
{
using namespace Stats;
// Expose the current clock period as a stat for observability in
// the dumps
currentClock
.scalar(_clockPeriod)
.name(params()->name + ".clock")
.desc("Clock period in ticks")
;
}
double double
ClockDomain::voltage() const ClockDomain::voltage() const
{ {

View file

@ -72,6 +72,13 @@ class ClockedObject;
class ClockDomain : public SimObject class ClockDomain : public SimObject
{ {
private:
/**
* Stat to report clock period of clock domain
*/
Stats::Value currentClock;
protected: protected:
/** /**
@ -105,6 +112,8 @@ class ClockDomain : public SimObject
_clockPeriod(0), _clockPeriod(0),
_voltageDomain(voltage_domain) {} _voltageDomain(voltage_domain) {}
void regStats();
/** /**
* Get the clock period. * Get the clock period.
* *