45 #ifndef HDL_MANAGER_HPP 46 #define HDL_MANAGER_HPP 49 #include "config_HAVE_FLOPOCO.hpp" 87 const technology_managerConstRef
TM;
112 std::list<structural_objectRef>& list_of_com)
const;
118 const std::list<structural_objectRef>& components,
119 std::list<std::string>& aux_files)
const;
125 std::list<std::string>& hdl_files, std::list<std::string>& aux_files,
bool tb);
134 std::list<std::string>& aux_files)
const;
172 const std::string& behav)
const;
205 void hdl_gen(
const std::string&
filename,
const std::list<structural_objectRef>& cirs,
206 std::list<std::string>& hdl_files, std::list<std::string>& aux_files,
bool tb);
generic device description
static std::string get_mod_typename(const language_writer *lan, const structural_objectRef &cir)
Returns the module typename taking into account even the flopoco customizations.
static std::string convert_to_identifier(const language_writer *writer, const std::string &id)
Converts a generic string to a language compliant identifier.
void write_fsm(const language_writerRef writer, const structural_objectRef &cir, const std::string &fsm_desc) const
Writes a mealy/moore finite state machine behavioral description.
void hdl_gen(const std::string &filename, const std::list< structural_objectRef > &cirs, std::list< std::string > &hdl_files, std::list< std::string > &aux_files, bool tb)
Generates HDL code.
HDL_manager(const HLS_managerRef _HLSMgr, const generic_deviceRef device, const ParameterConstRef parameters)
Constructor.
This class manages the circuit structures.
void write_flopoco_module(const structural_objectRef &cir, std::list< std::string > &aux_files) const
Writes the FloPoCo module description to a VHDL file.
~HDL_manager()
Destructor.
const int debug_level
The debug level.
void write_module(const language_writerRef writer, const structural_objectRef cir, std::list< std::string > &aux_files) const
Writes the module description.
Base class for step of design flow.
const HLS_managerRef HLSMgr
The high level synthesis manager.
void get_post_order_structural_components(const structural_objectRef cir, std::list< structural_objectRef > &list_of_com) const
Returns the list of components that have a structural-based description.
This class manages the technology library structures.
bool is_fsm(const structural_objectRef &cir) const
Returns true if the module has a FSM description associated with, false otherwise.
const ParameterConstRef parameters
The set of input parameters.
Template definition of refcount.
const generic_deviceRef device
reference to the target device
Main class for wrapping the FloPoCo code generator.
void io_signal_fix_ith(const language_writerRef writer, const structural_objectRef po, bool &lspf) const
Writes signal port connection post fix.
Template borrowed from the ANTLR library by Terence Parr (http://www.jGuru.com - Software rights: htt...
HDL writer base class used to specify the interface of the different language writers.
REF_FORWARD_DECL(HDL_manager)
const structural_managerRef SM
The structural manager containing top.
const technology_managerConstRef TM
reference to the class containing all the technology information
std::string write_components(const std::string &filename, const HDLWriter_Language language, const std::list< structural_objectRef > &components, std::list< std::string > &aux_files) const
Generates the HDL description for the given components in the specified language. ...
CONSTREF_FORWARD_DECL(technology_manager)
void write_behavioral(const language_writerRef writer, const structural_objectRef &cir, const std::string &behav) const
Writes the behavioral description associated with the component.
void io_signal_fix_ith_vector(const language_writerRef writer, const structural_objectRef po, bool &lspf) const
Base object for all the structural objects.