Seqver : A Sequential Equivalence Verifier for Hardware Designs

This paper addresses the problem of formal equivalence verification of hardware designs. Traditional methods and tools which perform equivalence verification are commonly based on combinational equivalence verification (CEV) methods. We however present a novel method and tool (Seqver) for performing sequential equivalence verification (SEV). The theory behind Seqver is based on the alignability theory, however in this paper we present a refinement to that theory: strong alignability, which introduces a concept of automatic model synchronization to the verification process. Automatic synchronization (reset) of sequential synchronous circuits is considered as one of the most challenging tasks in the domain of sequential equivalence verification. Earlier attempts were based on BDDs or classical reachability analysis, which by nature suffer from capacity limitations. Seqver is empowered with hybrid verification engines which combine state of the art SAT and BDD based engines for performing synchronization and verification. Seqver is widely used today in Intel for formally verifying leading next generation CPU designs.

[1]  Masahiro Fujita,et al.  Symbolic model checking using SAT procedures instead of BDDs , 1999, DAC '99.

[2]  Fabio Somenzi,et al.  Logic synthesis and verification algorithms , 1996 .

[3]  Seh-Woong Jeong,et al.  Exact calculation of synchronizing sequences based on binary decision diagrams , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[4]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[5]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[6]  E. Clarke,et al.  Symbolic model checking using SAT procedures instead of BDDs , 1999, Proceedings 1999 Design Automation Conference (Cat. No. 99CH36361).

[7]  Zurab Khasidashvili,et al.  Post-reboot Equivalence and Compositional Verification of Hardware , 2006, 2006 Formal Methods in Computer Aided Design.

[8]  A. Rosenmann,et al.  Alignability equivalence of synchronous sequential circuits , 2002, Seventh IEEE International High-Level Design Validation and Test Workshop, 2002..

[9]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

[10]  守屋 悦朗,et al.  J.E.Hopcroft, J.D. Ullman 著, "Introduction to Automata Theory, Languages, and Computation", Addison-Wesley, A5変形版, X+418, \6,670, 1979 , 1980 .

[11]  Mary Sheeran,et al.  Checking Safety Properties Using Induction and a SAT-Solver , 2000, FMCAD.

[12]  Olivier Coudert,et al.  Verification of Synchronous Sequential Machines Based on Symbolic Execution , 1989, Automatic Verification Methods for Finite State Systems.

[13]  Irith Pomeranz,et al.  On Removing Redundancies from Synchronous Sequential Circuits with Synchronizing Sequences , 1996, IEEE Trans. Computers.

[14]  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..

[15]  Anna Philippou,et al.  Tools and Algorithms for the Construction and Analysis of Systems , 2018, Lecture Notes in Computer Science.

[16]  Carl Pixley,et al.  A theory and implementation of sequential hardware equivalence , 1992, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[17]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.