Equivalence Checking Using Trace Partitioning

One application of equivalence checking is to establish correspondence between a high-level, abstract design and a low-level implementation. We propose a new partitioning technique for the case in which the two designs are substantially different and traditional equivalence-point insertion fails. The partitioning is performed in tandem in both models, exploiting the structure present in the high-level model. The approach generates many but tractable SAT/SMT queries. We present experimental data quantifying the benefit of our partitioning method for both combinational and sequential equivalence checking of difficult arithmetic circuits and control-intensive circuits.

[1]  Shobha Vasudevan,et al.  Scaling RTL property checking using feasible path analysisand decomposition , 2013, GLSVLSI '13.

[2]  C. A. J. van Eijk,et al.  Sequential equivalence checking without state space traversal , 1998, DATE.

[3]  Chittaranjan A. Mandal,et al.  Verification of Datapath and Controller Generation Phase in High-Level Synthesis of Digital Circuits , 2010, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[4]  Masahiro Fujita,et al.  Verification of Arithmetic Circuits by Comparing Two Similar Circuits , 1996, CAV.

[5]  Carl Pixley,et al.  Solver technology for system-level to RTL equivalence checking , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[6]  Sandeep K. Shukla,et al.  Simplification of C-RTL equivalent checking for fused multiply add unit using intermediate models , 2013, 2013 18th Asia and South Pacific Design Automation Conference (ASP-DAC).

[7]  Xavier Rival,et al.  The trace partitioning abstract domain , 2007, TOPL.

[8]  C.A.J. van Eijk Sequential equivalence checking without state space traversal , 1998, Proceedings Design, Automation and Test in Europe.

[9]  Ofer Strichman,et al.  Bounded model checking , 2003, Adv. Comput..

[10]  Jason Baumgartner,et al.  Scalable Sequential Equivalence Checking across Arbitrary Design Transformations , 2006, 2006 International Conference on Computer Design.

[11]  Zurab Khasidashvili,et al.  Theoretical framework for compositional sequential hardware equivalence verification in presence of design constraints , 2004, IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004..

[12]  Daniel Kroening,et al.  Behavioral consistency of C and Verilog programs using bounded model checking , 2003, Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451).

[13]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[14]  M. Hsiao,et al.  Mining global constraints for improving bounded sequential equivalence checking , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[15]  Daniel Kroening,et al.  A Tool for Checking ANSI-C Programs , 2004, TACAS.