40 #ifndef CONTROL_FLOW_CHECKER_HPP 41 #define CONTROL_FLOW_CHECKER_HPP const HLS_managerRef HLSMgr
information about all the HLS synthesis
RelationshipType
The relationship type.
ControlFlowChecker(const ParameterConstRef Param, const HLS_managerRef HLSMgr, unsigned int funId, const DesignFlowManagerConstRef design_flow_manager)
Constructor.
const unsigned int funId
identifier of the function to be processed (0 means that it is a global step)
static bool IsOneHotFSM(unsigned int function_id, const HLS_managerRef HLSMgr)
void add_start_port(structural_objectRef circuit)
~ControlFlowChecker() override
Destructor.
void add_common_ports(structural_objectRef circuit, unsigned int state_bitsize)
void add_present_state(structural_objectRef circuit, unsigned int state_bitsize)
const Wrefcount< const DesignFlowManager > design_flow_manager
The design flow manager.
DesignFlowStep_Status
The status of a step.
const CustomUnorderedSet< std::tuple< HLSFlowStep_Type, HLSFlowStepSpecializationConstRef, HLSFlowStep_Relationship > > ComputeHLSRelationships(const DesignFlowStep::RelationshipType relationship_type) const override
Return the set of analyses in relationship with this design step.
void add_clock_reset(structural_objectRef circuit)
DesignFlowStep_Status InternalExec() override
Execute the step.
void add_done_port(structural_objectRef circuit)
REF_FORWARD_DECL(structural_object)
void add_notifiers(structural_objectRef circuit)
This class describes a generic module.
Base object for all the structural objects.