Hardware compilation: The translation of programs into circuits
Niklaus Wirth · Repository for Publications and Research Data (ETH Zurich) · 1998
We explain how programs specified in a sequential programming language can be translated automatically into a digital circuit. The possibility to specify which parts of a program are to be compiled into instruction sequences for a conventional processor, and which ones are to be translated into customized circuits has gained relevance with the advent of large programmable gate arrays (FPGA). They open the door to introduce massive, fine-grained parallelism. In order to demonstrate the feasibility of this approach, we present a tiny programming language featuring the basic programming and circuit design facilities. 1. Introduction The direct generation of hardware from a program - more precisely: the automatic translation of a program specified in a programming language into a digital circuit - has been a topic of interest for a long time. So far it appeared to be a rather uneconomical method of largely academic but hardly practical interest. It has therefore not been pursued with vigo...