Skip to main content

A unified approach for combining different formalisms for hardware verification

  • Conference paper
  • First Online:
Formal Methods in Computer-Aided Design (FMCAD 1996)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1166))

Included in the following conference series:

Abstract

Model Checking as the predominant technique for automatically verifying circuits suffers from the well-known state explosion problem. This hinders the verification of circuits which contain non-trivial data paths. Recently, it has been shown that for those circuits it may be useful to separate the control and data part prior to verification. This paper is also based on this idea and presents an approach for combining various proof approaches like model checking and theorem proving in a unifying framework. In contrast to other approaches, special proof procedures are available to verify circuits with data sensitive controllers, where a bidirectional signal flow between controller and data path can be found. Generic circuits can be verified by induction or by model checking finite instantiations.

By giving the system ‘proof hints’, also the verification effort for model checking based proofs can be considerably reduced in many cases. The paper presents an introduction to the different proof strategies as well as an algorithm for their combination. The underlying C@S system also allows the efficiency evaluation of different approaches to verify the same circuits. This is shown in different case studies, demonstrating the trade-off between interaction and verifiable circuit size.

This work has been financed by the DFG project Automated System Design, SFB No.358.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R.E. Bryant. Graph-Based Algorithms for Boolean Function Manipulation. IEEE Transactions on Computers, C-35(8):677–691, August 1986.

    Google Scholar 

  2. O. Coudert, C. Berthet, and J.C. Madre. Verification of sequential machines using boolean functional vectors. In L. Claesen, editor, IMEC-IFIP Workshop on Applied Formal Methods for Correct VLSI-Design, 1990.

    Google Scholar 

  3. J.R. Burch, E.M. Clarke, K.L. McMillan, D.L. Dill, and L.J. Hwang. Symbolic Model Checking: 1020 States and Beyond. Information and Computing, 98(2):142–170, June 1992.

    Google Scholar 

  4. M.J.C. Gordon. Why higher-order logic is a good formalism for specifying and verifying hardware. In G.J. Milne and P.A. Subrahmanyam, editors, Formal Aspects of VLSI Design, pages 153–177. Computer Laboratory, University of Cambridge, 1986.

    Google Scholar 

  5. R. Kumar, K. Schneider, and T. Kropf. Structuring and Automating Hardware Proofs in a Higher-Order Theorem-Proving Environment. International Journal of Formal System Design, pages 165–230, 1993.

    Google Scholar 

  6. S. Owre, J.M. Rushby, N. Shankar, and M.K. Srivas. A tutorial on using PVS for hardware verification. In T. Kropf and R. Kumar, editors, Proc. 2nd International Conference on Theorem Provers in Circuit Design (TPCD94), volume 901 of Lecture Notes in Computer Science, pages 258–279, Bad Herrenalb, Germany, September 1994. Springer-Verlag, published 1995.

    Google Scholar 

  7. E.M. Clarke, D.E. Long, and K.L. McMillan. Compositional Model Checking. In Proceedings of Fourth Annual Symposium on Logic in Computer Science, pages 353–361, Washington D.C., June 1989. IEEE Computer Society Press.

    Google Scholar 

  8. E. Clarke, O. Grumberg, and D. Long. Model Checking and Abstraction. In Proceedings of the Nineteenth Annual ACM Symposium on Principles of Programming Languages, New York, January 1992. ACM.

    Google Scholar 

  9. D.E. Long. Model Checking, Abstraction, and Compositional Verification. PhD thesis, Carnegie Mellon University, 1993.

    Google Scholar 

  10. K. Schneider, T. Kropf, and R. Kumar. Control-Path Oriented Verification of Sequential Generic Circuits with Control and Data Path. In Proceeding of the European Design and Test Conference, pages 648–652, Paris, France, March 1994. IEEE Computer Society Press.

    Google Scholar 

  11. M. Langevin, E. Cerny, and R.E. Ladner. An extended OBDD representation for extended FSMs. In The European Design and Test Conference, pages 208–303, Paris, February 1994. IEEE Computer Society Press. EDAC94.

    Google Scholar 

  12. R. Hojati and R.K. Brayton. Automatic Datapath Abstraction in Hardware Systems. In Proc. of the International Conference on Computer-Aided Verification, pages 98–113. Springer Verlag, LNCS, 1995.

    Google Scholar 

  13. H. Hungar, O. Grumberg, and W. Damm. What if model checking must be truly symbolic. In P.E. Camurati and H. Eveking, editors, Correct Hardware Design and Verification Methods, volume 987 of Lecture Notes in Computer Science, pages 1–20, October 1995. IFIP WG10.5 Advanced Research Working Conference CHARME'95, Springer-Verlag.

    Google Scholar 

  14. E. Clarke and X. Zhao. Word level symbolic model checking. Technical Report CMU-CS-95-161, Carnegie Mellon University, Pittsburgh, PA 15213, May 1995.

    Google Scholar 

  15. M.J.C. Gordon and T.F. Melham. Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press, 1993.

    Google Scholar 

  16. K.L. McMillan. Symbolic Model Checking. Kluwer Academic Publishers, Norwell Massachusetts, 1993.

    Google Scholar 

  17. D. Kapur and H. Zhang. RRL: a rewrite rule laboratory. In Lusk and Overbeek, editors, 9th International Conference on Automated Deduction, pages 768–769. Springer-Verlag, 1988.

    Google Scholar 

  18. K. Schneider. Ein einheitlicher Ansatz zur Unterstützung von Abstraktionsmechanismen der Hardwareverifikation, volume 116 of DISKI (Dissertationen zur Künstlichen Intelligenz). Infix Verlag, Sankt Augustin, 1996. ISBN 3-89601-116-2.

    Google Scholar 

  19. T.F. Melham. Abstraction mechanisms for hardware verification. In G. Birtwistle and P.A. Subrahmanyam, editors, VLSI Specification, Verification, and Synthesis, pages 129–157, Boston, 1988. Kluwer Academic Publishers.

    Google Scholar 

  20. E.A. Emerson. Temporal and Modal Logic. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B, pages 996–1072, Amsterdam, 1990. Elsevier Science Publishers.

    Google Scholar 

  21. G. Huet and J.-M. Hullot. Proofs by induction in equational theories with constructors. Journal of Computer and System Sciences, 25:239–266, 1982.

    Google Scholar 

  22. L. Fribourg. A strong restriction of the inductive completion procedure. In 13th International Colloqium on Automata, Languages and Programming, pages 105–115, 1986.

    Google Scholar 

  23. J.-P. Jouannaud and E. Kounalis. Proofs by induction in equational theories without constructors. Information and Computation, 82:1–33, 1989.

    Google Scholar 

  24. L. Staiger and K.W. Wagner. Automatentheoretische Charakterisierungen topologischer Klassen regulärer Folgenmengen. Elektron. Informationsverarb. Kybernet., 10:379–392, 1974.

    Google Scholar 

  25. K. Schneider. Translating LTL Model Checking to CTL Model Checking. Technical Report SFB358-C2-3/96, Universität Karlsruhe, Institut für Rechnerentwurf und Fehlertoleranz, January 1996.

    Google Scholar 

  26. C.A.R. Hoare. An axiomatic basis for computer programming. Communications of the ACM, 12:576–580, 1969.

    Google Scholar 

  27. M. Machtey and P.Young. An Introduction to the General Theory of Algorithms. North-Holland, 1978.

    Google Scholar 

  28. R.S. Boyer and J.S. Moore. A Computational Logic Handbook. Academic Press, 1979.

    Google Scholar 

  29. P. Curzon. Tracking design changes with formal verification. In T.F. Melham and J. Camilleri, editors, International Workshop on Higher Order Logic Theorem Proving and its Applications, volume 859 of Lecture Notes in Computer Science, pages 177–192, Malta, September 1994. Springer-Verlag.

    Google Scholar 

  30. J.R. Burch, E.M. Clarke, K.L. McMillan, and D.L. Dill. Sequential Circuit Verification Using Symbolic Model Checking. In Proceedings of the 27th ACM/IEEE Design Automation Conference, pages 46–51, Los Alamitos, CA, June 1990 ACM/IEEE, IEEE Society Press.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Mandayam Srivas Albert Camilleri

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Schneider, K., Kropf, T. (1996). A unified approach for combining different formalisms for hardware verification. In: Srivas, M., Camilleri, A. (eds) Formal Methods in Computer-Aided Design. FMCAD 1996. Lecture Notes in Computer Science, vol 1166. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0031809

Download citation

  • DOI: https://doi.org/10.1007/BFb0031809

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-61937-6

  • Online ISBN: 978-3-540-49567-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics