Go to the documentation of this file.
33 #ifndef TTA_UTILIZATION_STATS_HH
34 #define TTA_UTILIZATION_STATS_HH
57 typedef std::map<int, std::pair<ClockCycleCount, ClockCycleCount> >
61 typedef std::map<std::string, ComponentUtilizationIndex>
65 typedef std::map<std::string, RegisterUtilizationIndex>
79 const std::string& operationName)
const;
81 const std::string& fuName,
const std::string& operationName)
const;
83 const std::string& rfName,
84 int registerIndex)
const;
86 const std::string& rfName,
87 int registerIndex)
const;
89 const std::string& rfName,
90 int registerIndex)
const;
92 const std::string& fuName,
93 const std::string& fuPort)
const;
ClockCycleCount triggerCount(const std::string &fuName) const
ClockCycleCount guardRegisterReads(const std::string &rfName, int registerIndex) const
std::map< std::string, RegisterUtilizationIndex > RFRegisterUtilizationIndex
Index for connecting register files and register utilization indices in them.
ClockCycleCount socketWrites(const std::string &socketName) const
virtual void calculateForInstruction(const TTAProgram::Instruction &instructionData, const ExecutableInstruction &executionCounts)
ComponentUtilizationIndex fus_
Function unit utilizations, i.e., total operation triggerings.
FUOperationUtilizationIndex FUGuardAccesses() const
RFRegisterUtilizationIndex guardRfAccesses_
Guard register accesses for each register in a RF.
std::map< std::string, ComponentUtilizationIndex > FUOperationUtilizationIndex
Index for connecting function unit and operations implemented in them to utilization counts.
FUOperationUtilizationIndex fuOperations_
Index for operation utilizations for each function unit.
ClockCycleCount busWrites(const std::string &busName) const
ClockCycleCount operationExecutions(const std::string &operationName) const
virtual ~UtilizationStats()
std::map< int, std::pair< ClockCycleCount, ClockCycleCount > > RegisterUtilizationIndex
Index for connecting register indices to utilization counts. The first number in the pair is the coun...
ClockCycleCount registerWrites(const std::string &rfName, int registerIndex) const
ComponentUtilizationIndex sockets_
Socket write counts.
ComponentUtilizationIndex buses_
Bus write counts.
ComponentUtilizationIndex operations_
Operation utilizations (started operations).
CycleCount ClockCycleCount
Alias for ClockCycleCount.
ClockCycleCount registerReads(const std::string &rfName, int registerIndex) const
int highestRegister_
The highest register index used. This is an uglish way to fetch register access info for sequential s...
RFRegisterUtilizationIndex rfAccesses_
Register read and write data for each register in each register file.
std::map< std::string, ClockCycleCount > ComponentUtilizationIndex
Index for connecting component names to utilization counts.
int highestUsedRegisterIndex() const
FUOperationUtilizationIndex guardFUAccesses_
Guard FU port accesses.