ENIAC
The ENIAC — Electronic Numerical Integrator and Computer — was the first general-purpose digital electronic computing device. It was not programmable, in the modern sense; as originally designed, it was only configurable - by setting up functional units via patch-cords, as needed for the desired computation, requiring considerable work to re-configure it to perform a different computation. It first ran in 1945; its main architect was Professor John Mauchly, with J. Presper Eckert being the person most responsible for its engineering (with assistance from Arthur Burks, Kite Sharpless, John Davis, Robert Shaw, and others).
It contained:
- 20 'accumulators' (ten-digit registers which could add and subtract, requiring 550 vacuum tubes per accumulator - one per flip-flop, and ten flip-flops per digit);
- a separate unit which could perform multiplication, division, and square roots;
- constant transmitters (effectively tables stored in ROM - using switches);
- programming units (which could direct a sequence of elementary arithmetic operations, and also storage and retrieval of intermediate results, and the reading of constants from the constant tables);
- a cycling unit (the basic clock used by all parts of the machine; it also produced the pulse sequences used to transmit numbers);
- input/output facilities - standard IBM punched card readers and punches.
All units were interconnectable through configurable 'digit trunks' (which carried data) and 'program trunks'; it operated synchronously, controlled by the cycling unit. It was able to perform operations in disparate parts of the machine in parallel, if the units in question would otherwise be idle. Unlike the Atanasoff–Berry Computer), which was an inspiration for the ENIAC, which was binary internally, the ENIAC was decimal inside (which was partially responsible for its enormous size - over 18,000 tubes, in total).
Each digit was a pluggable module, which minimized down-time for rpair on failure - a spare module could be swapped in.
In 1947 an effort was started to re-configure it in a way that added a certain amount of programmability, via a program stored in the 'function-table switches' (originally intended as a ROM data source). This allowed the machine to be switched to a different problem far more quickly and easily, albeit at a certain loss in performance. Later, minor hardware modifications improved ENIACs efficiency when configured as a stored-program machine; it started to operate in that mode in 1948.
Controversy
John Mauchly, one of the two people most responsible for the ENIAC, had gone to see the ABC several years before he started on the ENIAC, spent several days studying it in detail, in person, and discussed it, and possible future evolution, with the ABC's inventor, John Atanasoff.
Unfortunately, when the time came, much later, to patent the ENIAC's contributions, the patent attempted to also claim many of the ABC's innovations - including its use of digital electronics to do computing. This fact still later led to the overturning of the over-broad ENIAC patent, in a celebrated trial in 1973. Had the patent only claimed Mauchly and Eckert's many valuable contributions, it would have been fine.
Unfortunately, the whole controversy led to a great deal of division and ill-will, which is most unfortunate, as the machines of Atanasoff and Mauchly and Eckert both were major steps along the path from Babbage to modern computers; the struggle over credit has led to both sides not getting the recognition they really do deserve.
Further reading
- Nancy Stern, From ENIAC To UNIVAC: An Appraisal of the Eckert-Mauchly Computers, Digital Press, Bedford, 1981
- Scott McCartney, ENIAC: The Triumphs and Tragedies of the World's First Computer, Walker and Company, New York, 1999 - an attempt to reclaim the crown for Mauchly and Eckert
- Thomas Haigh, Mark Priestley, Crispin Rope, ENIAC in Action: Making and Remaking the Modern Computer, MIT Press, Cambridge, 2016 - covers the conversion into a program-driven device
- Chapter 5: Faster, Faster: The ENIAC, in Paul E. Ceruzzi, Reckoners: The Prehistory of The Digital Computer, From Relays to the Stored Program Concept, 1935-1945, Greenwood, Westport, 1983
- Paul E. Ceruzzi, Chapter Seven: Electronic Calculators, in William Aspray (editor), Computing Before Computers, Iowa State University Press, Ames, 1990
External links
- Programming the ENIAC, Frank Cruz, Columbia University, 2013