33#ifndef TTA_RF_ACCESS_TRACKER_HH
34#define TTA_RF_ACCESS_TRACKER_HH
39#include "boost/tuple/tuple.hpp"
60 typedef std::map<ConcurrentRFAccess, ClockCycleCount>
71 const std::string& rfName,
72 std::size_t concurrentWrites,
73 std::size_t concurrentReads)
const;
81 boost::tuple<std::size_t , std::size_t > >
CycleCount ClockCycleCount
Alias for ClockCycleCount.
virtual void handleEvent()
boost::tuple< std::string, std::size_t, std::size_t > ConcurrentRFAccess
type to be used as a key for storing concurrent access info
hash_map< const char *, boost::tuple< std::size_t, std::size_t > > RFAccessIndex
Index for RF accesses in an instruction.
RFAccessIndex accessesInInstruction_
container used in collecting register accesses in an instruction
SimulatorFrontend & frontend_
the simulator frontend used to access simulation data
ClockCycleCount concurrentRegisterFileAccessCount(const std::string &rfName, std::size_t concurrentWrites, std::size_t concurrentReads) const
const ConcurrentRFAccessIndex & accessDataBase() const
ConcurrentRFAccessIndex totalAccesses_
total (conditional + unconditional) register file accesses are counted in this container
ConcurrentRFAccessIndex conditionalAccesses_
conditional register file accesses are counted in this container
std::map< ConcurrentRFAccess, ClockCycleCount > ConcurrentRFAccessIndex
concurrent accesses and their counts
const InstructionMemory & instructionExecutions_
used to access instruction execution data
virtual ~RFAccessTracker()