previous | contents | next

Chapter 29 The design of a general-purpose microprogram-controlled computer with elementary structure 347

The machine has a "dynamic" idle. When it is halted, either externally or by order, this fact is observed by the microprogram, through the alteration unit, whereupon the microprogram goes into a tight loop, continuously asking, "Can I go? Can I go? Can I go? . . . ." Two forms of halting are provided. In "Halt and Display," registers are presented; in the other halt, the console lights are left unaltered. A manual halt is equivalent to halt and display.

For an addressed order, bit positions one through five are sent into the microprogram unit. During order procure, the microprogram examines bits zero and six for indirect addressing and index modification.

A nonaddress order is recognized by the binary equivalent of 31 in the order bits; the microprogram unit causes the order word to shift left 5 bits, and the 8 high bits of the "address" field enter the J register.

Conclusion

This paper is not intended to be an argument in favor of the general acceptance of the SD-2 structure as an ideal. Like all computers, the SD-2 is a state-of-the-art device, intended not only to meet the needs of the problems at hand, but also, more importantly, to meet the side conditions of its use. In a vague analogy, the computer specification is like a partial differential equation. The logical designer must choose the boundary conditions and solve the problem, or at least approximate the solution.

With today's emphasis on system speed performance, some serious mental gear-shifting on the designer's part is required in order to design a simple machine. It goes against the grain of instinct and experience. A posteriori, the SD-2 could have been made even simpler, particularly with respect to several peripheral areas not discussed in the paper.

Several conclusions can be drawn here, however, The bus structure is easy to fabricate and maintain; this has been proven on the MILSMAC, a breadboard for the SD-2. It is a highly flexible structure, permitting wide variation in order code with no change in arithmetic unit. At the same time, the components are cascaded to a point where one has the absurd situation of fast-switching in a relatively slow computer. A designer of a bus-structured machine would do well to consider alternatives, such as multiple busses, accumulators, etc., to permit more parallelism when speed is important.

The use of a special-purpose logic unit, such as the alteration unit of the SD-2, gives a freedom of design not possible with a special-purpose logic. At the same time, it uses more parts, is slow in handling multiple variable problems, and requires a great deal of control input. It appears to be a weapon of opportunity.

The use of microprogramming is much the same as the general logic unit. Its flexibility and speed of design are unquestionable. Also, it uses more parts than a special-purpose control.

There is no real substitute for a special-purpose design. The use of generalized elements in computer design can be justified only by the side conditions, never by the basic specification. Where simplicity and speed of design are major items, their use seems indicated.

Wilkes once presented a paper on the best way to design a computer and launched the microprogramming notions. The author would like to comment that if ease and reliability of design are criteria, he was absolutely correct.

References

KampT60; WilkM53a; WilkM58a

previous | contents | next