Exchangeable components

Estimation component overview

Estimation component

Note

The Estimation component is not customizable yet.

The Estimation component is used by the framework to generate statistics of the circuits generated during the approximation process. Statistics of interest are, for example, area, delay, power, energy, and error. These statistics can either be directly used or incorporated into a heuristic to compare circuits with each other. This information can then guide the search to improve the target metric. CIRCA currently invokes ABC’s if command to synthesize a circuit and to obtain estimations about area, delay, and power dissipation due to switching.

Functions

estimateCircuitStats(nodes: List<Node>): None

This method implements the main functionality of the Estimation stage. It is called each time the approximation stage yields another set of approximated circuits. As for all stages, the circuits are represented by their Nodes, hence the parameter of the method is a list of Node instances.

Every Node has a parameter called stats which contains a dictionary. Initially, this dictionary is empty, and it is this method’s task to fill in useful statistics in the form of key-value entries like "statName": statValue where statName is one of the supported metrics and statValue is its value of type float, or None if no value for this metric was found.


Back to the Developer Guide