30#ifndef TTA_ALMAIF_INTEGRATOR_HH
31#define TTA_ALMAIF_INTEGRATOR_HH
58 virtual void printInfo(std::ostream& stream)
const;
79 std::vector<std::string> lsuPorts);
85 const TCEString as_name,
int data_width,
int addr_width,
86 const bool isShared,
const bool overrideAsWidth);
88 const TCEString as_name,
int mem_count,
int data_width,
89 int addr_width,
int strb_width,
const bool overrideAsWidth);
94 std::vector<TCEString>& fileList,
bool isScript =
false)
const;
virtual bool chopTaggedSignals() const
virtual MemoryGenerator & dmemInstance(MemInfo dmem, TTAMachine::FunctionUnit &lsuArch, std::vector< std::string > lsuPorts)
void exportUnconnectedPorts(int coreId)
virtual int targetClockFrequency() const
std::string secondPmemName_
ProGe::NetlistPortGroup * axiMasterPortGroup()
std::map< TCEString, MemoryGenerator * > dmemGen_
virtual ProjectFileGenerator * projectFileGenerator() const
static const int DEFAULT_LOCAL_MEMORY_WIDTH
virtual void printInfo(std::ostream &stream) const
virtual void setDeviceFamily(TCEString devFamily)
ProGe::NetlistBlock * almaifBlock_
ProGe::NetlistPortGroup * axiSlavePortGroup()
static const TCEString AXI_AS_NAME
virtual void integrateProcessor(const ProGe::NetlistBlock *progeBlock)
static const int DEFAULT_RESERVED_PRIVATE_MEM_SIZE
TCEString axiAddressWidth() const
static const TCEString ALMAIF_MODULE
HDLTemplateInstantiator accelInstantiator_
bool generateIntegratedTestbench_
virtual TCEString devicePackage() const
virtual TCEString deviceFamily() const
MemoryGenerator * imemGen_
std::map< TCEString, ProGe::NetlistPort * > almaif_ttacore_ports
virtual ~AlmaIFIntegrator()
virtual TCEString deviceSpeedClass() const
static const TCEString DMEM_NAME
void addMemoryPorts(const TCEString as_name, int data_width, int addr_width, const bool isShared, const bool overrideAsWidth)
static const TCEString PMEM_NAME
bool hasSeparateLocalMemory_
std::string secondDmemName_
void generateIntegratedTestbench()
virtual bool integrateCore(const ProGe::NetlistBlock &cores, int coreId)
virtual MemoryGenerator & imemInstance(MemInfo imem, int coreId)
void connectCoreMemories(MemInfo mem, TCEString mem_name, TCEString mem_block_name, bool seconds)
virtual TCEString pinTag() const
static const TCEString DEFAULT_DEVICE
void addPortToGroup(ProGe::NetlistPortGroup *port_group, const ProGe::Direction dir, const TCEString name, const TCEString width)
void copyPlatformFile(const TCEString inputPath, std::vector< TCEString > &fileList, bool isScript=false) const
DefaultProjectFileGenerator * fileGen_
void addPortToAlmaIFBlock(const TCEString name, const TCEString width, const ProGe::Direction dir, const TCEString core_name="")
Direction
Direction of the port.
HDL
HDLs supported by ProGe.