Difference between revisions of "History of Computers - Von Neumann Architecture"

From SJS Wiki
Jump to: navigation, search
Line 1: Line 1:
 
==Introduction==
 
==Introduction==
 
Von Neumann architecture was developed by computer scientists John von Neumann, John William Mauchly and J. Presper Eckert in 1945.  It describes a stored-program computer, and in contrast to the more modern Harvard architecture, it uses the same storage to hold both the instructions needed for a computation and the data needed or generated by the computation. (Harvard architecture, on the other hand, uses different sets of data and address buses to read/write data and fetch instructions.)  
 
Von Neumann architecture was developed by computer scientists John von Neumann, John William Mauchly and J. Presper Eckert in 1945.  It describes a stored-program computer, and in contrast to the more modern Harvard architecture, it uses the same storage to hold both the instructions needed for a computation and the data needed or generated by the computation. (Harvard architecture, on the other hand, uses different sets of data and address buses to read/write data and fetch instructions.)  
 +
 +
The first Von Neumann computer was the Manchester Mark I, built in Manchester University in England. In 1948, the Manchester Mark I ran its first program out of a 96-word memory.
 +
 +
Von Neumann's design also led to the construction of the EDVAC computer in 1952.
  
 
==Overview==
 
==Overview==
 
In previous, more special-purpose computers, the instruction set was programmed into the hardware, and only the data set and the immediate computational results were stored, and thus these computers were restricted to performing only the one computational procedure that they were built for. With the development of Von Neumann architecture, computers became reprogrammable and thus more general-purpose since instructions could be changed or replaced easily.  
 
In previous, more special-purpose computers, the instruction set was programmed into the hardware, and only the data set and the immediate computational results were stored, and thus these computers were restricted to performing only the one computational procedure that they were built for. With the development of Von Neumann architecture, computers became reprogrammable and thus more general-purpose since instructions could be changed or replaced easily.  
  
A basic Von Neumann computer is composed of five parts:memory/storage for both the data set and the program (nowadays, this memory is RAM), a control unit (CPU), an arithmetic logic unit (ALU), input structure, and output structure. The control unit/program counter executes the program instructions sequentially, one at a time, and has a register (sometimes called an accumulator) to store immediate results.
+
A basic Von Neumann computer is composed of five parts: memory/storage for both the data set and the program (nowadays, this memory is RAM), a control unit (part of the CPU), an arithmetic logic unit (ALU; also part of the CPU), input and output structures, and a data bus that connects these parts. The control unit executes the program instructions sequentially, one at a time, and has a register (sometimes called an accumulator) to store immediate results.
 +
 
 +
A drawback of Von Neumann architecture is that computers built with this architecture can only do either an instruction fetch or a data operation at a time, and they spend a lot of time moving data to and from memory, so performance slows down and reaches a bottleneck (i.e. the Von Neumann Bottleneck). However, this issue has been corrected with the development of parallel computers, which are based upon Von Neumann processors, but in which the CPUs are connected in parallel and thus. 
  
A drawback of Von Neumann architecture is that computers built with this architecture can only do either an instruction fetch or a data operation at a time, and they spend a lot of time moving data to and from memory, so performance slows down and reaches a bottleneck (i.e. the Von Neumann Bottleneck). However, this issue has been corrected with the development of parallel computers, which are based upon Von Neumann processors, but in which the CPUs are connected in parallel.  
+
Another downside of Von Neumann architecture stems from the fact that there is no distinction between instructions and data in memory. To perform an instruction, a Von Neumann computer checks the memory address in the control unit's program counter and fetches the instruction located at the given address, but the control unit can't effectively distinguish whether the fetched data is an instruction or data. Thus, instructions can sometimes operate upon other instructions (which the control unit would recognize as data), and that allows for self-modifying programs, which are not considered to be within good programming practice due to the complications they cause in debugging.  
  
 
==Significance==
 
==Significance==
Von Neumann architecture allowed computers to become truly reprogrammable for the first time, for it allowed for instructions to be changed easily since only the working storage (and not the permanent storage) had to be changed. This set the stage for future, more general-purpose computers, which could be used to perform a variety of different computational procedures since new instruction sets could be inputted. Another reason that Von Neumann architecture is significant to computer history is because computers today are still stored-program, albeit using the two-bus system of Harvard architecture. In fact, Von Neumann architecture laid the foundation for the development of Harvard architecture.
+
Von Neumann architecture allowed computers to become truly reprogrammable for the first time, for it allowed for instructions to be changed easily since only the working storage (and not the permanent storage) had to be changed. This set the stage for future, more general-purpose computers, which could be used to perform a variety of different computational procedures since new instruction sets could be inputted. Another reason that Von Neumann architecture is significant to computer history is because computers today are still stored-program (meaning that programs are stored and executed in main memory), albeit using the two-bus system of Harvard architecture. In fact, Von Neumann architecture laid the foundation for the development of Harvard architecture.

Revision as of 20:45, 6 September 2013

Introduction

Von Neumann architecture was developed by computer scientists John von Neumann, John William Mauchly and J. Presper Eckert in 1945. It describes a stored-program computer, and in contrast to the more modern Harvard architecture, it uses the same storage to hold both the instructions needed for a computation and the data needed or generated by the computation. (Harvard architecture, on the other hand, uses different sets of data and address buses to read/write data and fetch instructions.)

The first Von Neumann computer was the Manchester Mark I, built in Manchester University in England. In 1948, the Manchester Mark I ran its first program out of a 96-word memory.

Von Neumann's design also led to the construction of the EDVAC computer in 1952.

Overview

In previous, more special-purpose computers, the instruction set was programmed into the hardware, and only the data set and the immediate computational results were stored, and thus these computers were restricted to performing only the one computational procedure that they were built for. With the development of Von Neumann architecture, computers became reprogrammable and thus more general-purpose since instructions could be changed or replaced easily.

A basic Von Neumann computer is composed of five parts: memory/storage for both the data set and the program (nowadays, this memory is RAM), a control unit (part of the CPU), an arithmetic logic unit (ALU; also part of the CPU), input and output structures, and a data bus that connects these parts. The control unit executes the program instructions sequentially, one at a time, and has a register (sometimes called an accumulator) to store immediate results.

A drawback of Von Neumann architecture is that computers built with this architecture can only do either an instruction fetch or a data operation at a time, and they spend a lot of time moving data to and from memory, so performance slows down and reaches a bottleneck (i.e. the Von Neumann Bottleneck). However, this issue has been corrected with the development of parallel computers, which are based upon Von Neumann processors, but in which the CPUs are connected in parallel and thus.

Another downside of Von Neumann architecture stems from the fact that there is no distinction between instructions and data in memory. To perform an instruction, a Von Neumann computer checks the memory address in the control unit's program counter and fetches the instruction located at the given address, but the control unit can't effectively distinguish whether the fetched data is an instruction or data. Thus, instructions can sometimes operate upon other instructions (which the control unit would recognize as data), and that allows for self-modifying programs, which are not considered to be within good programming practice due to the complications they cause in debugging.

Significance

Von Neumann architecture allowed computers to become truly reprogrammable for the first time, for it allowed for instructions to be changed easily since only the working storage (and not the permanent storage) had to be changed. This set the stage for future, more general-purpose computers, which could be used to perform a variety of different computational procedures since new instruction sets could be inputted. Another reason that Von Neumann architecture is significant to computer history is because computers today are still stored-program (meaning that programs are stored and executed in main memory), albeit using the two-bus system of Harvard architecture. In fact, Von Neumann architecture laid the foundation for the development of Harvard architecture.