|
typedef std::pair< std::string, ExplorerPluginParameter > | Parameter |
|
typedef std::map< std::string, ExplorerPluginParameter > | ParameterMap |
|
typedef std::map< std::string, ExplorerPluginParameter >::iterator | PMIt |
|
typedef std::map< std::string, ExplorerPluginParameter >::const_iterator | PMCIt |
|
virtual std::string | description () const |
|
void | addParameter (TCEString name, ExplorerPluginParameterType type, bool compulsory=true, TCEString defaultValue="", TCEString description="") |
|
template<typename T > |
void | readCompulsoryParameter (const std::string paramName, T ¶m) const |
|
template<typename T > |
void | readOptionalParameter (const std::string paramName, T ¶m) const |
|
template<typename RT > |
RT | parameterValue (const std::string ¶mName) const |
|
virtual | ~DesignSpaceExplorerPlugin () |
|
virtual void | giveParameter (const std::string &name, const std::string &value) |
|
virtual std::string | name () const |
|
virtual void | setPluginName (const std::string &pluginName) |
|
virtual bool | hasParameter (const std::string ¶mName) const |
|
ParameterMap | parameters () const |
|
virtual bool | booleanValue (const std::string ¶meter) const |
|
| DesignSpaceExplorer () |
|
virtual | ~DesignSpaceExplorer () |
|
virtual void | setDSDB (DSDBManager &dsdb) |
|
virtual bool | evaluate (const DSDBManager::MachineConfiguration &configuration, CostEstimates &results=dummyEstimate_, bool estimate=false) |
|
virtual DSDBManager & | db () |
|
std::vector< DesignSpaceExplorerPlugin * > | getPlugins () |
|
RowID | createImplementationAndStore (const DSDBManager::MachineConfiguration &conf, const double &frequency=0.0, const double &maxArea=0.0, const bool &createEstimates=true, const std::string &icDec="DefaultICDecoder", const std::string &icDecHDB="asic_130nm_1.5V.hdb") |
|
bool | createImplementation (const DSDBManager::MachineConfiguration &conf, DSDBManager::MachineConfiguration &newConf, const double &frequency=0.0, const double &maxArea=0.0, const bool &createEstimates=true, const std::string &icDec="DefaultICDecoder", const std::string &icDecHDB="asic_130nm_1.5V.hdb") |
|
IDF::MachineImplementation * | selectComponents (const TTAMachine::Machine &mach, const double &frequency=0.0, const double &maxArea=0.0, const std::string &icDec="DefaultICDecoder", const std::string &icDecHDB="asic_130nm_1.5V.hdb") const |
|
void | createEstimateData (const TTAMachine::Machine &mach, const IDF::MachineImplementation &idf, CostEstimator::AreaInGates &area, CostEstimator::DelayInNanoSeconds &longestPathDelay) |
|
RowID | addConfToDSDB (const DSDBManager::MachineConfiguration &conf) |
|
static DesignSpaceExplorerPlugin * | loadExplorerPlugin (const std::string &pluginName, DSDBManager *dsdb=NULL) |
|
| DesignSpaceExplorerPlugin () |
|
void | checkParameters () const |
|
TTAProgram::Program * | schedule (const std::string applicationFile, TTAMachine::Machine &machine, TCEString paramOptions="-O3") |
|
const ExecutionTrace * | simulate (const TTAProgram::Program &program, const TTAMachine::Machine &machine, const TestApplication &testApplication, const ClockCycleCount &maxCycles, ClockCycleCount &runnedCycles, const bool tracing, const bool useCompiledSimulation=false, std::vector< ClockCycleCount > *executionCounts=NULL) |
|
std::string | pluginName_ |
| the name of the explorer plugin More...
|
|
ParameterMap | parameters_ |
| Parameters for the plugin. More...
|
|
Explorer plugin that creates wide load store unit.
Supported parameters:
- node_count, number of times the input architecture is copied to new one, default is 4.
- address_spaces, semicolon separated names of the address spaces for which the LSUs will be created, default is 'data'
Definition at line 68 of file VectorLSGenerator.cc.
Create single instance of vector load store unit, starting from empty unit.
Definition at line 228 of file VectorLSGenerator.cc.
241 TCEString msg =
"No reason for creating wide LSU since number"
246 for (
int i = 1; i <= width; i++) {
References __func__, assert, TTAMachine::AddressSpace::end(), TCEString::endsWith(), TTAMachine::FunctionUnit::hasOperation(), OperationPool::index(), TTAMachine::FUPort::isOpcodeSetting(), TTAMachine::FUPort::isTriggering(), OperationIndex::module(), OperationIndex::moduleCount(), Operation::numberOfInputs(), Operation::numberOfOutputs(), OperationPool::operation(), OperationIndex::operationCount(), OperationIndex::operationName(), MathTools::requiredBits(), TCEString::startsWith(), Conversion::toString(), and Operation::usesMemory().
virtual std::vector<RowID> VectorLSGenerator::explore |
( |
const RowID & |
configurationID, |
|
|
const unsigned int & |
|
|
) |
| |
|
inlineprivatevirtual |
Explorer plugin that adds machine components to a given machine with adf parameter or with configuration id in dsdb.
Reimplemented from DesignSpaceExplorerPlugin.
Definition at line 95 of file VectorLSGenerator.cc.
97 std::vector<RowID> result;
113 std::vector<TCEString> addressSpaces =
115 for (
unsigned int i = 0; i < addressSpaces.size(); i++) {
116 if (!addrNav.
hasItem(addressSpaces[i])) {
117 TCEString msg =
"Original architecture does not have \""
118 + addressSpaces[i] +
"\" address space. Not adding Vector LSU.";
123 addrSpace = addrNav.
item(addressSpaces[i]);
125 if (addrSpace == NULL) {
151 TCEString msg =
"Error while adding ADF to the dsdb. "
152 "ADF probably too big.";
159 result.push_back(tempConfID);
References __func__, DSDBManager::addArchitecture(), DSDBManager::addConfiguration(), TTAMachine::Machine::addFunctionUnit(), TTAMachine::Machine::addressSpaceNavigator(), DSDBManager::architecture(), DSDBManager::MachineConfiguration::architectureID, StringTools::chopString(), DSDBManager::configuration(), Exception::errorMessageStack(), DSDBManager::MachineConfiguration::hasImplementation, TTAMachine::Machine::Navigator< ComponentType >::hasItem(), TTAMachine::Machine::Navigator< ComponentType >::item(), TTAMachine::Component::name(), and TTAMachine::FunctionUnit::setAddressSpace().