Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451)
DOI: 10.1109/dac.2003.1219026
|View full text |Cite
|
Sign up to set email alerts
|

Behavioral consistency of C and Verilog programs using bounded model checking

Abstract: We present an algorithm that checks behavioral consistency between an ANSI-C program and a circuit given in Verilog using Bounded Model Checking. Both the circuit and the program are unwound and translated into a formula that is satisfiable if and only if the circuit and the code disagree. The formula is then checked using a SAT solver. We are able to translate C programs that make use of side effects, pointers, dynamic memory allocation, and loops with conditions that cannot be evaluated statically. We descri… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
41
0

Publication Types

Select...
3
2
1

Relationship

0
6

Authors

Journals

citations
Cited by 38 publications
(41 citation statements)
references
References 8 publications
(5 reference statements)
0
41
0
Order By: Relevance
“…SAT-based model-checking platforms [11,28] have been widely popular thanks to significant progress in SAT solvers. The most famous BMC tools are CBMC [13,15] and F-Soft [28]. They have been designed to handle reachability properties.…”
Section: Model Checkingmentioning
confidence: 99%
See 1 more Smart Citation
“…SAT-based model-checking platforms [11,28] have been widely popular thanks to significant progress in SAT solvers. The most famous BMC tools are CBMC [13,15] and F-Soft [28]. They have been designed to handle reachability properties.…”
Section: Model Checkingmentioning
confidence: 99%
“…There are also many research avenues opened by this research, three of which are reviewed now. 15 SMT-based bounded model checking is based on the idea of representing and checking quantifierfree formulas in a more general decidable theory (e.g. [22,25,31]).…”
Section: Perspectives and Future Workmentioning
confidence: 99%
“…Given the formula C corresponding to the program (for a given k) and a formula P in the language of C representing the property to verify, the formula C ∧ ¬P is 1. First converted into a propositional one by representing each variable as a bitvector of fixed size and the operations as bit-vector operations (see [8] for details), And then into Conjunctive Normal Form (CNF) using well known conversion methods (see, e.g., [26]). …”
Section: Bounded Model Checking For Software Verificationmentioning
confidence: 99%
“…CBMC reduces the model checking problem to determining the validity of a bit-vector equation; full details are presented elsewhere [11]. In a process analogous to that used for Bounded Model Checking of Kripke structures, the transition system is unwound by duplicating the loop bodies in the case of for and while loops, duplicating code in the case of loops build by means of backward goto statements, and function inlining in the case of recursive functions.…”
Section: Bounded Model Checking For C Programsmentioning
confidence: 99%