CGRA-ME
Public Member Functions | Public Attributes | Private Attributes | Friends | List of all members
CGRA Class Reference

#include <CGRA.h>

Public Member Functions

 CGRA (std::string name="CGRA", std::string templateName="cgra")
 
BitStream genBitStream (const Mapping &mapping)
 
void genTimingConstraints (OpGraph *mappped_opgraph)
 
void genFloorPlan ()
 
int getNumRows ()
 
int getNumCols ()
 
void setNumRows (int numRows)
 
void setNumCols (int numCols)
 
const MRRG & getMRRG (int II)
 
Module & getTopLevelModule ()
 
const Module & getTopLevelModule () const
 
void genVerilog (VerilogType vt, std::string dir, const int &SII)
 
void genHybrid (VerilogType vt, std::string dir, int mem_size)
 

Public Attributes

std::vector< std::string > hybridPorts
 

Private Attributes

std::unique_ptr< Module > top_level_module
 
std::vector< std::shared_ptr< const MRRG > > mrrgs = {}
 
int num_floorplan_rows = 0
 
int num_floorplan_columns = 0
 

Friends

class adl0::ADL
 

Detailed Description

Definition at line 76 of file CGRA.h.

Constructor & Destructor Documentation

◆ CGRA()

CGRA::CGRA ( std::string  name = "CGRA",
std::string  templateName = "cgra" 
)

Definition at line 39 of file CGRA.cpp.

Member Function Documentation

◆ genBitStream()

BitStream CGRA::genBitStream ( const Mapping &  mapping)

Definition at line 64 of file CGRA.cpp.

◆ genFloorPlan()

void CGRA::genFloorPlan ( )

Definition at line 269 of file CGRA.cpp.

◆ genHybrid()

void CGRA::genHybrid ( VerilogType  vt,
std::string  dir,
int  mem_size 
)

Definition at line 412 of file CGRA.cpp.

◆ genTimingConstraints()

void CGRA::genTimingConstraints ( OpGraph *  mappped_opgraph)

◆ genVerilog()

void CGRA::genVerilog ( VerilogType  vt,
std::string  dir,
const int &  SII 
)

Definition at line 405 of file CGRA.cpp.

◆ getMRRG()

const MRRG & CGRA::getMRRG ( int  II)

Definition at line 44 of file CGRA.cpp.

◆ getNumCols()

int CGRA::getNumCols ( )
inline

Definition at line 84 of file CGRA.h.

◆ getNumRows()

int CGRA::getNumRows ( )
inline

Definition at line 83 of file CGRA.h.

◆ getTopLevelModule() [1/2]

Module& CGRA::getTopLevelModule ( )
inline

Definition at line 89 of file CGRA.h.

◆ getTopLevelModule() [2/2]

const Module& CGRA::getTopLevelModule ( ) const
inline

Definition at line 90 of file CGRA.h.

◆ setNumCols()

void CGRA::setNumCols ( int  numCols)
inline

Definition at line 86 of file CGRA.h.

◆ setNumRows()

void CGRA::setNumRows ( int  numRows)
inline

Definition at line 85 of file CGRA.h.

Friends And Related Function Documentation

◆ adl0::ADL

friend class adl0::ADL
friend

Definition at line 97 of file CGRA.h.

Member Data Documentation

◆ hybridPorts

std::vector<std::string> CGRA::hybridPorts

Definition at line 95 of file CGRA.h.

◆ mrrgs

std::vector<std::shared_ptr<const MRRG> > CGRA::mrrgs = {}
private

Definition at line 99 of file CGRA.h.

◆ num_floorplan_columns

int CGRA::num_floorplan_columns = 0
private

Definition at line 101 of file CGRA.h.

◆ num_floorplan_rows

int CGRA::num_floorplan_rows = 0
private

Definition at line 100 of file CGRA.h.

◆ top_level_module

std::unique_ptr<Module> CGRA::top_level_module
private

Definition at line 98 of file CGRA.h.


The documentation for this class was generated from the following files: