Synchronization verification in system-level design with ILP solvers

  • Authors:
  • T. Sakunkonchak;S. Komatsu;M. Fujita

  • Affiliations:
  • VLSI Design&Educ. Center, Tokyo Univ., Japan;VLSI Design&Educ. Center, Tokyo Univ., Japan;VLSI Design&Educ. Center, Tokyo Univ., Japan

  • Venue:
  • MEMOCODE '05 Proceedings of the 2nd ACM/IEEE International Conference on Formal Methods and Models for Co-Design
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Concurrency is one of the most important issues in system-level design. Interleaving among parallel processes can cause an extremely large number of different behaviors, making design and verification difficult tasks. In this work, we propose a synchronization verification method for system-level designs described in the SpecC language. Instead of modeling the design with timed FSMs and using a model checker for timed automata (such as UPPAAL or KRONOS), we formulate the timing constraints with equalities/inequalities that can be solved by integer linear programming (ILP) tools. Verification is conducted in two steps. First, similar to other software model checkers, we compute the reachability of an error state in the absence of timing constraints. Then, if a path to an error state exists, its feasibility is checked by using the ILP solver to evaluate the timing constraints along the path. This approach can drastically increase the sizes of the designs that can be verified. Abstraction and abstraction refinement techniques based on the counterexample-guided abstraction refinement (CEGAR) paradigm are applied. The proposed verification flow is introduced and some preliminary results are presented here.