Skip to Main Content
This paper presents the results of an attempt to automate part of a formalized method of system design. Basic to this method are two languages, Boolean algebra and a register transfer language. From a Boolean algebra description a digital system can be constructed while the second language can be used in a step by step description of the execution of each instruction. To illustrate, a register transfer language is used to give a description of an adder considered as part of a digital system. This description is then translated into a set of Boolean equations. Next, the automation of this translation by using a syntax-directed compiler is explained. The compiler requires a syntactic description of register transfers. This description is given using a meta-language called Backus normal form. A Backus normal form description of Boolean equations that is used for translating Boolean equations into register transfers is also given; this translation process is called analysis. The feasibility of computer-aided design and analysis is thereby demonstrated. The computer-aided design method described in this paper, besides eliminating drudgery and error, would permit several system designs to be attempted and evaluated; a permanent record of the chosen system would also be available for future modifications, maintenance, and simulation. The analysis programs could be used to check the effect on the system of any changes made in the Boolean equations (or equivalently the logical diagrams) and the effect of any unused operation codes.