Go to the documentation of this file.
34 #ifndef TTA_FU_COST_ESTIMATION_PLUGIN_HH
35 #define TTA_FU_COST_ESTIMATION_PLUGIN_HH
107 #define EXPORT_FU_COST_ESTIMATOR_PLUGIN(PLUGIN_NAME__) \
109 FUCostEstimationPlugin* create_estimator_plugin_##PLUGIN_NAME__(\
111 PLUGIN_NAME__* instance = new PLUGIN_NAME__(#PLUGIN_NAME__);\
114 void delete_estimator_plugin_##PLUGIN_NAME__(\
115 FUCostEstimationPlugin* target) {\
129 #define DESCRIPTION(TEXT__) \
131 virtual std::string description() const { return TEXT__; }\
132 int* XXXXXd_escrip__tion__
virtual std::string name() const
IDF::MachineImplementation * implementation
the implementation definition of the estimated processor
virtual bool estimatePortReadDelay(const TTAMachine::FUPort &port, const IDF::FUImplementationLocation &implementation, DelayInNanoSeconds &outputDelay, HDB::HDBManager &hdb)
double AreaInGates
type for area values in equivalent gates
double EnergyInMilliJoules
type for consumed energy in milli joules
FUCostEstimationPlugin(const std::string &name)
virtual ~FUCostEstimationPlugin()
virtual bool estimateEnergy(const TTAMachine::FunctionUnit &architecture, const IDF::FUImplementationLocation &implementation, const TTAProgram::Program &program, const ExecutionTrace &traceDB, EnergyInMilliJoules &energy, HDB::HDBManager &hdb)
double DelayInNanoSeconds
type for propagation delays in nano seconds
virtual bool estimateArea(const TTAMachine::FunctionUnit &architecture, const IDF::FUImplementationLocation &implementation, AreaInGates &area, HDB::HDBManager &hdb)
virtual bool estimatePortWriteDelay(const TTAMachine::FUPort &port, const IDF::FUImplementationLocation &implementation, DelayInNanoSeconds &inputDelay, HDB::HDBManager &hdb)
find Finds info of the inner loops in the program
virtual bool estimateMaximumComputationDelay(const TTAMachine::FunctionUnit &architecture, const IDF::FUImplementationLocation &implementation, DelayInNanoSeconds &computationDelay, HDB::HDBManager &hdb)