Word Level Predicate Abstraction and Refinement for Verifying RTL Verilog

Abstract

Model checking techniques applied to large industrial circuits suffer from the state space explosion problem. A major technique to address this problem is abstraction. The most commonly used abstraction technique for hardware verification is localization reduction, which removes latches that are not relevant to the property. However, localization reduction fails to reduce the size of the model if the property actually depends on most of the latches. This paper proposes to use predicate abstraction for verifying RTL Verilog, a technique successfully used for software verification. The main challenge when using predicate abstraction is the discovery of suitable predicates. We propose to use weakest pre-conditions of Verilog statements in order to obtain new predicates during abstraction refinement. This technique has not been applied to circuits before. On benchmarks taken from an industrial microprocessor, we successfully verified safety properties with more than 32,000 latches in the cone of influence. We compare the performance of our technique with a modern model checker that implements localization reduction.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jun 01, 2005
Accession Number
ADA470547

Entities

People

  • Daniel Kroening
  • Edmund M. Clarke
  • Himanshu Jain
  • Natasha Sharygina

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • C4I

DTIC Thesaurus Topics

  • Abstracts
  • Algorithms
  • Computations
  • Computer-Aided Design
  • Computers
  • Concrete
  • Engineering
  • Equations
  • Hard Copy
  • Instructions
  • Language
  • Military Research
  • Simulations
  • Software Development
  • Transitions
  • Verification

Fields of Study

  • Computer science

Readers

  • Applied Combinatorial Optimization and Logic Circuit Design.
  • Computer Engineering
  • Mathematical Modeling and Probability Theory.

Technology Areas

  • Space