|
OpenASIP 2.2
|


Protected Member Functions | |
| void | readParameters () |
| TTAMachine::Segment * | createBus (TTAMachine::Machine *mach, int width) |
| int | widthIndex (int width) |
Protected Member Functions inherited from DesignSpaceExplorerPlugin | |
| DesignSpaceExplorerPlugin () | |
| void | checkParameters () const |
Protected Member Functions inherited from DesignSpaceExplorer | |
| 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) |
Protected Attributes | |
| bool | wipeRegisterFile_ |
| int | shortImmediateWidth_ |
| int | longImmediateBusCount_ |
| std::vector< int > | distinctBusWidths_ |
Protected Attributes inherited from DesignSpaceExplorerPlugin | |
| std::string | pluginName_ |
| the name of the explorer plugin | |
| ParameterMap | parameters_ |
| Parameters for the plugin. | |
Static Protected Attributes | |
| static const TCEString | wipeRegisterFilePN_ |
| static const TCEString | shortImmediateWidthPN_ |
| static const TCEString | longImmediateBusCountPN_ |
Private Member Functions | |
| PLUGIN_DESCRIPTION ("Arranges architecture FUs into a VLIW-like " "interconnection by adding separate RF for each distinct bus width.") | |
| VLIWConnectIC () | |
| virtual bool | requiresStartingPointArchitecture () const |
| virtual bool | producesArchitecture () const |
| virtual bool | requiresHDB () const |
| virtual bool | requiresSimulationData () const |
| virtual bool | requiresApplication () const |
| virtual std::vector< RowID > | explore (const RowID &configurationID, const unsigned int &) |
Additional Inherited Members | |
Public Types inherited from DesignSpaceExplorerPlugin | |
| 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 |
Public Member Functions inherited from DesignSpaceExplorerPlugin | |
| 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 |
Public Member Functions inherited from DesignSpaceExplorer | |
| 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 Public Member Functions inherited from DesignSpaceExplorer | |
| static DesignSpaceExplorerPlugin * | loadExplorerPlugin (const std::string &pluginName, DSDBManager *dsdb=NULL) |
Definition at line 53 of file VLIWConnectIC.cc.
|
inlineprivate |
Definition at line 58 of file VLIWConnectIC.cc.
References DesignSpaceExplorerPlugin::addParameter(), BOOL, INT, longImmediateBusCountPN_, shortImmediateWidthPN_, and wipeRegisterFilePN_.

|
inlineprotected |
Creates a bus with specified bit width.
| mach | Machine for that bus. |
| width | Bit width of a bus. |
Definition at line 384 of file VLIWConnectIC.cc.
References TTAMachine::Machine::addBus(), TTAMachine::Machine::busNavigator(), TTAMachine::Machine::Navigator< ComponentType >::count(), TTAMachine::Machine::SIGN, and Conversion::toString().
Referenced by explore().

|
inlineprivatevirtual |
Arranges architecture FUs into a VLIW-like interconnection. This is typically as baseline for running the BusMergeMinimizer and RFPortMergeMinimizer plugins.
Reimplemented from DesignSpaceExplorerPlugin.
Definition at line 83 of file VLIWConnectIC.cc.
References DSDBManager::addArchitecture(), DSDBManager::addConfiguration(), TTAMachine::Machine::addRegisterFile(), TTAMachine::InstructionTemplate::addSlot(), TTAMachine::Machine::addSocket(), DSDBManager::architecture(), DSDBManager::MachineConfiguration::architectureID, assert, TTAMachine::Socket::attachBus(), TTAMachine::Port::attachSocket(), TTAMachine::Segment::attachSocket(), TTAMachine::Machine::busNavigator(), DSDBManager::configuration(), TTAMachine::Machine::Navigator< ComponentType >::count(), createBus(), DesignSpaceExplorer::db(), TTAMachine::Machine::deleteInstructionTemplate(), TTAMachine::Socket::direction(), distinctBusWidths_, Application::errorStream(), DSDBManager::MachineConfiguration::hasImplementation, TTAMachine::Machine::immediateUnitNavigator(), TTAMachine::Socket::INPUT, TTAMachine::Machine::instructionTemplateNavigator(), TTAMachine::Socket::isConnectedTo(), TTAMachine::Machine::Navigator< ComponentType >::item(), longImmediateBusCount_, TTAMachine::Component::name(), TTAMachine::RegisterFile::NORMAL, TTAMachine::Socket::OUTPUT, TTAMachine::Port::outputSocket(), TTAMachine::Segment::parentBus(), TTAMachine::Port::parentUnit(), TTAMachine::BaseRegisterFile::port(), TTAMachine::Socket::port(), TTAMachine::Socket::portCount(), readParameters(), TTAMachine::Machine::registerFileNavigator(), TTAMachine::Machine::removeBus(), TTAMachine::Machine::removeRegisterFile(), TTAMachine::Machine::removeSocket(), TTAMachine::Bus::segment(), TTAMachine::Socket::setDirection(), TTAMachine::Bus::setImmediateWidth(), shortImmediateWidth_, TTAMachine::Machine::socketNavigator(), Conversion::toString(), TTAMachine::BaseRegisterFile::width(), TTAMachine::Port::width(), widthIndex(), and wipeRegisterFile_.

|
private |
|
inlineprivatevirtual |
Implements DesignSpaceExplorerPlugin.
Definition at line 71 of file VLIWConnectIC.cc.
|
inlineprotected |
Reads the parameters given to the plugin.
Definition at line 371 of file VLIWConnectIC.cc.
References longImmediateBusCount_, longImmediateBusCountPN_, DesignSpaceExplorerPlugin::readOptionalParameter(), shortImmediateWidth_, shortImmediateWidthPN_, wipeRegisterFile_, and wipeRegisterFilePN_.
Referenced by explore().

|
inlineprivatevirtual |
Reimplemented from DesignSpaceExplorerPlugin.
Definition at line 74 of file VLIWConnectIC.cc.
|
inlineprivatevirtual |
Implements DesignSpaceExplorerPlugin.
Definition at line 72 of file VLIWConnectIC.cc.
|
inlineprivatevirtual |
Implements DesignSpaceExplorerPlugin.
Definition at line 73 of file VLIWConnectIC.cc.
|
inlineprivatevirtual |
Implements DesignSpaceExplorerPlugin.
Definition at line 70 of file VLIWConnectIC.cc.
|
inlineprotected |
Returns corresponding cluster index in distinct buses vector list.
| width | Bus width to get index. |
| buses | Vector list of distinct buses in current machine. |
Definition at line 401 of file VLIWConnectIC.cc.
References distinctBusWidths_.
Referenced by explore().
|
protected |
Definition at line 362 of file VLIWConnectIC.cc.
Referenced by explore(), and widthIndex().
|
protected |
Definition at line 360 of file VLIWConnectIC.cc.
Referenced by explore(), and readParameters().
|
staticprotected |
Definition at line 365 of file VLIWConnectIC.cc.
Referenced by readParameters(), and VLIWConnectIC().
|
protected |
Definition at line 359 of file VLIWConnectIC.cc.
Referenced by explore(), and readParameters().
|
staticprotected |
Definition at line 364 of file VLIWConnectIC.cc.
Referenced by readParameters(), and VLIWConnectIC().
|
protected |
Definition at line 358 of file VLIWConnectIC.cc.
Referenced by explore(), and readParameters().
|
staticprotected |
Definition at line 363 of file VLIWConnectIC.cc.
Referenced by readParameters(), and VLIWConnectIC().