Go to the documentation of this file.
28 #ifndef __ARCH_ARM_FASTMODEL_IRIS_CPU_HH__
29 #define __ARCH_ARM_FASTMODEL_IRIS_CPU_HH__
32 #include "iris/detail/IrisInterface.h"
33 #include "params/IrisBaseCPU.hh"
70 panic(
"%s not implemented.", __FUNCTION__);
76 panic(
"%s not implemented.", __FUNCTION__);
82 auto *tc = threadContexts.at(tid);
93 panic(
"%s not implemented.", __FUNCTION__);
121 CPU(
const IrisBaseCPUParams ¶ms,
122 iris::IrisConnectionInterface *iris_if) :
125 const std::string parent_path =
evs->
name();
126 System *sys = params.system;
129 for (
const std::string &sub_path: params.thread_paths) {
130 std::string path = parent_path +
"." + sub_path;
131 auto id = thread_id++;
132 auto *tc =
new TC(
this,
id, sys, params.mmu,
133 params.isa[
id], iris_if, path);
134 threadContexts.push_back(tc);
142 #endif // __ARCH_ARM_FASTMODEL_IRIS_CPU_HH__
Port & getInstPort() override
virtual void setClkPeriod(Tick clk_period)=0
virtual void setResetAddr(Addr addr, bool secure=false)
virtual void setResetAddr(int core, Addr addr, bool secure)=0
Iris::BaseCpuEvs * evs_base_cpu
CPU(const IrisBaseCPUParams ¶ms, iris::IrisConnectionInterface *iris_if)
virtual void setSysCounterFrq(uint64_t sys_counter_frq)=0
BaseCPU(const BaseCPUParams ¶ms, sc_core::sc_module *_evs)
void wakeup(ThreadID tid) override
@ Suspended
Temporarily inactive.
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
uint64_t Tick
Tick count type.
virtual void sendFunc(PacketPtr pkt)=0
Counter totalOps() const override
Abstract superclass for simulation objects.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
virtual void setCluster(SimObject *cluster)=0
Ports are used to interface objects to each other.
const char * name() const
double Counter
All counters are of 64-bit values.
std::ostream CheckpointOut
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
Counter totalInsts() const override
void serializeThread(CheckpointOut &cp, ThreadID tid) const override
int16_t ThreadID
Thread index/ID type.
#define panic(...)
This implements a cprintf based panic() function.
void clockPeriodUpdated() override
Port & getDataPort() override
Generated on Thu Jul 28 2022 13:32:22 for gem5 by doxygen 1.8.17