Hardware verification using ANSI-C programs as a reference

We describe an algorithm to verify a hardware design given in Verilog using an ANSI-C program as a specification. We use SAT based Bounded Model Checking [1] in order to reduce the equivalence problem to a bit vector logic decision problem. As a case study, we describe experimental results on a hardware and a software implementation of the data encryption standard (DES) algorithm.

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

[2]  Andrew Seawright,et al.  RTL c-based methodology for designing and verifying a multi-threaded processor , 2002, DAC '02.

[3]  Carl Pixley,et al.  Guest Editor's Introduction: Formal Verification of Commercial Integrated Circuits , 2001, IEEE Des. Test Comput..

[4]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[5]  C. Pixley,et al.  Formal verification of commercial integrated circuits , 2001 .

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