Lecture 3
Lecture 3
The Von Neumann architecture, also known as the Von Neumann model and Princeton
architecture, is a computer architecture based on that described in 1945 by the mathematician
and physicist John von Neumann and others in the First Draft of a Report on the EDVAC.[1] This
describes a design architecture for an electronic digital computer with parts consisting of a
processing unit containing an arithmetic logic unit and processor registers, a control unit
containing an instruction register and program counter, a memory to store both data and
instructions, external mass storage, and input and output mechanisms. The meaning has
evolved to be any stored-program computer in which an instruction fetch and a data operation
cannot occur at the same time because they share a common bus. This is referred to as the
Von Neumann bottleneck and often limits the performance of the system.
The design of Von Neumann architecture is simpler than the more modern Harvard
architecture which is also a stored-program system but has one dedicated set of address and
data buses for reading data from and writing data to memory, and another set of address and
data buses for fetching instructions.
A stored-program digital computer is one that keeps its program instructions, as well as its
data, in read-write, random-access memory (RAM). Stored-program computers were
advancement over the program-controlled computers of the 1940s, such as the Colossus and
the ENIAC, which were programmed by setting switches and inserting patch leads to route data
and to control signals between various functional units. In the vast majority of modern
computers, the same memory is used for both data and program instructions, and the Von
Neumann vs. Harvard distinction applies to the cache architecture, not the main memory.
Fig.1.1 FOUR SUBSYSTEMS
Fig.1.2 The model defines a computer as four subsystems: memory, arithmetic logic unit,
control unit, and input/output.
Memory
Memory is the storage area. It is where programs and data are stored during processing.
• Control Unit
The control unit controls the operations of the memory, ALU, and the input/output
subsystem.
• Input/Output
The input subsystem accepts input data and the program from outside the computer; the
output subsystem sends the result of processing to the outside.