Abstract
An operational semantics for a significant subset of the Verilog Hardware Description Language (HDL) has been developed. An unusual aspect of the semantics is that it was formulated as a Prolog logic program. This allows the possibility of simulating the semantics. In addition, a literate programming style has been used, so the semantics can be processed by the LATEX document preparation system with minimal and fully automated preprocessing. Bringing together the paradigms of operational semantics, logic programming and literate programming in this manner has proved a great aid in a number of ways. It has helped improve the understanding of the semantics, in the formalization of semantic aspects left informal in the original mathematical formulation of the semantics, and in the maintenance of the formal semantics and its associated informal description. Civilization advances by extending the number of important operations which we can perform without thinking about them. Introduction to Mathematics (1911) ch. 5 Alfred North Whitehead (1861–1947)
Work originally undertaken while on leave as a Visiting Research Fellow at the United Nations University International Institute for Software Technology (UNU/IIST), Macau.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Bowen, J.P.,An Invoicing Case Study in Z. In M. Allemand, C. Attiogé and H. Habrias (eds.), International Workshop on: Comparing Systems Specification Techniques, “What questions are prompted by ones particular method of specification?”, pages 461–471, Nantes, France, 26–27 March 1998. IRIN, 2 Rue de la Houssinière-44322, Nantes edex 3, France.
Bowen, J.P., Animating the Semantics ofVERILOG using Prolog. UNU/IISTTechnical Report no. 176, International Institute for Software Technology, United Nations University, Macau, September 1999.
Bowen, J.P., The Ethics of Safety-Critical Systems. Communications of the ACM, 43(4):91–97, April 2000.
Bowen, J.P. and He Jifeng, Hardware Compilation:Verification and Rapid-prototyping. Technical Report, RUCS/1999/TR/012/A, Department of Computer Science, The University of Reading, UK, October 1999. Revised version to appear in the Journal of Supercomputing.
Bowen, J.P., He Jifeng and Xu Qiwen, An Animatable Operational Semantics of the VERILOG Hardware Description Language. In Proc. IEEE International Conference on Formal Engineering Methods (ICFEM2000), York, UK, 4–7 September 2000, IEEE Computer Society Press, 2000.
Bowen, J.P. and Hinchey, M.G., Formal Models and the Specification Process. In A.B. Tucker, Jr. (ed.), The Computer Science and Engineering Handbook, Section X, Software Engineering, Chapter 107, pages 2302–2322, CRC Press, 1997.
Bowen, J.P. and Hinchey, M.G., High-Integrity System Specification and Design. Springer-Verlag, London, Formal Approaches to Computing and Information Technology (FACIT) series, 1999.
Breuer, P.T., Madrid, N., Delgado Kloos, C., Bowen, J.P., France, R. and Petrie, M., Reasoning about VHDL and VHDL-AMS using Denotational Semantics. In D. Borrione (ed.), Proc. Design, Automation & Test in Europe (DATE’99), Munich, Germany, 9–12 March 1999, ACM, pages 346–352, 1999.
Clark, K.L., Negation as Failure. In H. Gallaire and J. Minker (eds.), Logic and Data Bases, Plemum Press, NewYork, pages 293–322, 1978.
Clocksin, W.F., Logic Programming and Digital Circuit Analysis. Journal of Logic Programming, 4(1):59–82, March 1987.
Clocksin, W.F. and Mellish C.S., Programming in PROLOG. Springer-Verlag, Berlin, 1994.
Delgado Kloos, C. and Breuer, P.T. (eds.), Formal Semantics for VHDL. Kluwer Academic Publishers, 1995.
Fuchs, N.E., Specifications are (Preferably) Executable. In Bowen, J.P. and Hinchey, M.G. [7], pages 583–607, 1999.
Golze, U., VLSI Chip Design with the Hardware Description Language VERILOG. Springer-Verlag, Berlin, 1996.
Gordon, M., The Semantic Challenge ofVerilog HDL. In Proc.Tenth Annual IEEE Symposium on Logic in Computer Science (LICS’95), San Diego, California, USA, 26–29 June 1995. IEEE Computer Society Press, 1995.
Gordon, M., Event and Cycle Semantics of Hardware Description Languages, University of Cambridge Computer Laboratory, UK, 16 January 1998. Version 1.4.
Hayes, I.J. and Jones, C.B., Specifications are not (Necessarily) Executable. In J.P. Bowen and M.G. Hinchey [7], pages 563–581, 1999.
He Jifeng, A Behavioural Model for Co-design. UNU/IIST Report No. 166, International Institute for Software Technology, United Nations University, Macau, May 1999.
He Jifeng, A Common Framework for Mixed Hardware/Software Systems. In Araki, K., Galloway, A. and Taguchi, K. (eds.), IFM 99: Proceedings of the 1st International Conference on Integrated Formal Methods,York, 28–29 June 1999. Springer-Verlag, Berlin, pages 1–15, 1999. http://www.cs.york.ac.uk/ifm-99/
He Jifeng and Xu Qiwen, An Operational Semantics of a Simulator Algorithm. International Institute for Software Technology, United Nations University, Macau, 1999. Revised version in Proc. PDPTA2000, Las Vegas, USA, 2000.
He Jifeng and Xu Qiwen, Verilog Programming. International Institute for Software Technology, United Nations University, Macau, August 1999.
Hinchey, M.G. and Bowen, J.P. (eds.), Industrial-Strength Formal Methods in Practice. Springer-Verlag, London, Formal Approaches to Computing and Information Technology (FACIT) series, 1999.
Hoare, C.A.R., An Axiomatic Basis for Computer Programming. Communications of the ACM, 12(10):576–580, October 1969.
Hoare, C.A.R. and He Jifeng, Unifying Theories of Programming. Prentice Hall International Series in Computer Science, 1998.
Iyoda, J., Sampaio A. and Silva, L., ParTS: A Partitioning Transformation System. In J.M. Wing, J. Woodcock and J. Davis (eds.), FM’99 — Formal Methods. Springer-Verlag, Berlin, Lecture Notes in Computer Science (LNCS) 1709, pages 1400–1419, 1999, 1999.
Knuth, D., Literate Programming. The Computer Journal, 27(2):97–111, 1984).
Knuth, D., Literate Programming. Center for the Study of Language and Information, Stanford, California, USA, CSLI Lecture Notes, no. 27, 1992. Fourth printing, 1998. http://www-cs-faculty.stanford.edu/~knuth/lp.html
Lamport, L., How to Write a Proof. SRC Technical Report 94, Digital Equipment Corp. Systems Research Center, Palo Alto, California, USA, 1993.
Lamport, L., LATEX: A Document Preparation System. Addison-Wesley Publishing Company, 1994.
Marriott, K. and Stuckey, P.J., Programming with Constraints: An Introduction. The MIT Press, 1998.
Nielson, H.R. and Nielson, F., Semantics with Applications: A Formal Introduction. Wiley Professional Computing, 1992. Revised and available on-line, 1999. (Operational Semantics, Chapter 2, pages 19–61.) http://www.daimi.au.dk/~bra8130/Wiley book/wiley.html
Plotkin, G., A Structural Approach to Operational Semantics. Technical Report DAIMI FN-19, Department of Computer Science, Aarhus University, Denmark, 1981. Reprinted 1991.
Sagdeo, V., Pixley, C., et al.,OVI FormalVerification StandardsWorking Group, OpenVerilog International, 1999. http://www.eda.org/vfv/
Schneider, G. and Xu Qiwen,Towards an Operational Semantics ofVerilog. UNU/IIST Report No. 147, International Institute for Software Technology, United Nations University, Macau, October 1998.
Van Dung, T. and He Jifeng, A Theory of Combinational Programs. UNU/IIST Report No. 162, International Institute for Software Technology, United Nations University, Macau,April 1999.
Zhu Huibiao and He Jifeng, A DC-based Semantics for Verilog. UNU/IIST Report No. 183, International Institute for Software Technology, United Nations University, Macau, January 2000. Also in Proc. International Conference on Software: Theory and Practice (ICS2000), Beijing, China, 21–24 August 2000.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bowen, J.P. (2000). Combining Operational Semantics, Logic Programming and Literate Programming in the Specification and Animation of the Verilog Hardware Description Language. In: Grieskamp, W., Santen, T., Stoddart, B. (eds) Integrated Formal Methods. IFM 2000. Lecture Notes in Computer Science, vol 1945. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-40911-4_16
Download citation
DOI: https://doi.org/10.1007/3-540-40911-4_16
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-41196-3
Online ISBN: 978-3-540-40911-3
eBook Packages: Springer Book Archive