Arguably, one of the most interesting stories in human history is
that of the ENIAC (pronounced "In E Ak"). ENIAC, an acronym for
Electronic Numeric Integrator And Computer, is the world's first
electronic digital computer. It was developed in 1939 by the United States Army Ordnance,
it's sole original function was to compute ballistic firing tables.
Below is a reprint of an article prepared in 1961, found on the US Army Research Laboratory website.
The ENIAC Story
By Martin H. Weik, 1961
Ordnance Ballistic Research Laboratories, Aberdeen Proving Ground, MD
"...With the advent of everyday use of elaborate calculations, speed has
become paramount to such a high degree that there is no machine on the
market today capable of satisfying the full demand of modern
computational methods. The most advanced machines have greatly reduced
the time required for arriving at solutions to problems which might have
required months or days by older procedures. This advance, however, is
not adequate for many problems encountered in modern scientific work and
the present invention is intended to reduce to seconds such lengthy
computations..."
From the ENIAC patent (No. 3,120,606), filed 26 June 1947.
As in many other first along the road of technological progress, the
stimulus which initiated and sustained the effort that produced the
ENIAC (electronic numerical integrator and computer)--the world's first
electronic digital computer--was provided by the extraordinary demand of
war to find the solution to a task of surpassing importance. To
understand this achievement, which literally ushered in an entirely new
era in this century of startling scientific accomplishments, it is
necessary to go back to 1939.
As the year 1939 dawned on an apprehensive and fearful Europe, soon to
realize the worst of its fears with the outbreak of the war on September
1st, the United States continued largely oblivious to the outside world
and its impending fate. This obliviousness was in no way better
exemplified than in the size and state of unreadiness of the U.S. Army.
Two decades of complete indifference toward military preparedness had
witnessed its virtual elimination as a factor of any military
consequence in the world. In that fateful year the total strength of the
Regular Establishment of the Army was approximately 120,000 officers and
men.
The part of this exceedingly small peacetime establishment which
provided the principal scientific and logistic support was the Ordnance
Department. This Department had the responsibility for the design,
development, procurement, storage, and issue of all combat materiel and
munitions for the Army. In 1939 it was staffed by a relative handful of
officers and career civilian employees.
The only scientific facility then available to the Ordnance Department
for carrying out experimentation with weapons was the Aberdeen Proving
Ground in Maryland. This facility had been acquired at the beginning of
World War I and had been heroically maintained during the disheartening
interim period so that at the outbreak of World War II it was able
single-handedly to perform the crucial task of testing all combat
materiel during the critical period of mobilization of the American war
effort.
One of the extraordinarily important tasks which devolved upon the
proving ground was the preparation of firing and bombing tables for the
Army which at that time, of course, included the Army Air Corps. This
responsibility was carried out at the Ballistic Research Laboratory of
the Ordnance Department at Aberdeen. Here also were obtained
experimental data of high accuracy and precision, necessary to the
computation of the firing and bombing tables.
What was the situation at the Ballistic Research Laboratory on the eve
of World War II? Its computing group comprised just a handful of
civilian employees of the Ordnance Department. These individuals were
well trained and highly skilled in the conventional methods of
computation of firing and bombing tables. Available to this group at
that time was one important calculating device other than standard desk
calculators--this was the Bush differential analyzer.
This analogue device, or continuous variable calculator, had been
installed at the proving ground about five years previously under the
direction of Major James Guion of the Ordnance Department, then head of
the ballistic computations section of the proving ground.
The analyzer installed at Aberdeen had ten integrating units and
provisions for two input and two output tables as well. But, despite its
value as an important mechanical aid to computation, it had several
severe limitations. Probably the most severe of these was the mechanical
torque amplifier. This element of the analyzer sufficiently amplified
the extremely small torque developed by the integrating units so as to
permit its transmission and utilization elsewhere in the device to drive
other elements including other integrators.
This torque amplifier, although simple in mechanical design, frequently
failed toward the end of a long trajectory run with the loss of the
preceding computation and an appreciable delay associated with its
repair.
The officer in charge of ballistic computations at that time was
Lieutenant P. N. Gillon, Ordnance Department, who had just assumed
responsibility for ballistic computations at the outbreak of the war in
Europe. His immediate recognition of the immensity of the task that
would devolve upon the Ordnance Department in the event of America's
involvement in the war prompted him to seek both marked improvement in
mechanical aids to computation and augmented facilities for their
accomplishment.
It was, of course, known that the Moore School of Electrical Engineering
of the University of Pennsylvania had a Bush differential analyzer of
somewhat larger capacity than the one installed at Aberdeen. As a matter
of fact, the one at the Moore School had fourteen integrating units.
Therefore one of the first steps taken was the award to the University
of Pennsylvania of a contract by the Ordnance Department for the
utilization of this device.
Following the award of this contract, Lieutenant Gillon in his capacity
as officer in charge of ballistic computations conferred frequently with
Dean Harold Pender, Professor J. G. Brainerd, and their associates at
the Moore School with a view to effecting proper coordination of the
computational work at Philadelphia and Aberdeen.
Fortunately, at this time there was a very talented group at the Moore
School under the direction of Professor Brainerd and as a result of
Lieutenant Gillon's discussions with the professor and his associates,
Assistant Professor Weygand undertook to develop an electronic torque
amplifier to replace the mechanical torque amplifiers on the Bush
differential analyzers. This work was eminently successful and in a
rather brief period of time.
In addition, photoelectric followers were developed by the Moore School
group for both the input and output tables of the analyzer. As a result
of these accomplishments the productive capacity of the analyzers at
both the Moore School and at Aberdeen were enhanced by at least an order
of magnitude.
During the same period of time the computational activities at Aberdeen
were being expanded greatly, and the increase in staff included both
military and civilian personnel. Among the former, shortly after
America's entry into the war, one of the very important individuals in
the ENIAC story came to duty at the proving ground. This was Lieutenant
Herman H. Goldstine, a Reserve officer of the Ordnance Department.
Lieutenant Goldstine had received his doctorate in mathematics at the
University of Chicago under Professor Bliss who had, himself, been one
of the principal ballisticians at the proving ground during World War I.
Upon reporting to active duty at the proving ground, Lieutenant
Goldstine was assigned to the Ballistics Research Laboratory as an
assistant to Captain Gillon. In view of the increased importance of the
activities in Philadelphia, which by this time included a training
responsibility in the mathematics of ballistic computations, Captain
Gillon requested that Lieutenant Goldstine be assigned to duty at the
University of Pennsylvania as supervisor of the computational and
training activities there.
In September 1942, Colonel Gillon was assigned to the Office of the
Chief of Ordnance as deputy chief of the Service Branch of the Technical
Division with the responsibility for the research activities of the
Department, including those at the respective Ordnance facilities. This,
of course, included the work performed in the field of ballistic
computations.
This responsibility required frequent contact with the activities at the
University of Pennsylvania, and as a result thereof in the early part of
1943 Captain Goldstine and Professor Brainerd brought to Colonel Gillon
the outline of the technical concepts underlying the development of the
ENIAC. This outline had been prepared at Captain Goldstine's request by
Dr. John W. Mauchly and J. P. Eckert, Jr.
Colonel Gillon fully realized the formidable opposition that probably
would be offered to the initiation and prosecution of a development of
this sort, especially in view of the highly speculative character of its
successful completion. He was convinced, however, of the importance of
the need not only to ballistic computations but also to the research
activities of the Ordnance Corps as well, and accordingly he undertook
to obtain the necessary authorization for its initiation and assumed
full responsibility for its support and supervision.
The original agreement between the United States of America and the
trustees of the University of Pennsylvania, dated June 5, 1943, called
for six months of "research and development of an electronic numerical
integrator and computer and delivery of a report thereon." This initial
contract committed $61,700 in U.S. Army Ordnance funds.
Nine supplements to this contract extended the work to 1946, increased
the amount ultimately to a total of $486,804.22, assigned technical
supervision to the Ballistic Research Laboratories, and called for the
delivery of a working "pilot model," first to be operable at the
University of Pennsylvania and then to be delivered to the Ballistic
Research Laboratories at the Aberdeen Proving Ground.
From this point forward, the research staff and faculty of the Moore
School under Dr. Pender undertook rigorous prosecution of the
development pursuant to the terms of the Ordnance contract. The project
was placed under the supervision of Professor Brainerd, with Mr. Eckert
as chief engineer and Dr. Mauchly, who provided the original outline for
this development, as principal consultant. Captain Goldstine, the
resident supervisor for the Ordnance Department, not only exercised
extraordinarily detailed and highly competent supervision for the
Government but also contributed greatly to the mathematical side of this
undertaking. As in all important undertakings which achieve important
results, this was the work of many individuals.
The ENIAC was placed in operation at the Moore School, component by
component, beginning with the cycling unit and an accumulator in June
1944. This was followed in rapid succession by the initiating unit and
function tables in September 1945 and the divider and square-root unit
in October 1945. Final assembly took place during the fall of 1945.
By today's standards for electronic computers the ENIAC was a grotesque
monster. Its thirty separate units, plus power supply and forced-air
cooling, weighed over thirty tons. Its 19,000 vacuum tubes, 1,500
relays, and hundreds of thousands of resistors, capacitors, and
inductors consumed almost 200 kilowatts of electrical power.
But ENIAC was the prototype from which most other modern computers
evolved. It embodied almost all the components and concepts of today's
high- speed, electronic digital computers. Its designers conceived what
has now become standard circuitry such as the gate (logical "and"
element), buffer (logical "or" element) and used a modified
Eccles-Jordan flip-flop as a logical, high-speed storage-and-control
device. The machine's counters and accumulators, with more sophisticated
innovations, were made up of combinations of these basic elements.
ENIAC could discriminate the sign of a number, compare quantities for
equality, add, subtract, multiply, divide, and extract square roots.
ENIAC stored a maximum of twenty 10-digit decimal numbers. Its
accumulators combined the functions of an adding machine and storage
unit. No central memory unit existed, per se. Storage was localized
within the functioning units of the computer.
The primary aim of the designers was to achieve speed by making ENIAC as
all-electronic as possible. The only mechanical elements in the final
product were actually external to the calculator itself. These were an
IBM card reader for input, a card punch for output, and the 1,500
associated relays.
Another design objective was to make the electronics simple and
reliable. This goal was achieved by utilizing vacuum tubes in a minimum
of basic circuit combinations. To ensure reliable operation, circuits
were constructed to rigidly tested standard components which were
operated at current, voltage, and power levels below their normal
ratings.
Accuracy of computation was assured by designing the basic circuits to
work independently of the variable tolerances of their components.
Numbers were not represented by electrical quantities which could be
affected by changes in tolerance but only by the presence or absence of
dynamic pulses.
The gate performed the switching or logical "and" function. It consisted
of a single pentode which had a control voltage applied to its
suppressor grid. Its function was similar to that of a single pole
switch in that it "opened" (passed a pulse pattern) when the suppressor
grid was positive and "closed" when the suppressor grid was negative.
The buffer contained two or more tubes connected through a common load
resistor to form a circuit with the logical properties of the word "or."
The grids of the tubes were normally biased at the cut-off point so that
a positive input to any tube in the combination produced a negative
output.
The flip-flop circuit contained two triodes so connected that only one
would conduct at a given time. The bi-stable device had two inputs and
two outputs. In the set, or normal position, one side of the output was
positive, the other negative. In the reset, or abnormal position, these
polarities were reversed. Logically, the flip-flop performed the
functions of memory and that of a double-pole, double-throw switch. The
state of each flip-flop was indicated by a neon lamp on the front panel
of the computer units.
A group of ten flip-flops, (0-9), interconnected to count digit pulses,
formed a decade ring counter which was capable of adding and storing
numbers. The ring counter possessed the following characteristics: (1)
At any one time only one flip-flop could be in the reset state; (2) A
pulse to the counter input reset the initial flip-flop in the chain; (3)
The circuit could be cleared so that a specific flip-flop was in the
reset position while the others remained set.
Each flip-flop of a counter was termed a stage, and reception of a pulse
at the input side advanced the counter by one stage. Information was
recirculated through the counter; i.e., the last stage was coupled to
the first. A variation of the basic counter circuit, the PM counter,
controlled the sign of a number in the accumulator. Ten decade ring
counters, one per decimal place, plus one PM counter, formed the basic
arithmetic and storage unit of ENIAC--the accumulator. The decade ring
counters were equipped with ten transmission circuits so that when any
ring passed the nine positions, a pulse was passed to the next ring in
the series. Input pulses reaching the accumulator added to or subtracted
from its contents.
The accumulator was an essential element in all of ENIAC's arithmetic
operations. Addition required two accumulators--one transferring its
contents to the other. Subtraction, accomplished by a complement-and-add
process, also used two accumulators. In normal multiplication, four
accumulators stored the multiplier and multiplicand and accumulated the
partial products. In division they shifted the remainder and stored the
numerator, denominator, and quotient. The function table utilized the
accumulators for storage of the argument and accumulation of the
function value.
A synchronous system, ENIAC operated under the control of pulses from a
cycling unit. The pulses were emitted at 10-microsecond intervals. The
overall timing cycle or repetition rate was 200 microseconds, one
addition time. Pulses were transmitted to all units continuously and
simultaneously, and each computer operation took an integral number of
addition times. For checking and trouble-shooting purposes, the cycling
unit circuitry included provisions for operation in a one-addition or
one-pulse-at-a-time mode.
The ENIAC was not originally designed as an internally programmed
computer. The program was set up manually by varying switches and cable
connections. However, means for altering the program and repeating its
iterative steps were built into the master programmer. Digit trays, long
racks of coaxial cables, carried the data from one functioning unit to
another. Program trays, similarly, transferred instructions; i.e.,
programs. In purely repetitive calculations the basic computing sequence
was set by hand. The master programmer automatically controlled
repetition and changed the sequence as required.
The master programmer contained ten 6-stage counters--each routing
incoming program pulses over a field of six output channels. The
position of the counters was controlled by either the number of pulses
which had been supplied to the output channels or by the number of
pulses received at a special input terminal. In this fashion, the number
of sequences could be fixed in advance or made contingent on the results
of a computation.
Each functioning unit of ENIAC was equipped with local program-control
circuits. These circuits contained switches which were set for the
function required. When the local program circuit was stimulated by a
program pulse, the unit performed the desired operation. After it
finished, a program- completion pulse was emitted, via the program tray
coaxial line, to the next unit in the operational sequence.
In addition to its cycling unit, twenty accumulators, and master
programmer, ENIAC included an initiating unit, a high-speed multiplier,
a divider, a square-root unit, and three portable function tables.
The initiating unit turned ENIAC on and off, cleared it, and initiated
computation.
The high-speed multiplier did its work in much the same fashion as a
human would. It contained a built-in multiplication table capable of
multiplying up to 9 times 9. Multiplication of the multiplicand by each
digit of the multiplier took one addition time. The left- and right-hand
figures of each product of a digit of the multiplicand and the
multiplier were accumulated separately to form two partial products,
which, when combined, formed the final product. The multiplication
process for two 10-digit numbers took 2.6 milliseconds.
The divider and square-root unit worked by repeated subtraction and
addition, a time-consuming procedure which took an average of 25
milliseconds for a 10-digit number. The divisor was subtracted from the
dividend, and the sign of the partial remainder was tested after each
step. When the sign became negative, the remainder was shifted up-scale
and the divisor was added until the sum became positive. An accumulator
serving as a quotient register kept a count of the number of additions
and subtractions for the successive decimal places. Extraction of a
square root was a similar process.
The principal purpose of the function tables, which actually were banks
of switch-controlled resistor matrices, was the storage of the arbitrary
functions called for by the problem. The switches selected one of 12
digits and 2 signs for each of the 104 values of an independent variable
that were stored in each table. The functional similarity between modern
computers and the ENIAC is rather astounding, although the ENIAC was
designed almost two decades ago.
The ENIAC was formally dedicated at the Moore School of Electrical
Engineering of the University of Pennsylvania on February 15, 1946, and
it was accepted by the U.S. Army Ordnance Corps in July, four years
after the original suggestion by Dr. Mauchly.
All During 1946 the ENIAC remained at the Moore School, working out
numerical solutions to problems in such fields as atomic energy and
ballistic trajectories. Dismantling at the Moore School began in the
winter, and the first units arrived at Aberdeen Proving Ground in
January 1947. The ENIAC became operational again in August 1947.
The ENIAC's first few years at the Aberdeen Proving Ground were
difficult ones for the operating and maintenance crews. The computer
represented the largest collection of interconnected electronic
circuitry then in existence, and its thousands of components had to
remain operational simultaneously. The result was a huge
preventive-maintenance and testing program, which, in the end, led to
some major modifications of the system.
Tubes were life-tested, and statistical data on the failures were
compiled. This information led to many improvements in vacuum tubes
themselves. Procurement of large quantities of improved, reliable tubes,
however, became a difficult problem. Power-line fluctuations and power
failures made continuous operation directly off transformer mains an
impossibility. The substantial quantity of heat which had to be
dissipated into the warm, humid Aberdeen atmosphere created a
heat-removal problem of major proportions. Down times were long;
error-free running periods were short.
Programming new problems meant weeks of checking and set-up time, for
the ENIAC was designed as a general-purpose computer with logical
changes provided by plug-and-socket connections between accumulators,
function tables, and input-output units. However, the ENIAC's primary
area of application was ballistics--mainly the differential equations of
motion.
In view of this, the ENIAC was converted into an internally stored
fixed-program computer when the late Dr. John von Neumann of the
Institute for Advanced Study at Princeton suggested that code selection
be made by means of switches so that cable connections could remain
fixed for most standard trajectory problems. After that, considerable
time was saved when problems were changed.
The ENIAC performed arithmetic and transfer operations simultaneously.
Concurrent operation caused programming difficulties. A converter code
was devised to enable serial operation. Each function table, as a result
of these changes, became available for the storage of 600 two-decimal
digit instructions.
Those revolutionary modifications, installed early in 1948, converted
ENIAC into a serial instruction execution machine with internal parallel
transfer of decimal information. The original pluggable connections came
to be regarded as permanent wiring by most BRL personnel.
By February 1949, when the ENIAC completed the computation for Project
Chore, an Ordnance Corps contract with the University of Chicago,
operating difficulties had been reduced to a minimum. Running times were
longer, down times shorter and reduced in number. The Chore contract and
others completed during this period proved the ENIAC's worth. Other
machines, among them the Bush differential analyzer and the Bell relay
calculator, would have required a prohibitive length of time to complete
the problems that were assigned to the ENIAC, and the latter was much
faster than any digital system then in existence.
For example, a skilled person with a desk calculator could compute a 60-
second trajectory in about 20 hours. The analog differential analyzer
produced the same result in 15 minutes. ENIAC required 30 seconds--just
half the time of the projectile's flight.
The ENIAC led the computer field during the period 1949 through 1952
when it served as the main computation workhorse for the solution of the
scientific problems of the Nation. It surpassed all other existing
computers put together whenever it came to problems involving a large
number of arithmetic operations. It was the major instrument for the
computation of all ballistic tables for the U.S. Army and Air Force.
In addition to ballistics, the ENIAC's field of application included
weather prediction, atomic-energy calculations, cosmic-ray studies,
thermal ignition, random-number studies, wind-tunnel design, and other
scientific uses. It is recalled that no electronic computers were being
applied to commercial problems until about 1951.
EDVAC and ORDVAC, both faster than ENIAC, began to share the Computing
Laboratory's work load with the ENIAC in 1953. It became apparent almost
immediately that the ENIAC would have to be modified if it were to
remain competitive, economical, and efficient. Modifications, based on
new developments in the computer art, were again made on the ENIAC.
In addition to an independent motor-generator set, which eliminated the
power troubles, a high-speed electronic shifter, which reduced by 80
percent the time required for numerical shifting and eliminated numerous
tubes and program units, was installed early in 1952. Later, in July
1953, a 100-word static magnetic-core memory was added to the system.
The core storage unit, the first operational unit of its kind, was built
by the Burroughs Corporation. The Binary coded decimal, excess three,
system of number representation was used. It was operated successfully
three days after its arrival at BRL and continued in service until the
ENIAC was retired.
To provide for the additional memory capacity, the ENIAC was equipped
with a new function-table selector, a special memory-address selector,
and special pulse-shaping circuits. Three new orders were added to the
converter code for use with the new memory.
Despite these modernizations and the fact that trouble-free operating
time remained at about 100 hours a week during the last 6 years of the
ENIAC's use, its operating costs were far above those of the EDVAC and
ORDVAC. The ENIAC was no longer competitive from an economic point of
view. The work load gradually was shifted to the other machines, and at
11:45 p.m. on October 2, 1955, the power to ENIAC was removed.
The late Dr. von Neumann suggested that attempts be made to preserve at
least some of the ENIAC at the Smithsonian Institution at Washington,
DC. So far, efforts at preservation have had several concrete results.
An operational ENIAC accumulator unit has been shipped to the United
States Military Academy at West Point, NY, for display in the Academy
museum. The Smithsonian will display portions of the ENIAC as soon as
space becomes available.
The National Science Foundation has several computer exhibits in the
United States and Europe, containing portions of the ENIAC. Efforts are
being made to have the U.S. Army Office of Military History declare the
ENIAC as historical-interest property. It is hoped that this progenitor
of a new industry--the key which opened new avenues of approach to
solutions of many perplexing scientific problems, the device which
pioneered the evolution of high-speed digital computing and automatic
data-processing machinery--will be preserved for posterity.
Looking back over the years from 1939 to the fateful evening of October
2, 1955, one can clearly see the life cycle of an enterprise. A need
existed for faster computing speeds, and Army Ordnance had made known
this need to the Moore School.
Mauchly and Eckert suggested an electronic digital computing design
which Gillon believed was worthy of the fullest Ordnance support. Eckert
supervised construction. Coders, programmers, and engineers made it run
and produced useful results which otherwise would have been
unattainable. The rapid progress of computer technology, spurred by the
ENIAC itself, soon made the device obsolete.
Thus ended the life of the once glorious pioneer in the field of digital
computation. As stated in the June 1958 report of the Operations
Research Office of the Johns Hopkins University, entitled "Defense
Spending and the U.S. Economy:" "The present electronic computer
industry is the direct product of Army-sponsored research...," resulting
in the ENIAC, "the first modern electronic computer." It's death was a
natural one--it had served its purpose.
Mr. Weik is with the Ordnance Ballistic Research Laboratories, Aberdeen
Proving Ground, MD. He was assisted in the preparation of this article
by Herman H. Goldstine and Paul N. Gillon, both of whom were
instrumental in the creation of the ENIAC.
Reprinted from the January-February 1961 issue of O R D N A N C E,
Copyright 1961. The Journal of the American Ordnance Association, 708
Mills Building - Washington 6, DC.