Verification of SpecC using predicate abstraction

  • Authors:
  • Edmund Clarke;Himanshu Jain;Daniel Kroening

  • Affiliations:
  • Computer Science Department, Carnegie Mellon University, Pittsburgh, USA;Computer Science Department, Carnegie Mellon University, Pittsburgh, USA;Computer Systems Institute, ETH Zurich, Switzerland

  • Venue:
  • Formal Methods in System Design
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Languages such as SystemC or SpecC offer modeling of hardware and whole system designs at a high level of abstraction. However, formal verification techniques are widely applied in the hardware design industry only for low level designs, such as a netlist or RTL. The higher abstraction levels offered by these new languages are not yet amenable to rigorous, formal verification. This paper describes how to apply predicate abstraction to SpecC system descriptions. The technique supports the concurrency constructs offered by SpecC. It models the bit-vector semantics of the language accurately, and can be used both for property checking and for checking refinement together with a traditional low-level design given in Verilog.