|
ABSTRACT
Most formal verification tools on the market convert a high-level register transfer level (RTL) design into a bit-level model. Algorithms that operate at the bit-level are unable to exploit the structure provided by the higher abstraction levels, and thus, are less scalable. This tutorial surveys recent advances in formal verification using high-level models. We present word-level verification with predicate abstraction and satisfiability modulo theories (SMT) solvers. We then describe techniques for term-level modeling and ways to combine word-level and term-level approaches for scalable verification.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
 |
2
|
|
| |
3
|
D. Babić and M. Musuvathi. Modular Arithmetic Decision Procedure. Technical report, Microsoft Research, Redmond, 2005.
|
| |
4
|
|
 |
5
|
Clark W. Barrett , David L. Dill , Jeremy R. Levitt, A decision procedure for bit-vector arithmetic, Proceedings of the 35th annual conference on Design automation, p.522-527, June 15-19, 1998, San Francisco, California, United States
[doi> 10.1145/277044.277186]
|
| |
6
|
S. Berezin, V. Ganesh, and D. Dill. A decision procedure for fixed-width bit-vectors. Technical report, Computer Science Department, Stanford University, April 2005.
|
| |
7
|
|
 |
8
|
A. Biere , A. Cimatti , E. M. Clarke , M. Fujita , Y. Zhu, Symbolic model checking using SAT procedures instead of BDDs, Proceedings of the 36th ACM/IEEE conference on Design automation, p.317-320, June 21-25, 1999, New Orleans, Louisiana, United States
[doi> 10.1145/309847.309942]
|
| |
9
|
|
| |
10
|
R. Bruttomesso, A. Cimatti, A. Franzen, A. Griggio, Z. Hanna, A. Nadel, A. Palti, and R. Sebastiani. A lazy and layered SMT(BV) solver for hard industrial verification problems. In Computer Aided Verification (CAV), LNCS. Springer, 2007.
|
| |
11
|
R. E. Bryant, D. Kroening, J. Ouaknine, S. A. Seshia, O. Strichman, and B. Brady. Deciding bit-vector arithmetic with abstraction. In O. Grumberg and M. Huth, editors, Tools and Algorithms for the Construction and Analysis of Systems (TACAS), volume 4424 of LNCS, pages 358--372. Springer, 2007.
|
| |
12
|
|
 |
13
|
Cristian Cadar , Vijay Ganesh , Peter M. Pawlowski , David L. Dill , Dawson R. Engler, EXE: automatically generating inputs of death, Proceedings of the 13th ACM conference on Computer and communications security, October 30-November 03, 2006, Alexandria, Virginia, USA
[doi> 10.1145/1180405.1180445]
|
| |
14
|
|
 |
15
|
Edmund M. Clarke , Orna Grumberg , David E. Long, Model checking and abstraction, Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.343-354, January 19-22, 1992, Albuquerque, New Mexico, United States
[doi> 10.1145/143165.143235]
|
| |
16
|
|
| |
17
|
|
| |
18
|
E. Clarke, M. Talupur, and D. Wang. SAT based predicate abstraction for hardware verification. In SAT, 2003.
|
| |
19
|
|
| |
20
|
E. M. Clarke and H. Veith. Counterexamples revisited: Principles, algorithms, applications. In Verification: Theory and Practice, pages 208--224. Springer, 2003.
|
| |
21
|
B. Cook, D. Kroening, and N. Sharygina. Cogent: Accurate theorem proving for program verification. In Proceedings of CAV 2005, pages 296--300. Springer, 2005.
|
| |
22
|
Cadence SMV, http://www.kenmcmil.com/smv.html.
|
| |
23
|
|
| |
24
|
B. Dutertre and L. de Moura. The Yices SMT solver. Available at http://yices.csl.sri.com/tool-paper.pdf, September 2006.
|
| |
25
|
V. Ganesh and D. Dill. A decision procedure for bit-vectors and arrays. In Computer Aided Verification (CAV), LNCS. Springer, 2007.
|
| |
26
|
|
 |
27
|
|
 |
28
|
Himanshu Jain , Daniel Kroening , Natasha Sharygina , Edmund Clarke, Word level predicate abstraction and refinement for verifying RTL verilog, Proceedings of the 42nd annual conference on Design automation, June 13-17, 2005, Anaheim, California, USA
[doi> 10.1145/1065579.1065697]
|
| |
29
|
|
| |
30
|
|
| |
31
|
|
 |
32
|
|
| |
33
|
K. L. McMillan. An interpolating theorem prover. In TACAS, pages 16--30. Springer, 2004.
|
| |
34
|
MiniSat. http://www.cs.chalmers.se/Cs/Research/FormalMethods/MiniSat/.
|
 |
35
|
G. Parthasarathy , M. K. Iyer , K.-T. Cheng , L.-C. Wang, An efficient finite-domain constraint solver for circuits, Proceedings of the 41st annual conference on Design automation, June 07-11, 2004, San Diego, CA, USA
[doi> 10.1145/996566.996628]
|
 |
36
|
|
|