OpenASIP  2.0
Public Member Functions | Public Attributes | List of all members
ProGeOptions Struct Reference

#include <ProGeOptions.hh>

Collaboration diagram for ProGeOptions:
Collaboration graph

Public Member Functions

 ProGeOptions ()
 
 ProGeOptions (const ProGeCmdLineOptions &cmd)
 
void validate ()
 

Public Attributes

std::string processorToGenerate
 
std::string bemFile
 
std::string idfFile
 
std::string languageStr
 
ProGe::HDL language
 
std::string outputDirectory
 
std::string sharedOutputDirectory
 
std::string pluginParametersQuery
 
bool generateTestbench
 
std::string integratorName
 
std::string imemType
 
std::string dmemType
 
int clockFrequency
 
std::string tpefName
 
std::string entityName
 
bool useAbsolutePaths
 
bool listAvailableIntegrators
 
std::string deviceFamilyName
 
std::string deviceName
 
std::string simulationRuntime
 
bool forceOutputDirectory
 
bool asyncReset
 
bool syncReset
 
std::vector< std::string > hdbList
 
std::vector< std::string > rfIcGateList
 
std::vector< std::string > fuIcGateList
 
std::vector< std::pair< std::string, std::string > > icdArgList
 
bool preferHDLGeneration
 
bool resetAllRegisters
 
std::vector< std::string > fuBackRegistered
 
std::vector< std::string > fuFrontRegistered
 
std::vector< std::string > fuMiddleRegistered
 

Detailed Description

Definition at line 41 of file ProGeOptions.hh.

Constructor & Destructor Documentation

◆ ProGeOptions() [1/2]

ProGeOptions::ProGeOptions ( )
inline

Definition at line 43 of file ProGeOptions.hh.

44  : generateTestbench(false), clockFrequency(1),
46  forceOutputDirectory(false), asyncReset(true), syncReset(false),
48  validate();
49  }

References validate().

Here is the call graph for this function:

◆ ProGeOptions() [2/2]

ProGeOptions::ProGeOptions ( const ProGeCmdLineOptions cmd)
inline

Member Function Documentation

◆ validate()

void ProGeOptions::validate ( )
inline

Definition at line 114 of file ProGeOptions.hh.

114  {
115  if (outputDirectory.empty()) {
116  outputDirectory = "proge-output";
117  }
118  if (sharedOutputDirectory.empty()) {
120  }
124  if (entityName.empty()) {
125  entityName = "tta0";
126  }
127  if (languageStr == "verilog") {
129  } else {
131  }
132  if (hdbList.empty()) {
133  hdbList.emplace_back("generate_base32.hdb");
134  hdbList.emplace_back("generate_lsu_32.hdb");
135  hdbList.emplace_back("generate_rf_iu.hdb");
136  hdbList.emplace_back("asic_130nm_1.5V.hdb");
137 
138  }
139  }

References FileSystem::absolutePathOf(), entityName, FileSystem::expandTilde(), hdbList, language, languageStr, outputDirectory, sharedOutputDirectory, ProGe::Verilog, and ProGe::VHDL.

Referenced by ProGeOptions().

Here is the call graph for this function:

Member Data Documentation

◆ asyncReset

bool ProGeOptions::asyncReset

Definition at line 101 of file ProGeOptions.hh.

◆ bemFile

std::string ProGeOptions::bemFile

Definition at line 79 of file ProGeOptions.hh.

◆ clockFrequency

int ProGeOptions::clockFrequency

Definition at line 91 of file ProGeOptions.hh.

◆ deviceFamilyName

std::string ProGeOptions::deviceFamilyName

Definition at line 96 of file ProGeOptions.hh.

◆ deviceName

std::string ProGeOptions::deviceName

Definition at line 97 of file ProGeOptions.hh.

◆ dmemType

std::string ProGeOptions::dmemType

Definition at line 90 of file ProGeOptions.hh.

◆ entityName

std::string ProGeOptions::entityName

Definition at line 93 of file ProGeOptions.hh.

Referenced by GenerateProcessor::generateProcessor(), and validate().

