Everything about Eniac totally explained
ENIAC, short for
Electronic Numerical Integrator And Computer, was the first general-purpose electronic computer. It was the first high-speed,
Turing-complete, digital computer capable of being reprogrammed to solve a full range of computing problems, though earlier machines had been built with some of these properties. ENIAC was designed and built to calculate
artillery firing tables for the
U.S. Army's
Ballistic Research Laboratory.
The contract was signed on
June 5,
1943 and
Project PX was constructed by the
University of Pennsylvania's
Moore School of Electrical Engineering from July,
1943. It was unveiled on
February 14,
1946 at Penn, having cost almost $500,000. ENIAC was shut down on
November 9,
1946 for a refurbishment and a memory upgrade, and was transferred to
Aberdeen Proving Ground,
Maryland in
1947. There, on
July 29 of that year, it was turned on and would be in continuous operation until 11:45 p.m. on
October 2,
1955.
ENIAC was conceived and designed by
John Mauchly and
J. Presper Eckert of the
University of Pennsylvania. The team of design engineers assisting the development included
Bob Shaw (function tables),
Chuan Chu (divider/square-rooter),
Kite Sharpless (master programmer),
Arthur Burks (multiplier),
Harry Huskey (reader/printer), and
Jack Davis (accumulators).
Description
ENIAC contained 17,468
vacuum tubes, 7,200 crystal
diodes, 1,500
relays, 70,000
resistors, 10,000
capacitors and around 5 million hand-
soldered joints. It weighed 30
short tons (27 t), was roughly 8.5 feet by 3 feet by 80 feet (2.6 m by 0.9 m by 26 m), took up 680 square feet (63 m²), and consumed 150
kW of power . Input was possible from an IBM card reader, while an IBM card punch was used for output. These cards could be used to produce printed output offline using an
IBM accounting machine, probably the
IBM 405.
ENIAC used ten-position
ring counters to store digits; each digit used 36 tubes, 10 of which were the dual triodes making up the
flip-flops of the ring counter. Arithmetic was performed by "counting" pulses with the ring counters and generating carry pulses if the counter "wrapped around", the idea being to emulate in electronics the operation of the digit wheels of a mechanical
adding machine. ENIAC had twenty ten-digit signed
accumulators that used
ten's complement representation and could perform 5,000 simple addition or subtraction operations between any of them and a source (for example, another accumulator, constant transmitter) every second (Note: It was possible to connect several accumulators to run simultaneously, so the peak speed of operation was potentially much higher due to parallel operation). It was possible to wire the carry of one accumulator into another to perform
double precision arithmetic but the accumulator carry circuit timing prevented the wiring of three or more for higher precision. The ENIAC used four of the accumulators controlled by a special
Multiplier unit and could perform 385 multiplication operations per second. The ENIAC used five of the accumulators controlled by a special
Divider/Square-Rooter unit and could perform forty division operations per second or three
square root operations per second. The other nine units in ENIAC were the
Initiating Unit (started and stopped the machine), the
Cycling Unit (synchronized the other units), the
Master Programmer (controlled "loop" sequencing), the
Reader (controlled an IBM punch card reader), the
Printer (controlled an IBM punch card punch), the
Constant Transmitter, and three
Function Tables.
The references by Rojas and Hashagen or (Wilkes 1956) give more details about the times for operations, which differ somewhat from those above. The basic machine cycle was 200
microseconds (20 cycles of the 100 kHz clock in the cycling unit), or 5,000 cycles per second for operations on the 10-digit numbers. In one of these cycles, ENIAC could write a number to a register, read a number from a register, or add/subtract two numbers. A multiplication of a 10-digit number by a
d-digit number (for
d up to 10) took
d+4 cycles, so a 10- by 10-digit multiplication took 14 cycles, or 2800 microseconds—a rate of 357 per second. If one of the numbers had fewer than 10 digits, the operation was faster. Division and square roots took 13(
d+1) cycles, where
d is the number of digits in the result (quotient or square root). So a division or square root took up to 143 cycles, or 28,600 microseconds—a rate of 35 per second. (Wilkes 1956:20 states that a division with a 10 digit quotient required 6 milliseconds.) If the result had fewer than ten digits, it was obtained faster.
Reliability
ENIAC used common
octal-base radio tubes of the day; the decimal
accumulators were made of
6SN7 flip-flops, while 6L7s, 6SJ7s, 6SA7s and 6AC7s were used in logic functions. Numerous
6L6s and
6V6s served as line drivers to drive pulses through cables between rack assemblies.
Some electronics experts predicted that tube failures would occur so frequently that the machine would never be useful. This prediction turned out to be partially correct: several tubes burned out almost every day, leaving it nonfunctional about half the time. Special high-reliability tubes were not available until 1948. Most of these failures, however, occurred during the warm-up and cool-down periods, when the tube heaters and cathodes were under the most thermal stress. By the simple (if expensive) expedient of never turning the machine off, the engineers reduced ENIAC's tube failures to the more acceptable rate of one tube every two days. According to a 1989 interview with Eckert the continuously failing tubes story was therefore mostly a myth: "We had a tube fail about every two days and we could locate the problem within 15 minutes."
In
1954, the longest continuous period of operation without a failure was 116 hours (close to five days).
Programmability
The six women who did most of the programming of ENIAC by manipulating its switches and cables were inducted in 1997 into the Women in Technology International Hall of Fame. As they were called by each other in 1946, they were
Kay McNulty,
Betty Jennings,
Betty Snyder,
Marlyn Wescoff,
Fran Bilas and
Ruth Lichterman.
Eckert and Mauchly took the experience they gained and founded the
Eckert-Mauchly Computer Corporation, producing their first computer,
BINAC, in
1949 before being acquired by
Remington Rand in
1950 and renamed as their
UNIVAC division.
ENIAC was a one-of-a-kind design and was never repeated. The freeze on design in 1943 meant that the computer had a number of shortcomings which were not included in the design, notably the inability to store a program.
John von Neumann, who was consulting for the Moore School on the
EDVAC (the ENIAC's successor computer for the BRL) and sat in on the Moore School meetings at which the stored program concept was elaborated, wrote up an incomplete set of notes (
First Draft of a Report on the EDVAC) intended to be used as an internal memorandum describing, elaborating, and couching in formal logical language the ideas developed in the meetings. Herman Goldstine distributed copies of the
First Draft to a number of government and educational institutions, spurring widespread interest in the construction of a new generation of electronic computing machines, including
EDSAC and
SEAC.
A number of improvements were also made to ENIAC from
1948, including a primitive read-only stored programming mechanism using the Function Tables as program
ROM, an idea included in the ENIAC patent and proposed independently by Dr. Richard Clippinger of the BRL. Dick Clippinger consulted with John von Neumann on what instruction set to implement. Clippinger had thought of a 3-address architecture while von Neumann proposed a 1-address architecture because it was simpler to implement. Three digits of one accumulator (6) were used as the program counter, another accumulator (15) was used as the main accumulator, a third accumulator (8) was used as the address pointer for reading data from the function tables, and most of the other accumulators (1-5, 7, 9-14, 17-19) were used for data memory. The programming of the stored program for ENIAC was done by Betty Jennings, Dick Clippinger and Adele Goldstine. It was first demonstrated as a stored-program computer on
September 16,
1948, running a program by
Adele Goldstine for John von Neumann. This modification reduced the speed of ENIAC by a factor of six and eliminated the ability of parallel computation, but as it also reduced the reprogramming time to hours instead of days, it was considered well worth the loss of performance. Also analysis had shown that due to differences between the electronic speed of computation and the electromechanical speed of input/output, almost any practical real world problem was completely
I/O bound even without making use of the original machine's parallelism and most would still be I/O bound even after the speed reduction from this modification. Early in
1952, a high speed shifter was added, which improved the speed for shifting by a factor of five. In July
1953, a 100-word expansion
core memory was added to the system, using
binary coded decimal,
excess-3 number representation. To support this expansion memory, the ENIAC was equipped with a new Function Table selector, a memory address selector, pulse-shaping circuits, and three new orders were added to the programming mechanism.
Comparison with other early computers
Mechanical and electrical computing machines have been around since the 19th century, but the 1930s and 40s are considered the beginning of the modern computer era.
- The American Atanasoff–Berry Computer (ABC) (shown working in December 1939) was the first electronic digital computer. It implemented binary computation with vacuum tubes but wasn't general purpose, being limited to solving systems of linear equations. It also didn't exploit electronic computing speeds, being limited by a rotating capacitor drum memory and an input-output system that was intended to write intermediate results to paper cards.
- The German Z3 (shown working in May 1941) was designed by Konrad Zuse. It was the first general-purpose digital computer, but it was electromechanical, rather than electronic, as it used relays for all functions. Like the ABC, it computed logically using binary math. Unlike the ABC, it was Turing-complete and fully programmable by punched tape.
- The British Colossus computer (used for cryptanalysis starting in 1943) was designed by Tommy Flowers. Colossus was digital, all-electronic, and could be reprogrammed by rewiring, but wasn't fully general purpose as it wasn't Turing-complete.
- Howard Aiken's 1944 Harvard Mark I was programmed by punched tape and used relays.
The ABC, ENIAC and Colossus all used
thermionic valves (vacuum tubes). ENIAC's registers performed decimal arithmetic, rather than binary arithmetic like the Z3 or the Atanasoff-Berry Computer.
Until 1948, ENIAC required rewiring to reprogram, like the Colossus. The idea of the stored-program computer with combined memory for program and data was conceived during the development of the ENIAC, but it wasn't implemented at that time because World War II priorities required the machine to be completed quickly, and it was realized that 20 storage locations for memory and programs would be much too small.
Public knowledge
The Z3 and Colossus were developed independent of the ABC and the ENIAC during
World War II. The Z3 was destroyed by Allied bombing of Berlin in 1944. The Colossus machines were part of the UK's war effort, and were destroyed in 1945 to maintain secrecy. Their existence only became generally known in the 1970s, though knowledge of their capabilities remained among their UK staff and invited Americans. The ABC was dismantled by
Iowa State University, after
John Atanasoff was called to
Washington, D.C. to do physics research for the U.S. Navy. ENIAC, by contrast, was put through its paces for the press in 1946, "and captured the world's imagination".
Older histories of computing may therefore not be comprehensive in their coverage and analysis of this period.
Patent
For a variety of reasons (including Mauchly's June 1941 examination of the
Atanasoff–Berry Computer, prototyped in 1939 by
John Atanasoff and
Clifford Berry), the patent for the ENIAC, granted in 1964, was voided by the 1973 decision of the landmark federal court case
Honeywell v. Sperry Rand, putting the invention of the electronic digital computer in the
public domain and providing legal recognition to Atanasoff as the inventor of the electronic digital computer.
Parts on display
The School of Engineering and Applied Science at the
University of Pennsylvania has four of the original forty panels and one of the three function tables of the ENIAC. The
Smithsonian has five panels in the
National Museum of American History in Washington D.C. The
Computer History Museum in Mountain View, California has a single panel on display. The
University of Michigan in Ann Arbor has four panels, salvaged by
Arthur Burks. The
U.S. Army Ordnance Museum at
Aberdeen Proving Ground,
Maryland, where ENIAC was used, has one of the function tables.
As of 2004, a chip of silicon measuring 0.02 inches (0.5 mm) square holds the same capacity as the ENIAC, which occupied a large room.
Further Information
Get more info on 'Eniac'.
|
External Link Exchanges
Do you know how hard it is to get a link from a large encyclopaedia? Well we're different and will prove it. To get a link from us just add the following HTML to your site on a relevant page:
<a href="http://eniac.totallyexplained.com">ENIAC Totally Explained</a>
Then simply click through this link from your web page. Our crawlers will verify your link, extract the title of your web page and instantly add a link back to it. If you like you can remove the words Totally Explained and embed the link in article text.
As long as your link remains in place, we'll keep our link to you right here. Please play fair - our crawlers are watching. Your site must be closely related to this one's topic. Any kind of spamming, dubious practises or removing the link will result in your link from us being dropped and, potentially, your whole site being banned. |