PandA-2024.02
Public Member Functions | Protected Member Functions
XilinxTasteBackendFlow Class Reference

superclass include More...

#include <xilinx_taste_backend_flow.hpp>

Inheritance diagram for XilinxTasteBackendFlow:
Inheritance graph
[legend]
Collaboration diagram for XilinxTasteBackendFlow:
Collaboration graph
[legend]

Public Member Functions

 XilinxTasteBackendFlow (const ParameterConstRef &parameters, const std::string &flow_name, const generic_deviceRef _device)
 Constructor. More...
 
std::string GenerateSynthesisScripts (const std::string &fu_name, const structural_managerRef SM, const std::list< std::string > &hdl_files, const std::list< std::string > &aux_files) override
 Generates the synthesis scripts for the specified design. More...
 
- Public Member Functions inherited from XilinxBackendFlow
 XilinxBackendFlow (const ParameterConstRef Param, const std::string &flow_name, const generic_deviceRef _device)
 Constructor. More...
 
 ~XilinxBackendFlow () override
 Destructor. More...
 
void InitDesignParameters () override
 Initializes the parameters. More...
 
void ExecuteSynthesis () override
 Checks if the execution can be performed and, in case, performs the synthesis. More...
 
- Public Member Functions inherited from BackendFlow
 BackendFlow (const ParameterConstRef Param, std::string flow_name, const generic_deviceRef _device)
 Constructor. More...
 
virtual ~BackendFlow ()
 Destructor. More...
 
void Execute (const std::string &top_id, const std::string &top_normalized, const std::string &filestring, const std::string &filename_bench, const std::string &clock, double clk_period, bool syntax_check)
 Executes the synthesis with the implemented flow. More...
 
std::string CreateScripts (const DesignParametersRef dp)
 Creates the scripts for the specified tools in the right order, along with the overall configuration. More...
 
void parse_flow (const XMLDomParserRef parser)
 Creates the synthesis flow based on the user's requirements. More...
 
void create_xml_scripts (const std::string &xml_file)
 Creates the XML script containing all the steps. More...
 
void add_backend_step (const BackendStepRef &step)
 Adds a backend step to the list of the ones to be performed. More...
 
std::string get_flow_name () const
 Returns the name of the flow. More...
 
void set_initial_parameters (const DesignParametersRef &flow_parameters, const CustomOrderedSet< std::string > &undefined_parameters)
 Sets parameters. More...
 
void set_parameters (const DesignParametersRef &_flow_parameters)
 Sets actual parameters. More...
 
area_infoRef get_used_resources () const
 Returns the list of used resources. More...
 
time_infoRef get_timing_results () const
 Returns the timing information. More...
 

Protected Member Functions

void create_cf (const DesignParametersRef dp, bool xst) override
 Creates the UCF file. More...
 
- Protected Member Functions inherited from XilinxBackendFlow
void WriteFlowConfiguration (std::ostream &script) override
 Writes the proper flow configuration in the output script. More...
 
void CheckSynthesisResults () override
 Checks the synthesis results and fills the corresponding data-structures. More...
 
void xparse_xst_utilization (const std::string &fn)
 Parses the utilization file in XML format. More...
 
void parse_DSPs (const std::string &log_file)
 retrieve the number of DSPs from the xst log More...
 
void xparse_map_utilization (const std::string &fn)
 Parses the utilization file in XML format. More...
 
void vivado_xparse_utilization (const std::string &fn)
 parse vivado results More...
 
void xparse_timing (const std::string &fn)
 Fixed the parsing of timing results from trce. More...
 
void parse_timing (const std::string &log_file)
 Fixed the parsing of timing results from xst. More...
 
- Protected Member Functions inherited from BackendFlow
void ParseBackendFlow (const std::string &flow_name)
 Parses the description of the backend flow given its identifier. More...
 
void xload (const xml_element *node)
 Loads the backend flow from an XML node. More...
 

Additional Inherited Members

- Public Types inherited from BackendFlow
using type_t = enum { UNKNOWN, XILINX_FPGA, ALTERA_FPGA, LATTICE_FPGA, NANOXPLORE_FPGA, GENERIC, }
 implemented flow More...
 
- Static Public Member Functions inherited from BackendFlow
static BackendFlowRef CreateFlow (const ParameterConstRef Param, const std::string &flow_name, const generic_deviceRef _device)
 Creates the flow specification based on the given parameters. More...
 
static type_t DetermineBackendFlowType (const generic_deviceRef device, const ParameterConstRef parameters)
 Determines the type of the backend flow based on the target device. More...
 
- Protected Attributes inherited from XilinxBackendFlow
std::map< std::string, double > design_values
 results from the synthesis More...
 
- Protected Attributes inherited from BackendFlow
const ParameterConstRef Param
 class containing all the parameters More...
 
int debug_level
 debugging level of the class More...
 
unsigned int output_level
 verbosity level of the class More...
 
std::string flow_name
 string-based identifier of the flow More...
 
std::string out_dir
 name of the output directory More...
 
std::map< std::string, std::string > default_data
 map between the identifiers of the synthesis flows and the corresponding implementations More...
 
const generic_deviceRef device
 information about the target device More...
 
xml_elementroot
 root node of the configuration device More...
 
area_infoRef area_m
 pointer to the data structure containing information about the resources More...
 
time_infoRef time_m
 pointer to the data structure containing timing information More...
 
std::vector< BackendStepRefsteps
 ordered list of synthesis steps More...
 
DesignParametersRef default_flow_parameters
 set of design parameters to be set More...
 
CustomOrderedSet< std::string > undefined_parameters
 list of undefined parameters More...
 
DesignParametersRef actual_parameters
 set of design parameters with the actual values More...
 
std::string generated_synthesis_script
 name of the synthesis script More...
 

Detailed Description

superclass include

Definition at line 46 of file xilinx_taste_backend_flow.hpp.

Constructor & Destructor Documentation

◆ XilinxTasteBackendFlow()

XilinxTasteBackendFlow::XilinxTasteBackendFlow ( const ParameterConstRef parameters,
const std::string &  flow_name,
const generic_deviceRef  _device 
)

Constructor.

Parameters
parametersis the set of input parameters
flow_nameis the name of the create flow
manageris the target manager

Definition at line 56 of file xilinx_taste_backend_flow.cpp.

References BackendFlow::debug_level, and GET_CLASS.

Member Function Documentation

◆ create_cf()

void XilinxTasteBackendFlow::create_cf ( const DesignParametersRef  dp,
bool  xst 
)
overrideprotectedvirtual

◆ GenerateSynthesisScripts()

std::string XilinxTasteBackendFlow::GenerateSynthesisScripts ( const std::string &  fu_name,
const structural_managerRef  SM,
const std::list< std::string > &  hdl_files,
const std::list< std::string > &  aux_files 
)
overridevirtual

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

Generated on Mon Feb 12 2024 13:04:11 for PandA-2024.02 by doxygen 1.8.13