216 void print(std::ostream& os)
const;
long HLS_execution_time
HLS execution time.
structural_managerRef datapath
Store the datapath description.
const ParameterConstRef Param
class containing all the parameters
Class managing the register binding.
Class managing the schedule of the operations.
void print_register_grouping(std::ostream &os) const
Prints on stream the register grouping (if it has been performed).
This class manages the circuit structures.
const HLS_deviceRef HLS_D
reference to the information representing the target for the synthesis
AllocationInformationRef allocation_information
Store the technology information.
OpVertexSet operations
Set representing the subset of operations in the specification to be implemented. ...
void xwrite(xml_element *rootnode, const OpGraphConstRef data)
Writes current HLS results to XML node.
Class used to manage a graph into finite state machine representation; it contains methods to build t...
A set of operation vertices.
HLSFlowStep_Type controller_type
The type of controller to be instantiated.
void print_connection_binding(std::ostream &os) const
Prints on stream the connection binding (if it has been performed).
void PrintScheduling() const
Prints on stream the scheduling (if it has been performed).
structural_managerRef top
Store the top description.
bool registered_inputs
true when the module has registered inputs
hls(const ParameterConstRef Param, unsigned int function_id, OpVertexSet operations, const HLS_deviceRef HLS_D, const HLS_constraintsRef HLS_C)
fu_bindingRef Rfu
Store the refcounted functional unit binding of the operations.
ScheduleRef Rsch
Store the refcounted scheduling of the operations.
StorageValueInformationRef storage_value_information
data-structure for storage values
HLSFlowStep_Type module_binding_algorithm
The type of module binding to be adopted.
int output_level
verbosity level of the class
Class managing the interconnection binding.
Data structure used to store all the HLS constraints.
reg_bindingRef Rreg
Store the refcounted register binding of the variables.
livenessRef Rliv
data-structure containing the variable liveness
Template definition of refcount.
structural_managerRef controller
Store the controller description.
void print(std::ostream &os) const
Prints the hls solution available up to now.
bool registered_done_port
true when the done port is registered
structural_managerRef control_flow_checker
Store the description of the control flow checker.
reg_bindingRef RregGroup
Store the refcounted register group binding of the variables.
void print_register_binding(std::ostream &os) const
Prints on stream the register binding (if it has been performed).
HLSFlowStep_Type chaining_algorithm
The type of chaining algorithm to be adopted.
Data structures used in operations graph.
Template borrowed from the ANTLR library by Terence Parr (http://www.jGuru.com - Software rights: htt...
void xload(const xml_element *rootnode, const OpGraphConstRef data)
Loads previous HLS results from XML node.
void PrintResources() const
Prints the summary of allocated resources.
unsigned int functionId
this is the identifier of the function to be implemented
friend std::ostream & operator<<(std::ostream &os, const hls &s)
Friend definition of the << operator.
StateTransitionGraphManagerRef STG
Store the refcounted state transition graph.
Data structure that contains all information about high level synthesis process.
Class managing the functional-unit binding.
const HLS_constraintsRef HLS_C
store the HLS constraints
Class used to describe a particular graph with operations as nodes.
REF_FORWARD_DECL(AllocationInformation)
CONSTREF_FORWARD_DECL(OpGraph)
conn_bindingRef Rconn
Store the refcounted interconnection of datapath elements.
int debug_level
debugging level of the class
ChainingInformationRef chaining_information
Store the refcounted chaining info.
size_t call_sites_number
The number of call points to this function.
HLSFlowStep_Type liveness_algorithm
The type of liveness algorithm to be adopted.