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.
Preview
Unable to display preview. Download preview PDF.
References
R.E. Bryant. Graph-Based Algorithms for Boolean Function Manipulation. IEEE Transactions on Computers, C-35(8):677–691, August 1986.
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.
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.
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.
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.
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.
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.
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.
D.E. Long. Model Checking, Abstraction, and Compositional Verification. PhD thesis, Carnegie Mellon University, 1993.
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.
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.
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.
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.
E. Clarke and X. Zhao. Word level symbolic model checking. Technical Report CMU-CS-95-161, Carnegie Mellon University, Pittsburgh, PA 15213, May 1995.
M.J.C. Gordon and T.F. Melham. Introduction to HOL: A Theorem Proving Environment for Higher Order Logic. Cambridge University Press, 1993.
K.L. McMillan. Symbolic Model Checking. Kluwer Academic Publishers, Norwell Massachusetts, 1993.
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.
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.
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.
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.
G. Huet and J.-M. Hullot. Proofs by induction in equational theories with constructors. Journal of Computer and System Sciences, 25:239–266, 1982.
L. Fribourg. A strong restriction of the inductive completion procedure. In 13th International Colloqium on Automata, Languages and Programming, pages 105–115, 1986.
J.-P. Jouannaud and E. Kounalis. Proofs by induction in equational theories without constructors. Information and Computation, 82:1–33, 1989.
L. Staiger and K.W. Wagner. Automatentheoretische Charakterisierungen topologischer Klassen regulärer Folgenmengen. Elektron. Informationsverarb. Kybernet., 10:379–392, 1974.
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.
C.A.R. Hoare. An axiomatic basis for computer programming. Communications of the ACM, 12:576–580, 1969.
M. Machtey and P.Young. An Introduction to the General Theory of Algorithms. North-Holland, 1978.
R.S. Boyer and J.S. Moore. A Computational Logic Handbook. Academic Press, 1979.
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.
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.
Author information
Authors and Affiliations
Editor information
Rights 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