class BaseCPU : public SimObject
{
+ protected:
+ // CPU's clock period in terms of the number of ticks of curTime.
+ Tick clock;
+
+ public:
+ inline Tick frequency() const { return Clock::Frequency / clock; }
+ inline Tick cycles(int numCycles) const { return clock * numCycles; }
+ inline Tick curCycle() const { return curTick / clock; }
+
#ifdef FULL_SYSTEM
protected:
- Tick frequency;
uint64_t interrupts[NumInterruptLevels];
uint64_t intstatus;
bool check_interrupts() const { return intstatus != 0; }
uint64_t intr_status() const { return intstatus; }
-
- Tick getFreq() const { return frequency; }
#endif
protected:
Counter max_insts_all_threads;
Counter max_loads_any_thread;
Counter max_loads_all_threads;
- Tick freq;
+ Tick clock;
bool functionTrace;
Tick functionTraceStart;
#ifdef FULL_SYSTEM