A Design for Verification Approach Using an Embedding of PSL in aSML

In this paper, we propose to integrate an embedding of Property Specification Language (PSL) in Abstract State Machines Language (AsmL) with a top–down design for verification approach in order to enable the model checking of large systems at the early stages of the design process. We provide a complete embedding of PSL in the ASM language AsmL, which allows us to integrate PSL properties as a part of the design. For verification, we propose a technique based on the AsmL tool that translates the code containing both the design and the properties into a finite state machine (FSM) representation. We use the generated FSM to run model checking on an external tool, here SMV. Our approach takes advantage of the AsmL language capabilities to model designs at the system level as well as from the power of the AsmL tool in generating both C# code and FSMs from AsmL models. We applied our approach on the PCI-X bus standard, which AsmL model was constructed from the informal standard specifications and a subsequent UML model. Experimental results on the PCI-X bus case study showed a superiority of our approach to conventional verification.

[1]  Matthew B. Dwyer,et al.  Tool-supported program abstraction for finite-state verification , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[2]  Egon Börger Specification and validation methods , 1995 .

[3]  Egon Börger,et al.  Abstract State Machines. A Method for High-Level System Design and Analysis , 2003 .

[4]  Sofiène Tahar,et al.  Design for Verification of the PCI-X Bus , 2006, 2006 Formal Methods in Computer Aided Design.

[5]  Koen Claessen,et al.  An Operational Semantics for Weak PSL , 2004, FMCAD.

[6]  Michael J. C. Gordon,et al.  Validating the PSL/Sugar Semantics Using Automated Reasoning , 2003, Formal Aspects of Computing.

[7]  Wolfram Schulte,et al.  Semantic essence of AsmL , 2003, Theor. Comput. Sci..

[8]  S. Tahar,et al.  Design for verification of a PCI bus in SystemC , 2004, 2004 International Symposium on System-on-Chip, 2004. Proceedings..

[9]  M. Gordon,et al.  Introduction to HOL: a theorem proving environment for higher order logic , 1993 .

[10]  Sofiène Tahar,et al.  Enabling SystemC Verification using Abstract State Machines , 2004, FDL.

[11]  Min An Song System Level Assertion-Based Verification Environment for PCI/PCI-X and PCI-Express , 2007 .

[12]  Charles Wallace,et al.  The semantics of the C++ programming language , 1995, Specification and validation methods.

[13]  Yuri Gurevich,et al.  The Semantics of the C Programming Language , 1992, CSL.

[14]  S. Tahar,et al.  Embedding and Verification of PSL using ASM , 2006, 2006 6th International Workshop on System on Chip for Real Time Applications.

[15]  Margus Veanes,et al.  Generating finite state machines from abstract state machines , 2002, ISSTA '02.

[16]  Alan J. Hu,et al.  Monitor-Based Formal Specification of PCI , 2000, FMCAD.

[17]  Yi-Jong Yeh,et al.  SYSTEM LEVEL ASSERTION-BASED VERIFICATION ENVIRONMENT FOR PCI/PCI-X AND PCI-EXPRESS , 2004 .

[18]  Rolf Drechsler,et al.  Checkers for SystemC designs , 2004, Proceedings. Second ACM and IEEE International Conference on Formal Methods and Models for Co-Design, 2004. MEMOCODE '04..

[19]  A. Habibi,et al.  A framework for system level verification: the systemc case , 2005 .

[20]  Kenneth L. McMillan,et al.  Symbolic model checking , 1992 .

[21]  Yuri Gurevich Specification and validation methods , 1993, Specification and validation methods.

[22]  Sofiène Tahar,et al.  Formal verification of ASMs using MDGs , 2008, J. Syst. Archit..

[23]  Sofiène Tahar,et al.  On the Transformation of SystemC to AsmL Using Abstract Interpretation , 2005, Electron. Notes Theor. Comput. Sci..

[24]  Kirsten Winter,et al.  Model Checking for Abstract State Machines , 2008, J. Univers. Comput. Sci..

[25]  Joe Hurd,et al.  Executing the Formal Semantics of the Accellera Property Specification Language by Mechanised Theorem Proving , 2003, CHARME.