34#ifndef SIMULATION_CONTROLLER_HH
35#define SIMULATION_CONTROLLER_HH
53 bool fuResourceConflictDetection =
true,
54 bool detailedSimulation =
false);
58 virtual void step(
double count = 1);
60 virtual void next(
int count = 1);
74 const std::string& rfName,
75 int registerIndex = -1);
78 const std::string& iuName,
int index = -1);
81 const std::string& fuName,
82 const std::string& portName);
UInt32 InstructionAddress
TTAMachine::Machine * machine
the architecture definition of the estimated processor
std::vector< FUConflictDetectorIndex > MultiCoreFUConflictDetectorIndex
find Finds info of the inner loops in the program
std::vector< FUResourceConflictDetector * > conflictDetectorVector_
Resource conflict detectors in a more quickly traversed container.
void findExitPoints(const TTAProgram::Program &program, const TTAMachine::Machine &machine)
MachineStateContainer machineStates_
The machine state models for the simulated cores.
InstructionMemory & selectedInstructionMemory()
virtual void runUntil(UIntWord address)
SimulationController(const SimulationController &)
Copying not allowed.
virtual SimValue immediateUnitRegisterValue(const std::string &iuName, int index=-1)
std::vector< InstructionAddress > tmpExecutedInstructions_
Temporary place for lastExecuted Instruction.
virtual ~SimulationController()
virtual void next(int count=1)
virtual void step(double count=1)
virtual const InstructionMemory & instructionMemory(int core=-1) const
MachineState & selectedMachineState()
virtual std::string registerFileValue(const std::string &rfName, int registerIndex=-1)
SimulationController & operator=(const SimulationController &)
Assignment not allowed.
virtual InstructionAddress programCounter() const
std::vector< MachineState * > MachineStateContainer
std::vector< InstructionMemory * > instructionMemories_
The instruction memory models of cores.
virtual bool simulateCycle()
virtual MachineState & machineState(int core=-1)
void buildFUResourceConflictDetectors(const TTAMachine::Machine &machine)
MultiCoreFUConflictDetectorIndex fuConflictDetectors_
The FU resource conflict detectors used to detect conflicts during simulation.
virtual SimValue FUPortValue(const std::string &fuName, const std::string &portName)
virtual SimulatorFrontend & frontend()