Skip to main content
Log in

Verified compilation of communicating processes into clocked circuits

  • Published:
Formal Aspects of Computing

Abstract

We have previously developed a verified algorithm for compiling programs written in an occam-like language into delay-insensitive circuits. In this paper we show how to retarget our compiler for clocked circuits. Since verifying a hardware compiler is a huge effort, it is significant that we are able to retarget our compiler proof without recreating that effort.

The chief contribution of this paper is the methodology used for retargeting our compiler which is based upon a new model for systems with both synchronous and asynchronous behaviour. The retargeting proof utilizes both theorems proved algebraically by hand and theorems proved automatically by state exploration. The technique of protocol conversion is used extensively in modularizing the proof of the clocked implementation.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Brown, G., Luk, W. and O'Leary, J.: Retargeting a Hardware Compiler Using Protocol Converters.Formal Aspects of Computing, 8, 209–237 (1996).

    Google Scholar 

  2. Brown, G. M.: Towards Truly Delay-Insensitive Circuit Realizations of Process Algebras.Designing Correct Circuits, Jones, G. and Sheeran, M. (editors), pp. 120–131. Springer-Verlag, 1991.

  3. Burch, J. R.: Modeling Timing Assumptions with Trace Theory.International Conference on Computer Design, pp. 208–211, 1989.

  4. Dill, D. L.:Trace Theory for Automatic Hierarchical Verification of Speed-Independent Circuits. MIT Press, 1989.

  5. He, J.: Process Simulation and Refinement.Formal Aspects of Computing, 1, 229–241 (1989).

    Google Scholar 

  6. He, J., Brown, G., Luk, W. and O'Leary, J.W.: Deriving Two-Phase Modules for a Multi-Target Hardware Compiler. Designing Correct Circuits, Springer Electronic Workshop in Computing series, 1996.

  7. Hoare, C. A. R.:Communicating Sequential Processes. Prentice-Hall International, 1985.

  8. He, J., Page, I. and Bowen, J.: Towards a Provably Correct Hardware Implementation of Occam.Correct Hardware Design and Verification Methods, volume 683 ofLecture Notes in Computer Science, pp. 214–225, Springer-Verlag, 1993.

  9. Jones, G.Programming in occam. Prentice-Hall International, 1987.

  10. O'Leary, J. and Brown, G.: A Model for Verifying Digital Circuits.Acta Informatica, in press, 1997.

  11. O'Leary, J. W.:A Model and Proof Technique for Verifying Hardware Compilers for Communicating Processes. Ph.D. thesis, Cornell University, 1995.

  12. Page, I. and Luk, W.: Compiling occam into FPGAs.FPGAs, Moore, W. and Luk, W. (editors), pp. 271–283, Abingdon EE&CS Books, Abingdon, England, 1991.

    Google Scholar 

  13. van Berkel, K.:Handshake Circuits: An Asynchronous Architecture for VLSI Programming. Cambridge University Press, 1993.

  14. Verhoeff, T.:A Theory of Delay-Insensitive Systems. Ph.D. thesis, Eindhoven University of Technology, 1994.

  15. Weber, S., Bloom, B. and Brown, G. M.: Compiling Joy into Silicon.Advanced Research in VLSI and Parallel Systems: Proceedings of the 1992 Brown/MIT Conference, pp. 79–98, 1992.

  16. Wenban, A. S., O'Leary, J. W. and Brown, G. M.: Codesign of Communication Protocols.Computer, 26(12), 46–52 (1993).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

O'Leary, J., Brown, G. & Luk, W. Verified compilation of communicating processes into clocked circuits. Formal Aspects of Computing 9, 537–559 (1997). https://doi.org/10.1007/BF01211459

Download citation

  • Received:

  • Accepted:

  • Issue Date:

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

Keywords

Navigation