diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/sim/clock_domain.cc | 14 | ||||
-rw-r--r-- | src/sim/clock_domain.hh | 9 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/sim/clock_domain.cc b/src/sim/clock_domain.cc index ff96f2808..0d1836e83 100644 --- a/src/sim/clock_domain.cc +++ b/src/sim/clock_domain.cc @@ -49,6 +49,20 @@ #include "sim/voltage_domain.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 ClockDomain::voltage() const { diff --git a/src/sim/clock_domain.hh b/src/sim/clock_domain.hh index e6b7273c1..b597b6611 100644 --- a/src/sim/clock_domain.hh +++ b/src/sim/clock_domain.hh @@ -72,6 +72,13 @@ class ClockedObject; class ClockDomain : public SimObject { + private: + + /** + * Stat to report clock period of clock domain + */ + Stats::Value currentClock; + protected: /** @@ -105,6 +112,8 @@ class ClockDomain : public SimObject _clockPeriod(0), _voltageDomain(voltage_domain) {} + void regStats(); + /** * Get the clock period. * |