front_end.front_end module¶
-
class
front_end.front_end.FrontEnd(settings)¶ Bases:
abc.ABCAbstract Base Class for FrontEnd stage. The FrontEnd stage parses the input design and configuration file and initializes data structures for the next stages.
- Inheriting classes must implement methods:
- __init__ setup process
Parameters: settings (dict) – A dictionary using options from the config as keys and strings of their values as values. -
__init__(settings)¶ Instantiates a subclass instance using the options from the configuration file.
-
setup(cfg_file, input_file)¶ Sets up the FrontEnd instance using config and input files. Provides default implementation.
Parameters: - cfg_file (str) – The absolute path to the configuration file in *.cfg format.
- input_file (str) – The absolute path to the input circuit file in Verilog format.
Raises: ValueError– If cfg_file or input_file is invalid, i.e.Noneor empty.
-
process()¶ Returns a GeneralInformation instance: Must generate a CandidateSet, VariantSet and ApproximatedCircuits, set paths and create directories. Must also create Verilog and Blif format files of the original circuit.
- Parameters to set in GeneralInformation object:
- top_module pis pos cand_set variant_set approx_circuits base_directory (optional, default is input file path) output_dir (optional, default is input file path)