OpenASIP
2.0
|
#include <TestBenchBlock.hh>
Public Member Functions | |
TestBenchBlock ()=delete | |
TestBenchBlock (const ProGeContext &context, const BaseNetlistBlock &coreBlock) | |
virtual | ~TestBenchBlock () |
virtual void | write (const Path &targetBaseDir, HDL targetLang=VHDL) const override |
Public Member Functions inherited from ProGe::BaseNetlistBlock | |
BaseNetlistBlock () | |
BaseNetlistBlock (BaseNetlistBlock *parent) | |
BaseNetlistBlock (const std::string &moduleName, const std::string &instanceName, BaseNetlistBlock *parent=nullptr) | |
virtual | ~BaseNetlistBlock () |
const std::string & | instanceName () const |
void | setInstanceName (const std::string &name) |
const std::string & | moduleName () const |
const std::string | name () const |
virtual size_t | subBlockCount () const |
virtual const BaseNetlistBlock & | subBlock (size_t index) const |
virtual bool | hasSubBlock (const std::string &instanceName) const |
virtual bool | isSubBlock (const BaseNetlistBlock &block) const |
virtual bool | hasParameter (const std::string &name) const |
virtual const Parameter & | parameter (const std::string &name) const |
virtual size_t | parameterCount () const |
virtual const Parameter & | parameter (size_t index) const |
virtual size_t | portCount () const |
virtual const NetlistPort & | port (size_t index) const |
virtual std::vector< const NetlistPort * > | portsBy (SignalType type) const |
virtual const NetlistPort & | portBy (SignalType type, size_t index=0) const |
virtual bool | hasPortsBy (SignalType type) const |
virtual const NetlistPort * | port (const std::string &portName, bool partialMatch=true) const |
virtual size_t | portGroupCount () const |
virtual const NetlistPortGroup & | portGroup (size_t index) const |
virtual std::vector< const NetlistPortGroup * > | portGroupsBy (SignalGroupType type) const |
virtual const Netlist & | netlist () const |
virtual bool | hasParentBlock () const |
virtual const BaseNetlistBlock & | parentBlock () const |
virtual bool | isVirtual () const |
virtual void | build () override |
virtual void | connect () override |
virtual void | finalize () override |
virtual void | writeSelf (const Path &targetBaseDir, HDL targetLang=VHDL) const |
virtual size_t | packageCount () const |
virtual const std::string & | package (size_t idx) const |
PortContainerType & | ports () |
virtual bool | isLeaf () const |
BaseNetlistBlock * | shallowCopy (const std::string &instanceName="") const |
Public Member Functions inherited from ProGe::IGenerationPhases | |
virtual | ~IGenerationPhases () |
Private Attributes | |
const ProGeContext & | context_ |
The ProGe context for additional information. More... | |
ProcessorWrapperBlock * | proc_ |
The block that wraps the processor and instantiates memories for the GCU and LSUs. More... | |
Definition at line 50 of file TestBenchBlock.hh.
|
delete |
ProGe::TestBenchBlock::TestBenchBlock | ( | const ProGeContext & | context, |
const BaseNetlistBlock & | coreBlock | ||
) |
Construct The test bench for the core TTA processor.
The test bench creation is limited to TTAs with one address space for instruction and address spaces for data shared by one LSU at most.
context | The context for deriving necessary information about the core. |
coreBlock | The DUT for test bench |
Thrown | if the test bench can not be created. |
Definition at line 59 of file TestBenchBlock.cc.
References ProGe::ProGeContext::adf(), Exception::errorMessage(), MachineInfo::findLockUnits(), TTAMachine::Machine::functionUnitNavigator(), proc_, and THROW_EXCEPTION.
|
virtual |
Definition at line 99 of file TestBenchBlock.cc.
|
overridevirtual |
Does nothing on self but calls write function on each sub block.
Reimplemented from ProGe::BaseNetlistBlock.
Definition at line 103 of file TestBenchBlock.cc.
References context_, ProGe::ProGeContext::coreEntityName(), FileSystem::createDirectory(), Environment::dataDirPath(), IDF::MachineImplementation::icDecoderParameterValue(), ProGe::ProGeContext::idf(), HDLTemplateInstantiator::instantiateTemplateFile(), ProGe::BaseNetlistBlock::moduleName(), proc_, HDLTemplateInstantiator::replacePlaceholder(), THROW_EXCEPTION, ProGe::VHDL, and ProGe::ProcessorWrapperBlock::write().
Referenced by ProGe::ProGeUI::generateTestBench().
|
private |
The ProGe context for additional information.
Definition at line 63 of file TestBenchBlock.hh.
Referenced by write().
|
private |
The block that wraps the processor and instantiates memories for the GCU and LSUs.
Definition at line 66 of file TestBenchBlock.hh.
Referenced by TestBenchBlock(), and write().