Functional Equivalence Checking for Evolution of Complex Digital Circuits

Inspired by a seminal paper (Higuchi et al, 1993), many researchers have started to work on evolutionary design and optimisation of combinational digital circuits. In this method, electronic circuits encoded as strings of symbols are constructed and optimised by the EA in order to obtain a circuit implementation satisfying the specification. In order to evaluate a candidate circuit, a reconfigurable circuit (or its simulator if evolution is performed using a circuit simulator) is reconfigured using a new configuration created on the basis of the chromosome (i.e. configuration string) content. The configured device is then evaluated and its behaviour is compared with the desired behaviour. The fitness score is calculated, which reflects to what extent the candidate circuit satisfies the specification. The main reason why evolutionary circuit design has been studied and developed is its ability to (i) provide novel designs hardly reachable by means of conventional methods; (ii) deliver good solutions for problems where the specification is inherently incomplete and no golden solution exists; and (iii) achieve adaptation/fault tolerance directly at the hardware level. Recent overviews of applications and design methods can be found, for example, in (Sekanina et al, 2011; Haddow and Tyrrell, 2011; Sekanina, 2012).

[1]  Leandro Maia Silva,et al.  Improving SAT-based Combinational Equivalence Checking through circuit preprocessing , 2008, 2008 IEEE International Conference on Computer Design.