Skip to main content

Formal Verification and Implementation of a Microprocessor

  • Chapter

Part of the book series: The Kluwer International Series in Engineering and Computer Science ((SECS,volume 35))

Abstract

Mike Gordon has described the specification and verification of a microcoded computer using the LCF_LSM hardware verification system [8]. We have subsequently redone this example in higher-order logic using the HOL system [10]. In this paper we present the specification of Gordon’s computer in higherorder logic and a brief explanation of its formal verification. A more detailed discussion of the formal verification may be found in [16]. We also describe several related examples of hardware verification based on Gordon’s computer and other microprocessor designs. Finally, we report experience in using a formal specification to implement Gordon’s computer as a 5,000 transistor CMOS microchip.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Barrow, H., “VERIFY: A Program for Proving Correctness of Digital Hardware Designs”, Artificial Intelligence, Vol. 24, No. 1–3, December 1984.

    Article  Google Scholar 

  2. Birtwistle, G., Joyce, J., Liblong, B., Melham, T., and Schediwy, R., “Specification and VLSI”, Formal Aspects of VLSI Design: Proceedings of the 1985 Edinburgh Conference on VLSI, G.J. Milne and P.A. Subrahmanyam. eds., North-Holland, Amsterdam, 1986.

    Google Scholar 

  3. Bryant, R., “An Algorithm for MOS Logic Simulation”, Lambda Magazine, Fourth Quarter, 1980.

    Google Scholar 

  4. Camilleri, A., Gordon, M., and Melham, T., “Hardware Verification using Higher Order Logic”, Technical Report No. 91, Computer Laboratory, The University of Cambridge, June 1986.

    Google Scholar 

  5. Cohn, A. “A Proof of Correctness of the Viper Microprocessor: The First Level”, Specification, Verification and Synthesis, January 1987, (this volume).

    Google Scholar 

  6. Gordon, M., “Representing a Logic in the LCF Metalanguage”, Tools and Notions for Program Construction, edited by D. Neel, Cambridge University Press, 1982.

    Google Scholar 

  7. Gordon, M., “LCF_LSM, A System for Specifying and Verifying Hardware”, Technical Report No. 41, Computer Laboratory, The University of Cambridge, September 1983.

    Google Scholar 

  8. Gordon, M., “Proving a Computer Correct using the LCF_LSM Hardware Verification System”, Technical Report No. 42, Computer Laboratory, The University of Cambridge, September 1983.

    Google Scholar 

  9. Gordon, M., and Herbert, J., “A Formal Hardware Verification Methodology and its Application to a Network Interface Chip”, Technical Report No. 66, Computer Laboratory, The University of Cambridge, 1985.

    Google Scholar 

  10. Gordon, M., “HOL: A Proof Generating System for Higher Order Logic”, Specification, Verification and Synthesis, January 1987, (this volume).

    Google Scholar 

  11. Hanna, F., and Daeche, N., “Specification and Verification of Digital Systems using Higher Order Predicate Logic”, IEE Proceedings, Vol. 133, Part E, No. 5, September 1986.

    Google Scholar 

  12. Henderson, P., “Functional Programming: Application and Implementation”, Prentice-Hall, 1980.

    MATH  Google Scholar 

  13. Herbert, J., “Application of Formal Methods to Digital System Design”, Ph.D Thesis, Computer Laboratory, University of Cambridge, (forthcoming 1987).

    Google Scholar 

  14. Hunt, W., “FM8501: A Verified Microprocessor”, Ph.D. Thesis and Technical Report No. 47, Institute for Computer Science, The University of Texas at Austin, February 1986.

    Google Scholar 

  15. Joyce, J., “Formal Verification of a CMOS Full-adder in the HOL System”, Internal Report, University of Cambridge. April 1987.

    Google Scholar 

  16. Joyce, J., Birtwistle, G., and Gordon, M., “Proving a Computer Correct in Higher Order Logic”, Technical Report No. 100, Computer Laboratory, The University of Cambridge, December 1986.

    Google Scholar 

  17. Melham, T., “Abstraction Mechanisms for Hardware Verification”, Specification, Verification and Synthesis, January 1987, (this volume).

    Google Scholar 

  18. Weise, D., “Formal Multilevel Hierarchical Verification of Synchronous MOS VLSI Circuits”, Ph.D Thesis, Massachusetts Institute of Technology, August 1986.

    Google Scholar 

  19. Weste, N., and Eshraghian, K., “Principles of CMOS VLSI Design”, Addison-Wesley Publishing Company, 1985.

    Google Scholar 

  20. Winskel, G., “Models and Logic of MOS Circuits”, Specification, Verification and Synthesis, January 1987, (this volume).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1988 Kluwer Academic Publishers, Boston

About this chapter

Cite this chapter

Joyce, J.J. (1988). Formal Verification and Implementation of a Microprocessor. In: Birtwistle, G., Subrahmanyam, P.A. (eds) VLSI Specification, Verification and Synthesis. The Kluwer International Series in Engineering and Computer Science, vol 35. Springer, Boston, MA. https://doi.org/10.1007/978-1-4613-2007-4_4

Download citation

  • DOI: https://doi.org/10.1007/978-1-4613-2007-4_4

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-1-4612-9197-8

  • Online ISBN: 978-1-4613-2007-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics