Pages

Jump to UNIX history continues..

Von Neumannarchitecture


John Louisvon Neumann, mathematician (born János von Neumann 28 December 1903 inBudapest, Hungary, died 8 February 1957 in Washington, D.C.), proposed the stored program concept whileprofessor of mathemtics (one of the orginal six) at Princeton University’sInstitute for Advanced Services, in which programs (code) are stored in thesame memory as data. The computer knows the difference between code and data bywhich it is attempting to access at any given moment. When evaluating code, thebinary numbers are decoded by some kind of physical logic circuits (later othermethods, such as microprogramming, were introduced), and then the instructionsare run in hardware. This design is called von Neumann architecture andhas been used in almost every digital computer ever made.


VonNeumann architecture introduced flexibility to computers. Previous computershad their programming hard wired into the computer. A particular computer couldonly do one task (at the time, mostly building artillery tables) and had to bephysically rewired to do any new task.

By usingnumeric codes, von Neumann computers could be reprogrammed for a wide varietyof problems, with the decode logic remaining the same.

Asprocessors (especially super computers) get ever faster, the von Neumann bottleneck is starting tobecome an issue. With data and code both being accessed over the same circuitlines, the processor has to wait for one while the other is being fetched (orwritten). Well designed data and code caches help, but only when the requestedaccess is already loaded into cache. Some researchers are now experimentingwith Harvard architecture to solve the von Neumann bottleneck. InHarvard arrchitecture, named for Howard Aiken’s experimental Harvard Mark I(ASCC) calculator [computer] at Harvard University, a second set of data andaddress lines along with a second set of memory are set aside for executablecode, removing part of the conflict with memory accesses for data.

VonNeumann became an American citizen in 1933 to be eligible to help on top secretwork during World War II. There is a story that Oskar Morganstern coached vonNeumann and Kurt Gödel on the U.S. Constitution and American history whiledriving them to their immigration interview. Morganstern asked if they had anyquestions, and Gödel replied that he had no questions, but had found somelogical inconsistencies in the Constitution that he wanted to ask theImmigration officers about. Morganstern recommended that he not ask questions,but just answer them.

VonNeumann occassionally worked with Alan Turing in 1936 through 1938 when Turingwas a graduate student at Princeton. Von Neumann was exposed to the concepts oflogical design and universal machine proposed in Turing’s 1934 paper “OnComputable Numbers with an Application to the Entschiedungs-problem”.

VonNeumann worked with such early computers as the Harvard Mark I, ENIAC, EDVAC,and his own IAS computer.


Earlyresearch into computers involved doing the computations to create tables, especiallyartillery firing tables. Von Neumann was convinced that the future of computersinvolved applied mathematics to solve specific problems rather than mere tablegeneration. Von Neumann was the first person to use computers for mathematicalphysics and economics, proving the utility of a general purpose computer.

VonNeumann proposed the concept of stored programs in the 1945 paper “First Draftof a Report on the EDVAC”. Influenced by the idea, Maurice Wilkes of theCambridge University Mathematical Laboratory designed and built the EDSAC, theworld’s first operational, production, stored-program computer.

The firststored computer program ran on the Manchester Mark I [computer] on June 21,1948.

VonNeumann foresaw the advantages of parallelism in computers, but because ofconstruction limitations of the time, he worked on sequential systems.

VonNeumann advocated the adoption of the bit as the measurement of computer memoryand solved many of the problems regarding obtaining reliable answers fromunreliable computer components.

Interestingly,von Neumann was opposed to the idea of compilers. When shown the idea forFORTRAN in 1954, von Neumann asked “Why would you want more than machinelanguage?”. Von Neumann had graduate students hand assemble programs intobinary code for the IAS machine. Donald Gillies, a student at Princeton,created an assembler to do the work. Von Neumann was angry, claiming “It is awaste of a valuable scientific computing instrument to use it to do clericalwork”.

VonNeumann also did important work in set theory (including measure theory), themathematical foundation for quantum theory (including statistical mechanics),self-adjoint algebras of bounded linear operators on a Hilbert space closed inweak operator topology, non-linear partial differential equations, and automatatheory (later applied to cmputers). His work in economics included his 1937paper “A Model of General Economic Equilibrium” on a multi-sectoral growthmodel and his 1944 book “Theory of Games and Economic Behavior” (co-authoredwith Morgenstern) on game theory and uncertainty.

Ileave the discussion of von Neumann with a couple of quotations:

 “If people do not believe that mathematics issimple, it is only because they do not realize how complicated life is.”

 “Anyone who considers arithmetical methods ofproducing random numbers is, of course, in a state of sin.”