18 June 2009
The first general-purpose electronic digital computer.
The people behind the invention:
John Presper Eckert (1919-1995), an electrical engineer
John William Mauchly (1907-1980), a physicist, engineer, and
John von Neumann (1903-1957), a Hungarian American
mathematician, physicist, and logician
Herman Heine Goldstine (1913- ), an army mathematician
Arthur Walter Burks (1915- ), a philosopher, engineer, and
John Vincent Atanasoff (1903-1995), a mathematician and
A Technological Revolution
The Electronic Numerical Integrator and Calculator (ENIAC) was
the first general-purpose electronic digital computer. By demonstrating
the feasibility and value of electronic digital computation, it initiated
the computer revolution. The ENIAC was developed during
World War II (1939-1945) at the Moore School of Electrical Engineering
by a team headed by John William Mauchly and John Presper
Eckert, who were working on behalf of the U.S. Ordnance Ballistic
Research Laboratory (BRL) at the Aberdeen Proving Ground in
Maryland. Early in the war, the BRL’s need to generate ballistic firing
tables already far outstripped the combined abilities of the available
differential analyzers and teams of human computers.
In 1941, Mauchly had seen the special-purpose electronic computer
developed by John Vincent Atanasoff to solve sets of linear
equations. Atanasoff’s computer was severely limited in scope and
was never fully completed. The functioning prototype, however,
helped convince Mauchly of the feasibility of electronic digital computation
and so led to Mauchly’s formal proposal in April, 1943, to
develop the general-purpose ENIAC. The BRL, in desperate need of
computational help, agreed to fund the project, with Lieutenant
Herman Heine Goldstine overseeing it for the U.S. Army.
This first substantial electronic computer was designed, built,
and debugged within two and one-half years. Even given the highly
talented team, it could be done only by taking as few design risks as
possible. The ENIAC ended up as an electronic version of prior
computers: Its functional organization was similar to that of the
differential analyzer, while it was programmed via a plugboard
(which was something like a telephone switchboard), much like the
earlier electromechanical calculators made by the International Business
Machines (IBM) Corporation. Another consequence was that
the internal representation of numbers was decimal rather than the
now-standard binary, since the familiar electromechanical computers
used decimal digits.
Although the ENIAC was completed only after the end of the
war, it was used primarily for military purposes. In fact, the first
production run on the system was a two-month calculation needed
for the design of the hydrogen bomb. John von Neumann, working
as a consultant to both the Los Alamos Scientific Laboratory and the
ENIAC project, arranged for the production run immediately prior
to ENIAC’s formal dedication in 1946.
A Very Fast Machine
The ENIAC was an impressive machine: It contained 18,000 vacuum
tubes, weighed 27 metric tons, and occupied a large room. The
final cost to the U.S. Army was about $486,000. For this price, the
army received a machine that computed up to a thousand times
faster than its electromechanical precursors; for example, addition
and subtraction required only 200 microseconds (200 millionths of a
second). At its dedication ceremony, the ENIAC was fast enough to
calculate a fired shell’s trajectory faster than the shell itself took to
reach its target.
The machine also was much more complex than any predecessor
and employed a risky new technology in vacuum tubes; this caused
much concern about its potential reliability. In response to this concern,
Eckert, the lead engineer, imposed strict safety factors on all
components, requiring the design to use components at a level well
below the manufacturers’ specified limits. The result was a machine
that ran for as long as three days without a hardware malfunction.
Programming the ENIAC was effected by setting switches and
physically connecting accumulators, function tables (a kind of manually
set read-only memory), and control units. Connections were
made via cables running between plugboards. This was a laborious
and error-prone process, often requiring a one-day set time.
The team recognized this problem, and in early 1945, Eckert,
Mauchly, and Neumann worked on the design of a new machine.
Their basic idea was to treat both program and data in the same way,
and in particular to store them in the same high-speed memory; in
other words, they planned to produce a stored-program computer.
Neumann described and explained this design in his “First Draft of
a Report on the EDVAC” (EDVAC is an acronym for Electronic Discrete
Variable Automatic Computer). In his report, Neumann contributed
new design techniques and provided the first general, comprehensive
description of the stored-program architecture.
After the delivery of the ENIAC, Neumann suggested that it
could be wired up so that a set of instructions would be permanently
available and could be selected by entries in the function tables.
Engineers implemented the idea, providing sixty instructions
that could be invoked from the programs stored into the function tables.
Despite slowing down the computer’s calculations, this technique
was so superior to plugboard programming that it was used
exclusively thereafter. In this way, the ENIAC was converted into a
kind of primitive stored-program computer.
The ENIAC’s electronic speed and the stored-program design of
the EDVAC posed a serious engineering challenge: to produce a
computer memory that would be large, inexpensive, and fast.Without
such fast memories, the electronic control logic would spend
most of its time idling. Vacuum tubes themselves (used in the control)
were not an effective answer because of their large power requirements
and heat generation.
The EDVAC design draft proposed using mercury delay lines,
which had been used earlier in radars. These delay lines converted
an electronic signal into a slower acoustic signal in a mercury solu-
tion; for continuous storage, the signal picked up at the other end
was regenerated and sent back into the mercury. Maurice Vincent
Wilkes at the University of Cambridge was the first to complete
such a system, in May, 1949. One month earlier, Frederick Calland
Williams and Tom Kilburn at Manchester University had brought
their prototype computer into operation, which used cathode-ray
tubes (CRTs) for its main storage. Thus, England took an early lead
in developing computing systems, largely because of a more immediate
practical design approach.
In the meantime, Eckert and Mauchly formed the Electronic Control
Company (later the Eckert-Mauchly Computer Corporation).
They produced the Binary Automatic Computer (BINAC) in 1949
and the Universal Automatic Computer (UNIVAC) I in 1951; both
machines used mercury storage.
The memory problem that the ENIAC introduced was finally resolved
with the invention of the magnetic core in the early 1950’s.
Core memory was installed on the ENIAC and soon on all new machines.
The ENIAC continued in operation until October, 1955,
when parts of it were retired to the Smithsonian Institution. The
ENIAC proved the viability of digital electronics and led directly to
the development of stored-program computers. Its impact can be
seen in every modern digital computer.
See also : Apple II computer; BINAC computer; Colossus computer;
IBM Model 1401 computer; Personal computer; Supercomputer;
UNIVAC computer ; ENIAC computer