41 #ifndef DATAPATH_PARALLEL_CS_H 42 #define DATAPATH_PARALLEL_CS_H 68 const std::vector<structural_objectRef>& memory_modules,
130 #endif // DATAPATH_PARALLEL_CS_H ~datapath_parallel_cs() override
Destructor.
const HLS_managerRef HLSMgr
information about all the HLS synthesis
RelationshipType
The relationship type.
const unsigned int funId
identifier of the function to be processed (0 means that it is a global step)
void manage_extern_global_port_parallel(const structural_managerRef SM, const std::vector< structural_objectRef > &memory_modules, const structural_objectRef circuit)
connect mem_parallel with datapath and kernels
Base class for usual datapath creation.
This class manages the circuit structures.
const HLSFlowStep_Type hls_flow_step_type
The type of this step.
void add_ports() override
Adds the input/output ports of the module.
void connect_module_kernel(structural_objectRef kernel, unsigned int num_kernel)
connect datapath with each kernel
DesignFlowStep_Status InternalExec() override
InternalExec.
REF_FORWARD_DECL(structural_object)
void kernel(unsigned vertex, unsigned *p_Qnext, unsigned *Qnext_N, unsigned *map)
const Wrefcount< const DesignFlowManager > design_flow_manager
The design flow manager.
DesignFlowStep_Status
The status of a step.
void instantiate_component_parallel(structural_objectRef clock_port, structural_objectRef reset_port)
instantiate memory_parallel
void resize_dimension_bus_port(unsigned int vector_size, structural_objectRef port)
for each port resize it depending on the type of bus port
void resize_ctrl_parallel_ports(structural_objectRef mem_par_mod)
for each port decide the vector size
void connect_i_module_kernel(structural_objectRef kernel)
connect datapath with each kernel
datapath_parallel_cs(const ParameterConstRef _parameters, const HLS_managerRef HLSMgr, unsigned int funId, const DesignFlowManagerConstRef design_flow_manager, const HLSFlowStep_Type hls_flow_step_type)
Constructor.
const CustomUnorderedSet< std::tuple< HLSFlowStep_Type, HLSFlowStepSpecializationConstRef, HLSFlowStep_Relationship > > ComputeHLSRelationships(const DesignFlowStep::RelationshipType relationship_type) const override
ComputeHLSRelationships datapath need kernel in order to be created.
Base object for all the structural objects.