◆ forceOutputDirectory

bool ProGeOptions::forceOutputDirectory

Definition at line 99 of file ProGeOptions.hh.

◆ fuBackRegistered

std::vector<std::string> ProGeOptions::fuBackRegistered

Definition at line 109 of file ProGeOptions.hh.

◆ fuFrontRegistered

std::vector<std::string> ProGeOptions::fuFrontRegistered

Definition at line 110 of file ProGeOptions.hh.

◆ fuIcGateList

std::vector<std::string> ProGeOptions::fuIcGateList

Definition at line 105 of file ProGeOptions.hh.

◆ fuMiddleRegistered

std::vector<std::string> ProGeOptions::fuMiddleRegistered

Definition at line 111 of file ProGeOptions.hh.

◆ generateTestbench

bool ProGeOptions::generateTestbench

Definition at line 86 of file ProGeOptions.hh.

◆ hdbList

std::vector<std::string> ProGeOptions::hdbList

Definition at line 103 of file ProGeOptions.hh.

Referenced by validate().

◆ icdArgList

std::vector<std::pair<std::string, std::string> > ProGeOptions::icdArgList

Definition at line 106 of file ProGeOptions.hh.

◆ idfFile

std::string ProGeOptions::idfFile

Definition at line 80 of file ProGeOptions.hh.

◆ imemType

std::string ProGeOptions::imemType

Definition at line 89 of file ProGeOptions.hh.

◆ integratorName

std::string ProGeOptions::integratorName

Definition at line 88 of file ProGeOptions.hh.

◆ language

ProGe::HDL ProGeOptions::language

Definition at line 82 of file ProGeOptions.hh.

Referenced by GenerateProcessor::generateProcessor(), and validate().

◆ languageStr

std::string ProGeOptions::languageStr

Definition at line 81 of file ProGeOptions.hh.

Referenced by validate().

◆ listAvailableIntegrators

bool ProGeOptions::listAvailableIntegrators

Definition at line 95 of file ProGeOptions.hh.

◆ outputDirectory

std::string ProGeOptions::outputDirectory

Definition at line 83 of file ProGeOptions.hh.

Referenced by GenerateProcessor::generateProcessor(), and validate().

◆ pluginParametersQuery

std::string ProGeOptions::pluginParametersQuery

Definition at line 85 of file ProGeOptions.hh.

◆ preferHDLGeneration

bool ProGeOptions::preferHDLGeneration

Definition at line 107 of file ProGeOptions.hh.

◆ processorToGenerate

std::string ProGeOptions::processorToGenerate

Definition at line 78 of file ProGeOptions.hh.

◆ resetAllRegisters

bool ProGeOptions::resetAllRegisters

Definition at line 108 of file ProGeOptions.hh.

◆ rfIcGateList

std::vector<std::string> ProGeOptions::rfIcGateList

Definition at line 104 of file ProGeOptions.hh.

◆ sharedOutputDirectory

std::string ProGeOptions::sharedOutputDirectory

Definition at line 84 of file ProGeOptions.hh.

Referenced by GenerateProcessor::generateProcessor(), and validate().

◆ simulationRuntime

std::string ProGeOptions::simulationRuntime

Definition at line 98 of file ProGeOptions.hh.

Referenced by GenerateProcessor::generateProcessor().

◆ syncReset

bool ProGeOptions::syncReset

Definition at line 102 of file ProGeOptions.hh.

◆ tpefName

std::string ProGeOptions::tpefName

Definition at line 92 of file ProGeOptions.hh.

◆ useAbsolutePaths

bool ProGeOptions::useAbsolutePaths

Definition at line 94 of file ProGeOptions.hh.


