Open computation tree logic for formal verification of modules

Modules of large VLSI circuits are often designed by different designers spread across the globe. One of the main challenges of the designer is to guarantee that the module he/she designs will work correctly in the global design, the details of which, is often unknown to him/her. Modules are open systems whose behavior is subject to the inputs it receives from its environment. It has been shown that verification of open systems (modules) is computationally very hard (EXPTIME complete, 1996) when we consider all possible environments. On the other hand we show that integrating the specification of the properties to be verified with the specification of only the valid input patterns (under which the module is expected to function correctly) gives us a powerful syntax which can be verified in polynomial time. We call the proposed logic Open-CTL (CTL for open systems). The convenience of being able to specify the property and the environment in a unified way in Open-CTL is demonstrated through a study of the PCI Bus properties. We present a symbolic BDD-based verification scheme for checking Open-CTL formulas, and present experimental results on modules from the Texas-97 Verification Benchmark circuits.

[1]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[2]  Tom Shanley,et al.  PCI System Architecture , 1993 .

[3]  Edward Solari,et al.  PCI hardware and software: Architecture and design , 1994 .

[4]  Orna Kupferman,et al.  Module Checking Revisited , 1997, CAV.

[5]  Fabio Somenzi,et al.  CUDD: CU Decision Diagram Package Release 2.2.0 , 1998 .

[6]  Orna Kupferman,et al.  Module Checking , 1996, Inf. Comput..

[7]  Orna Grumberg,et al.  Model checking and modular verification , 1994, TOPL.

[8]  Edmund M. Clarke,et al.  Symbolic model checking for sequential circuit verification , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[9]  Tiziano Villa,et al.  VIS: A System for Verification and Synthesis , 1996, CAV.