34#ifndef TTA_RF_COST_ESTIMATION_PLUGIN_HH
35#define TTA_RF_COST_ESTIMATION_PLUGIN_HH
54 class BaseRegisterFile;
108#define EXPORT_RF_COST_ESTIMATOR_PLUGIN(PLUGIN_NAME__) \
110 RFCostEstimationPlugin* create_estimator_plugin_##PLUGIN_NAME__(\
112 PLUGIN_NAME__* instance = new PLUGIN_NAME__(#PLUGIN_NAME__);\
115 void delete_estimator_plugin_##PLUGIN_NAME__(\
116 RFCostEstimationPlugin* target) {\
130#define DESCRIPTION(TEXT__) \
132 virtual std::string description() const { return TEXT__; }\
133 int* XXXXXd_escrip__tion__
IDF::MachineImplementation * implementation
the implementation definition of the estimated processor
find Finds info of the inner loops in the program
virtual std::string name() const
virtual bool estimatePortWriteDelay(const TTAMachine::RFPort &port, const IDF::RFImplementationLocation &implementation, DelayInNanoSeconds &inputDelay, HDB::HDBManager &hdb)
virtual bool estimateEnergy(const TTAMachine::BaseRegisterFile &architecture, const IDF::RFImplementationLocation &implementation, const TTAProgram::Program &program, const ExecutionTrace &traceDB, EnergyInMilliJoules &energy, HDB::HDBManager &hdb)
virtual bool estimateArea(const TTAMachine::BaseRegisterFile &architecture, const IDF::RFImplementationLocation &implementation, AreaInGates &area, HDB::HDBManager &hdb)
virtual ~RFCostEstimationPlugin()
virtual bool estimateMaximumComputationDelay(const TTAMachine::BaseRegisterFile &architecture, const IDF::RFImplementationLocation &implementation, DelayInNanoSeconds &computationDelay, HDB::HDBManager &hdb)
virtual bool estimatePortReadDelay(const TTAMachine::RFPort &port, const IDF::RFImplementationLocation &implementation, DelayInNanoSeconds &outputDelay, HDB::HDBManager &hdb)
double AreaInGates
type for area values in equivalent gates
double DelayInNanoSeconds
type for propagation delays in nano seconds
double EnergyInMilliJoules
type for consumed energy in milli joules