Von Neumann Architecture
Learning Objectives
• Understand the origin of von Neumann Architecture
• Understand von Neumann Architecture
• Understand its components and functionalities
• To be aware of other architectures
What is an architecture?
• “The complex or carefully designed structure of
something.”
Early days
Fixed Programs
• They were designed to do very specific
operations
• A calculator is a fixed program computer.
• It can do basic mathematics, but it cannot be used
as a word processor or a gaming console.
• Changing the program of a fixed-program
machine requires rewiring, restructuring, or
redesigning the machine.
• It could take three weeks to set up a program
on ENIAC and get it working.
Stored Programs
• A stored-program computer is one that
stores program instructions in electronic
memory
• Therefore easily reprogrammable
• Von Neumann is a stored program architecture
(also known as Princeton architecture)
introduced by John von Neumann, a
Hungarian-American mathematician, physicist,
and computer scientist.
Von Neumann Architecture
Von Neumann Architecture
cntd…
• The basic concept behind the von Neumann architecture is the ability to store program
instructions in memory along with the data on which those instructions operate.
• The von Neumann architecture describes a general framework, or structure, that a
computer's hardware, programming, and data should follow.
• Even all the most modern computers and mobile devices are designed based on
this fundamental concept.
• It had 3 basic components:
1. I/O Interfaces
2. CPU
3. Memory
• Buses (denoted by the arrows) carries the data around
I/O Interfaces
• The I/O interfaces allow the computer's memory to
receive information and send data to output
devices.
• Allow the computer to communicate to the user and
to secondary storage devices like disk and tape
drives
Central Processing Unit
• Can be considered the heart of the
computing system
• Includes three main components:
1. Control Unit (CU)
2. Arithmetic Logic Unit (ALU)
3. Registers
CPU: Control Unit
• Responsible for decoding the instructions and
controlling how data moves around the computer
system
• The execution of each instruction is determined by
a sequence of control signals produced by the
control unit.
CPU: Arithmetic Logic Unit
• Carries out the calculations and logical decisions
required by the program instructions.
• The inputs to an ALU are the data to be operated
on, called operands, and a code indicating the
operation to be performed; the ALU's output is
the result of the performed operation.
CPU: Registers
• Registers are memory locations with specific purpose
• Accumulator (AC)- Stores the results of calculations made by the ALU
(temporary)
• Program counter (PC)- Keeps track of the location for the next instruction to
be dealt with. The program counter then passes this next address to the
memory address register (MAR)
• Memory Address Register (MAR)- Stores memory location for data or
instructions that needs to be fetched from memory or stored into memory
• Memory Data Register (MDR)- Stores data or instructions fetched from
memory or any data that is to be transferred and stored in memory
• Current Instruction Register (CIR)- Stores the most recently fetched
instruction while it is waiting to be decoded and executed
Memory
• The computer's memory is used to store program
instructions and data.
• Consists of many memory cells (storage units) of a
fixed size. Each cell has an address associated
with it.
• Two of the commonly used type of memories are
RAM (random-access memory) and Secondary
memory
Memory cntd…
• Memory width (W)- How many
bits is each memory cell,
(typically one byte =8 bits)
• Address width (N)- How many
bits used to represent each
address
• Address space- the number of
uniquely identifiable memory
locations (2N)
Advantages of von
Neumann Architecture
• Control Unit gets data and instruction in the same
way from one memory. It simplifies design and
development of the Control Unit.
• Data from memory and from devices are accessed
in the same way.
• Memory organization is in the hands of
programmers.
Disadvantages of von
Neumann Architecture
• Serial instruction processing does not allow parallel
execution of program.
• Only one information can be accessed at the
same time.
• Instruction stored in the same memory as the data
can be accidentally rewritten by an error in a
program.
Alternative Architectures
Harvard
Architecture
• Memory for data was separated from the memory for
instruction.
• Two memories with two Buses allow parallel access to data and
instructions. Execution can be 2x faster.
• But control unit for two Buses is more complicated and more
expensive.
Summary
• Von Neumann architecture is based on stored
programs concept.
• Has 3 main components.
• All modern computers still use this 70 year old
fundamental concept
• Has its own advantages and disadvantages
• Availability of alternative architectures
Thank You!