The documentation for this struct was generated from the following file:
ProGeOptions::fuIcGateList
std::vector< std::string > fuIcGateList
Definition: ProGeOptions.hh:105
ProGeCmdLineOptions::processorToGenerate
std::string processorToGenerate() const
Definition: ProGeCmdLineOptions.cc:256
ProGeCmdLineOptions::tpefName
std::string tpefName() const
Definition: ProGeCmdLineOptions.cc:356
ProGeCmdLineOptions::bemFile
std::string bemFile() const
Definition: ProGeCmdLineOptions.cc:267
ProGeOptions::fuBackRegistered
std::vector< std::string > fuBackRegistered
Definition: ProGeOptions.hh:109
ProGe::Verilog
@ Verilog
Verilog.
Definition: ProGeTypes.hh:42
ProGeCmdLineOptions::useAbsolutePaths
bool useAbsolutePaths() const
Definition: ProGeCmdLineOptions.cc:367
ProGeOptions::bemFile
std::string bemFile
Definition: ProGeOptions.hh:79
ProGeCmdLineOptions::icdArgList
std::vector< std::pair< std::string, std::string > > icdArgList() const
Definition: ProGeCmdLineOptions.cc:482
ProGeCmdLineOptions::generateTestbench
bool generateTestbench() const
Definition: ProGeCmdLineOptions.cc:372
ProGeOptions::outputDirectory
std::string outputDirectory
Definition: ProGeOptions.hh:83
ProGeOptions::syncReset
bool syncReset
Definition: ProGeOptions.hh:102
FileSystem::absolutePathOf
static std::string absolutePathOf(const std::string &pathName)
Definition: FileSystem.cc:303
ProGeCmdLineOptions::asyncReset
bool asyncReset() const
Definition: ProGeCmdLineOptions.cc:436
ProGeOptions::preferHDLGeneration
bool preferHDLGeneration
Definition: ProGeOptions.hh:107
ProGeCmdLineOptions::pluginParametersQuery
std::string pluginParametersQuery() const
Definition: ProGeCmdLineOptions.cc:321
ProGeCmdLineOptions::idfFile
std::string idfFile() const
Definition: ProGeCmdLineOptions.cc:278
ProGeOptions::dmemType
std::string dmemType
Definition: ProGeOptions.hh:90
ProGeCmdLineOptions::fuFrontRegistered
std::vector< std::string > fuFrontRegistered() const
Definition: ProGeCmdLineOptions.cc:513
ProGeOptions::idfFile
std::string idfFile
Definition: ProGeOptions.hh:80
ProGe::VHDL
@ VHDL
VHDL.
Definition: ProGeTypes.hh:41
ProGeOptions::fuMiddleRegistered
std::vector< std::string > fuMiddleRegistered
Definition: ProGeOptions.hh:111
ProGeOptions::language
ProGe::HDL language
Definition: ProGeOptions.hh:82
ProGeOptions::validate
void validate()
Definition: ProGeOptions.hh:114
ProGeCmdLineOptions::fuIcGateList
std::vector< std::string > fuIcGateList() const
Definition: ProGeCmdLineOptions.cc:503
ProGeOptions::fuFrontRegistered
std::vector< std::string > fuFrontRegistered
Definition: ProGeOptions.hh:110
ProGeCmdLineOptions::listAvailableIntegrators
bool listAvailableIntegrators() const
Definition: ProGeCmdLineOptions.cc:377
ProGeCmdLineOptions::hdbList
std::vector< std::string > hdbList() const
Definition: ProGeCmdLineOptions.cc:466
ProGeCmdLineOptions::fuBackRegistered
std::vector< std::string > fuBackRegistered() const
Definition: ProGeCmdLineOptions.cc:508
ProGeOptions::forceOutputDirectory
bool forceOutputDirectory
Definition: ProGeOptions.hh:99
ProGeOptions::entityName
std::string entityName
Definition: ProGeOptions.hh:93
ProGeOptions::asyncReset
bool asyncReset
Definition: ProGeOptions.hh:101
ProGeCmdLineOptions::syncReset
bool syncReset() const
Definition: ProGeCmdLineOptions.cc:428
ProGeOptions::generateTestbench
bool generateTestbench
Definition: ProGeOptions.hh:86
FileSystem::expandTilde
static std::string expandTilde(const std::string &stringWithTilde)
Definition: FileSystem.cc:217
ProGeCmdLineOptions::clockFrequency
int clockFrequency() const
Definition: ProGeCmdLineOptions.cc:345
ProGeCmdLineOptions::imemType
std::string imemType() const
Definition: ProGeCmdLineOptions.cc:333
ProGeOptions::pluginParametersQuery
std::string pluginParametersQuery
Definition: ProGeOptions.hh:85
ProGeCmdLineOptions::simulationRuntime
std::string simulationRuntime() const
Definition: ProGeCmdLineOptions.cc:404
ProGeOptions::useAbsolutePaths
bool useAbsolutePaths
Definition: ProGeOptions.hh:94
ProGeCmdLineOptions::preferHDLGeneration
bool preferHDLGeneration() const
Definition: ProGeCmdLineOptions.cc:526
ProGeOptions::imemType
std::string imemType
Definition: ProGeOptions.hh:89
ProGeOptions::listAvailableIntegrators
bool listAvailableIntegrators
Definition: ProGeOptions.hh:95
ProGeCmdLineOptions::sharedOutputDirectory
std::string sharedOutputDirectory() const
Definition: ProGeCmdLineOptions.cc:310
ProGeCmdLineOptions::forceOutputDirectory
bool forceOutputDirectory() const
Definition: ProGeCmdLineOptions.cc:420
ProGeOptions::deviceName
std::string deviceName
Definition: ProGeOptions.hh:97
ProGeOptions::deviceFamilyName
std::string deviceFamilyName
Definition: ProGeOptions.hh:96
ProGeCmdLineOptions::fuMiddleRegistered
std::vector< std::string > fuMiddleRegistered() const
Definition: ProGeCmdLineOptions.cc:518
ProGeOptions::resetAllRegisters
bool resetAllRegisters
Definition: ProGeOptions.hh:108
ProGeCmdLineOptions::dmemType
std::string dmemType() const
Definition: ProGeCmdLineOptions.cc:339
ProGeOptions::icdArgList
std::vector< std::pair< std::string, std::string > > icdArgList
Definition: ProGeOptions.hh:106
ProGeCmdLineOptions::deviceFamilyName
std::string deviceFamilyName() const
Definition: ProGeCmdLineOptions.cc:382
ProGeCmdLineOptions::hdl
std::string hdl() const
Definition: ProGeCmdLineOptions.cc:289
ProGeOptions::rfIcGateList
std::vector< std::string > rfIcGateList
Definition: ProGeOptions.hh:104
ProGeCmdLineOptions::outputDirectory
std::string outputDirectory() const
Definition: ProGeCmdLineOptions.cc:300
ProGeOptions::simulationRuntime
std::string simulationRuntime
Definition: ProGeOptions.hh:98
ProGeOptions::clockFrequency
int clockFrequency
Definition: ProGeOptions.hh:91
ProGeOptions::integratorName
std::string integratorName
Definition: ProGeOptions.hh:88
ProGeCmdLineOptions::resetAllRegisters
bool resetAllRegisters() const
Definition: ProGeCmdLineOptions.cc:534
ProGeCmdLineOptions::integratorName
std::string integratorName() const
Definition: ProGeCmdLineOptions.cc:327
ProGeCmdLineOptions::deviceName
std::string deviceName() const
Definition: ProGeCmdLineOptions.cc:391
ProGeCmdLineOptions::entityName
std::string entityName() const
Definition: ProGeCmdLineOptions.cc:362
ProGeOptions::languageStr
std::string languageStr
Definition: ProGeOptions.hh:81
ProGeOptions::tpefName
std::string tpefName
Definition: ProGeOptions.hh:92
ProGeOptions::hdbList
std::vector< std::string > hdbList
Definition: ProGeOptions.hh:103
ProGeCmdLineOptions::rfIcGateList
std::vector< std::string > rfIcGateList() const
Definition: ProGeCmdLineOptions.cc:474
ProGeOptions::processorToGenerate
std::string processorToGenerate
Definition: ProGeOptions.hh:78
ProGeOptions::sharedOutputDirectory
std::string sharedOutputDirectory
Definition: ProGeOptions.hh:84