|
OpenASIP 2.2
|
#include <SinglePortSSRAMBlock.hh>


Public Member Functions | |
| SinglePortSSRAMBlock ()=delete | |
| SinglePortSSRAMBlock (const std::string &addressWidth, const std::string &dataWidth, const std::string &initFile, bool isForSimulation=true) | |
| virtual | ~SinglePortSSRAMBlock () |
| void | setAccessTraceFile (const std::string filename) |
| const NetlistPortGroup & | memoryPort () const |
| 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 | |
| NetlistPortGroup * | memoryPortGroup_ = nullptr |
| bool | isForSimulation_ = true |
Definition at line 46 of file SinglePortSSRAMBlock.hh.
|
delete |
| ProGe::SinglePortSSRAMBlock::SinglePortSSRAMBlock | ( | const std::string & | addressWidth, |
| const std::string & | dataWidth, | ||
| const std::string & | memInitFile, | ||
| bool | isForSimulation = true |
||
| ) |
Constructs Single port synchronous SRAM block.
| addressWidth | The width of the address port. |
| dataWidth | The width of the data port. |
| memInitFile | Name of the memory initialization file loaded during RTL-simulation. |
| isForSimulation | Tells if the block is used in RTL simulation. Affects placement of the HDL source. |
Definition at line 56 of file SinglePortSSRAMBlock.cc.
References ProGe::BaseNetlistBlock::addParameter(), ProGe::BaseNetlistBlock::addPort(), ProGe::BaseNetlistBlock::addPortGroup(), ProGe::ADDRESS, ProGe::BIT_VECTOR, ProGe::BITMASKED_SRAM_PORT, ProGe::PortFactory::clockPort(), ProGe::LOW, memoryPortGroup_, ProGe::BaseNetlistBlock::NetlistPortGroup, ProGe::BaseNetlistBlock::Parameter, ProGe::READ_DATA, ProGe::READ_WRITE_REQUEST, ProGe::WRITE_BITMASK, ProGe::WRITE_DATA, and ProGe::WRITEMODE.

|
virtual |
Definition at line 85 of file SinglePortSSRAMBlock.cc.
| const NetlistPortGroup & ProGe::SinglePortSSRAMBlock::memoryPort | ( | ) | const |
Definition at line 97 of file SinglePortSSRAMBlock.cc.
References assert, and memoryPortGroup_.
Referenced by ProGe::ProcessorWrapperBlock::addDataMemory(), and ProGe::ProcessorWrapperBlock::addInstructionMemory().
| void ProGe::SinglePortSSRAMBlock::setAccessTraceFile | ( | const std::string | filename | ) |
Sets a file name where memory access trace is dumped for this memory.
Definition at line 91 of file SinglePortSSRAMBlock.cc.
References ProGe::BaseNetlistBlock::Parameter, and ProGe::BaseNetlistBlock::setParameter().
Referenced by ProGe::ProcessorWrapperBlock::addInstructionMemory().

|
overridevirtual |
Does nothing on self but calls write function on each sub block.
Reimplemented from ProGe::BaseNetlistBlock.
Definition at line 103 of file SinglePortSSRAMBlock.cc.
References Environment::dataDirPath(), HDLTemplateInstantiator::instantiateTemplateFile(), isForSimulation_, and ProGe::VHDL.
Referenced by SinglePortSSRAMBlock().

|
private |
Definition at line 66 of file SinglePortSSRAMBlock.hh.
Referenced by write().
|
private |
Definition at line 64 of file SinglePortSSRAMBlock.hh.
Referenced by memoryPort(), and SinglePortSSRAMBlock().