|
gem5
v21.0.1.0
|
#include <generic_timer.hh>
Classes | |
| struct | EventStream |
Public Member Functions | |
| CoreTimers (GenericTimer &_parent, ArmSystem &system, unsigned cpu, ArmInterruptPin *_irqPhysS, ArmInterruptPin *_irqPhysNS, ArmInterruptPin *_irqVirt, ArmInterruptPin *_irqHyp) | |
| void | physEventStreamCallback () |
| void | virtEventStreamCallback () |
| void | eventStreamCallback () const |
| void | schedNextEvent (EventStream &ev_stream, ArchTimer &timer) |
| void | notify (void) override |
| Called from the SystemCounter when a change in counting speed occurred Events should be rescheduled properly inside this member function. More... | |
| void | serialize (CheckpointOut &cp) const override |
| Serialize an object. More... | |
| void | unserialize (CheckpointIn &cp) override |
| Unserialize an object. More... | |
Public Member Functions inherited from Serializable | |
| Serializable () | |
| virtual | ~Serializable () |
| void | serializeSection (CheckpointOut &cp, const char *name) const |
| Serialize an object into a new section. More... | |
| void | serializeSection (CheckpointOut &cp, const std::string &name) const |
| void | unserializeSection (CheckpointIn &cp, const char *name) |
| Unserialize an a child object. More... | |
| void | unserializeSection (CheckpointIn &cp, const std::string &name) |
Public Attributes | |
| GenericTimer & | parent |
| Generic Timer parent reference. More... | |
| uint32_t | cntfrq |
| System counter frequency as visible from this core. More... | |
| ArmISA::CNTKCTL | cntkctl |
| Kernel control register. More... | |
| ArmISA::CNTHCTL | cnthctl |
| Hypervisor control register. More... | |
| ThreadContext * | threadContext |
| Thread (HW) context associated to this PE implementation. More... | |
| const ArmInterruptPin * | irqPhysS |
| const ArmInterruptPin * | irqPhysNS |
| const ArmInterruptPin * | irqVirt |
| const ArmInterruptPin * | irqHyp |
| ArchTimerKvm | physS |
| ArchTimerKvm | physNS |
| ArchTimerKvm | virt |
| ArchTimerKvm | hyp |
| EventStream | physEvStream |
| EventStream | virtEvStream |
Private Member Functions | |
| CoreTimers (const CoreTimers &c) | |
Additional Inherited Members | |
Static Public Member Functions inherited from Serializable | |
| static const std::string & | currentSection () |
| Gets the fully-qualified name of the active section. More... | |
| static void | serializeAll (const std::string &cpt_dir) |
| Serializes all the SimObjects. More... | |
| static void | unserializeGlobals (CheckpointIn &cp) |
Definition at line 301 of file generic_timer.hh.
| GenericTimer::CoreTimers::CoreTimers | ( | GenericTimer & | _parent, |
| ArmSystem & | system, | ||
| unsigned | cpu, | ||
| ArmInterruptPin * | _irqPhysS, | ||
| ArmInterruptPin * | _irqPhysNS, | ||
| ArmInterruptPin * | _irqVirt, | ||
| ArmInterruptPin * | _irqHyp | ||
| ) |
Definition at line 721 of file generic_timer.cc.
References csprintf(), SimObject::name(), parent, and physEventStreamCallback().
|
private |
| void GenericTimer::CoreTimers::eventStreamCallback | ( | ) | const |
Definition at line 772 of file generic_timer.cc.
References ArmISA::sendEvent().
|
overridevirtual |
Called from the SystemCounter when a change in counting speed occurred Events should be rescheduled properly inside this member function.
Implements SystemCounterListener.
Definition at line 787 of file generic_timer.cc.
| void GenericTimer::CoreTimers::physEventStreamCallback | ( | ) |
Definition at line 758 of file generic_timer.cc.
Referenced by CoreTimers().
| void GenericTimer::CoreTimers::schedNextEvent | ( | EventStream & | ev_stream, |
| ArchTimer & | timer | ||
| ) |
Definition at line 779 of file generic_timer.cc.
References GenericTimer::CoreTimers::EventStream::event, GenericTimer::CoreTimers::EventStream::eventTargetValue(), ArchTimer::value(), and ArchTimer::whenValue().
|
overridevirtual |
Serialize an object.
Output an object's state into the current checkpoint section.
| cp | Checkpoint state |
Implements Serializable.
Definition at line 794 of file generic_timer.cc.
References SERIALIZE_SCALAR.
|
overridevirtual |
Unserialize an object.
Read an object's state from the current checkpoint section.
| cp | Checkpoint state |
Implements Serializable.
Definition at line 825 of file generic_timer.cc.
References UNSERIALIZE_SCALAR.
| void GenericTimer::CoreTimers::virtEventStreamCallback | ( | ) |
Definition at line 765 of file generic_timer.cc.
| uint32_t GenericTimer::CoreTimers::cntfrq |
System counter frequency as visible from this core.
Definition at line 312 of file generic_timer.hh.
Referenced by GenericTimer::readMiscReg(), and GenericTimer::setMiscReg().
| ArmISA::CNTHCTL GenericTimer::CoreTimers::cnthctl |
Hypervisor control register.
Definition at line 318 of file generic_timer.hh.
Referenced by GenericTimer::readMiscReg(), and GenericTimer::setMiscReg().
| ArmISA::CNTKCTL GenericTimer::CoreTimers::cntkctl |
Kernel control register.
Definition at line 315 of file generic_timer.hh.
Referenced by GenericTimer::readMiscReg(), and GenericTimer::setMiscReg().
| ArchTimerKvm GenericTimer::CoreTimers::hyp |
Definition at line 331 of file generic_timer.hh.
Referenced by GenericTimer::readMiscReg(), and GenericTimer::setMiscReg().
| const ArmInterruptPin* GenericTimer::CoreTimers::irqHyp |
Definition at line 326 of file generic_timer.hh.
| const ArmInterruptPin* GenericTimer::CoreTimers::irqPhysNS |
Definition at line 324 of file generic_timer.hh.
| const ArmInterruptPin* GenericTimer::CoreTimers::irqPhysS |
Definition at line 323 of file generic_timer.hh.
| const ArmInterruptPin* GenericTimer::CoreTimers::irqVirt |
Definition at line 325 of file generic_timer.hh.
| GenericTimer& GenericTimer::CoreTimers::parent |
Generic Timer parent reference.
Definition at line 309 of file generic_timer.hh.
Referenced by CoreTimers().
| EventStream GenericTimer::CoreTimers::physEvStream |
Definition at line 354 of file generic_timer.hh.
Referenced by GenericTimer::setMiscReg().
| ArchTimerKvm GenericTimer::CoreTimers::physNS |
Definition at line 329 of file generic_timer.hh.
Referenced by GenericTimer::readMiscReg(), and GenericTimer::setMiscReg().
| ArchTimerKvm GenericTimer::CoreTimers::physS |
Definition at line 328 of file generic_timer.hh.
Referenced by GenericTimer::readMiscReg(), and GenericTimer::setMiscReg().
| ThreadContext* GenericTimer::CoreTimers::threadContext |
Thread (HW) context associated to this PE implementation.
Definition at line 321 of file generic_timer.hh.
| ArchTimerKvm GenericTimer::CoreTimers::virt |
Definition at line 330 of file generic_timer.hh.
Referenced by GenericTimer::readMiscReg(), and GenericTimer::setMiscReg().
| EventStream GenericTimer::CoreTimers::virtEvStream |
Definition at line 355 of file generic_timer.hh.
Referenced by GenericTimer::setMiscReg().