=================== Estmation component =================== * :ref:`Input component ` * :ref:`Quality assurance component ` * :ref:`Approximation component ` * **Estimation component** * :ref:`Search component ` * :ref:`Output ` .. .. _user_guide_estimation: .. Estimation component .. ==================== .. _user_guide_estimation: Component description --------------------- The *Estimation* component utilizes synthesis tools to synthesize the approximated circuits, i.e., a particular circuit configuration. From the synthesis reports, CIRCA extracts the circuit parameters of interest and attaches them to the circuit under investigation. In the search block, the circuit's statistics is used to evaluate the approximated circuit, for example, with a heuristic function. In this way, the different circuits generated throughout the approximation process can be ranked to find the best-suited circuit for the user. Common target metrics are *hardware area*, *circuit delay*, and *power or energy consumption*. abc_if ------ CIRCA's standard Estimation implementation is ``abc_if``. The implementation utilizes :ref:`ABC `'s ``if`` command to perform a technology mapping to FPGA 4-LUTs. The reported circuit statistics are stored in a file in the directory *approx_circuits*. From these files CIRCA extracts the statistics of each circuit, i.e., area, delay, and power dissipation due to switching. .. ``abc_if`` uses ABC's internal circuit representation to perform a technology mapping and then write the acquired circuit statistics into a stat-file. The stat-files of all estimated circuits can be found in the *approx_circuits* directory. A parser extracts the desired information from the stat-file of each circuit. .. .. admonition:: Notes and restrictions .. * The *delay* value generated by ``abc_if`` does not change during the approximation process of some circuits. It is recommended to use the *area* or *power* value. Configuration options --------------------- :``Method``: ``abc_if`` .. note:: ABC's if command provides some configuration parameters. ``abc_if``, however, does not provide these parameters in the configuration file. If you need to adjust the parameters, e.g., the number of the input of the LUTs, feel free to modify the code and extend the configuration possibilities. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :ref:`Back to the User Guide `