Browse Prior Art Database

Micro-Programming and the Design of the Control Circuits in an Electronic Digital Computer2

IP.com Disclosure Number: IPCOM000129503D
Original Publication Date: 1986-Apr-01
Included in the Prior Art Database: 2005-Oct-06
Document File: 6 page(s) / 31K

Publishing Venue

Software Patent Institute

Related People

M. V. WILKES: AUTHOR [+3]

Abstract

Experience has shown that the sections of an electronic digital computer which are easiest to maintain are those which have a simple logical structure. Not only can this structure be readily borne in mind by a maintenance engineer when looking for a fault, but it makes it possible to use fault-locating programmes and to test the equipment without the use of elaborate test gear. It is in the control section of electronic computers that the greatest degree of complexity generally arises. This is particularly so if the machine has a comprehensive order code designed to make it simple and fast in operation. In general, for each different order in the code some special equipment must be provided, and the more complicated the function of the order the more complex this equipment. In the past, fear of complicating unduly the control circuits of the machines has prevented the designers of electronic machines from providing such facilities as orders for floating-point operations, although experience with relay machines and with interpretive subroutines has shown how valuable such orders are. This paper describes a method of designing the control circuits of a machine which is wholly logical and which enables alterations or additions to the order code to be made without ad hoc alterations to the circuits. An outline of this method was given by one of us (M. V. W.) at the Conference on Automatic Calculating Machines at the University of Manchester in July 1951 (1). The operation called for by a single machine order can be broken down into a sequence of more elementary operations; for example, shifting a number in the accumulator one place to the right may involve, first, a transfer of the number to an auxiliary shifting register, and secondly, the transfer of the number back to the accumulator along an oblique path. These elementary operations will be referred to as micro-operations. Basic machine operations, such as addition, subtraction, multiplication, etc., are thought of as being made up of a micro-programme of micro-operations, each micro-operation being called for by a micro-order. The process of writing a micro-programme for a machine order is very similar to that of writing a programme for the whole calculation in terms of machine orders. [Figure containing following caption omitted: Figure 1. Micro-control unit.] For the method to be applicable it is necessary that the machine should contain a suitable permanent rapid-access storage device in which the micro-programme can be held -- a diode matrix is proposed in the case of the machine discussed as an example below -- and that means should be provided for executing the micro-orders one after the other. It is also necessary that provision should be made for conditional micro-orders which play a role in micro-programming similar to that played by conditional orders in ordinary programming.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 14% of the total text.

Page 1 of 6

THIS DOCUMENT IS AN APPROXIMATE REPRESENTATION OF THE ORIGINAL.

Copyright ©; 1986 by the American Federation of Information Processing Societies, Inc. Used with permission.

Micro-Programming and the Design of the Control Circuits in an Electronic Digital Computer21

M. V. WILKES

J. B. STRINGER

1. Introduction

Experience has shown that the sections of an electronic digital computer which are easiest to maintain are those which have a simple logical structure. Not only can this structure be readily borne in mind by a maintenance engineer when looking for a fault, but it makes it possible to use fault-locating programmes and to test the equipment without the use of elaborate test gear. It is in the control section of electronic computers that the greatest degree of complexity generally arises. This is particularly so if the machine has a comprehensive order code designed to make it simple and fast in operation. In general, for each different order in the code some special equipment must be provided, and the more complicated the function of the order the more complex this equipment. In the past, fear of complicating unduly the control circuits of the machines has prevented the designers of electronic machines from providing such facilities as orders for floating-point operations, although experience with relay machines and with interpretive subroutines has shown how valuable such orders are. This paper describes a method of designing the control circuits of a machine which is wholly logical and which enables alterations or additions to the order code to be made without ad hoc alterations to the circuits. An outline of this method was given by one of us (M. V. W.) at the Conference on Automatic Calculating Machines at the University of Manchester in July 1951 (1).

The operation called for by a single machine order can be broken down into a sequence of more elementary operations; for example, shifting a number in the accumulator one place to the right may involve, first, a transfer of the number to an auxiliary shifting register, and secondly, the transfer of the number back to the accumulator along an oblique path. These elementary operations will be referred to as micro-operations. Basic machine operations, such as addition, subtraction, multiplication, etc., are thought of as being made up of a micro-programme of micro-operations, each micro-operation being called for by a micro-order. The process of writing a micro-programme for a machine order is very similar to that of writing a programme for the whole calculation in terms of machine orders.

(Image Omitted: Figure 1. Micro-control unit.)

For the method to be applicable it is necessary that the machine should contain a suitable permanent rapid-access storage device in which the micro-programme can be held -- a diode matrix is proposed in the case of the machine discussed as an example below -- and that means should be provided for executing the micro-orders one after the other. It i...