Abstract
The study of computing science is split at an early stage between the branches dealing separately with hardware and software; and there is a corresponding split in later professional specialisation. This paper explores the essential unity and overlap of the two branches. The basic concepts are those of occam, taken as a simple example of a high-level programming language; its notations may be translated by the laws of programming to the machine code of a conventional machine. Almost identical transformations can produce the networks of gates and flip-flops which constitute a hardware design. These insights are being exploited in hybrid systems, implemented partly in hardware and partly in software. A TRAM-standard printed circuit board called HARP has been constructed for such applications. It links a transputer by shared memory with a commercial Field Programmable Gate Array. Prospects for application are discussed.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
C.A.R. Hoare, Mathematical Logic and Programming Languages, chapter ‘Programs are Predicates', 141–154, Prentice-Hall, 1985.
C.A.R. Hoare et al., ‘Laws of programming', Comm. ACM, 30(8), 672–686, (1987).
A.W. Roscoe and C.A.R. Hoare, ‘Laws of occam programming', P.R.G. Monograph, Oxford University Computing Laboratory, (1986).
E.W. Dijkstra, ‘A constructive approach to the problem of program correctness', BIT, 8, 174–186, (1968).
He Jifeng, C.A.R. Hoare, and A. Sampaio, ‘Normal form approach to compiling specifications', Acta Informatica, (1994). to appear.
Ian Page and Wayne Luk, ‘Compiling occam into FPGAs', in FPGAs, 271–283, Abingdon EE&CS Books, (1991).
Michael Spivey and Ian Page, ‘How to Program in Handel', Technical Report, Oxford University Computing Laboratory, (1993).
Ian Page, ‘Parametrised Processor Generation', in FPGAs 93, to be published by Abingdon EE&CS Books (probably), (1993).
Ian Page and Wayne Luk and Henry Lau, ‘Hardware Compilation for FPGAs: Imperative and Declarative Approaches for a Robotics Interface', in Proc. IEE Colloquium on Field-Programmable Gate Arrays — Technology and Applications, Ref. 1993/037, pp. 9.1–94. IEE, (1993).
Xilinx, San Jose, CA 95124, The Programmable Gate Array Data Book (1993).
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hoare, C.A.R., Page, I. (1994). Hardware and software: The closing gap. In: Gutknecht, J. (eds) Programming Languages and System Architectures. Lecture Notes in Computer Science, vol 782. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57840-4_24
Download citation
DOI: https://doi.org/10.1007/3-540-57840-4_24
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57840-6
Online ISBN: 978-3-540-48356-4
eBook Packages: Springer Book Archive