You are on page 1of 3

System architecture

1. Von Neumann architecture


2. Harvard architecture
3. Pros and cons of each architecture
4. Busses, address decoding and three-state logic
5. Memories: technology and operation

The systems architecture represents the way that the elements of the system are
interconnected and exchange data. It has a significant influence on the way the CPU
accesses its peripherals. Every type of architecture requires special hardware features
from the CPU (in particular from its bus system). Every microprocessor is therefore
designed to work in a specific type of architecture and cannot usually work in other
types.
Every type of architecture includes:
At least one CPU
At least one peripheral
At least one bus system connecting the CPU to the peripherals.

1. VON NEUMANN ARCHITECTURE


In 1946, well before the development of the first microprocessor, John Von Neumann
developed the first computer architecture that allowed the computer to be programmed
by codes residing in memory. This development took place at University of
Pennsylvanias Moore school of Electrical Engineering, while he was working on the
ENIAC one of the first electronic computers. Prior to this development, modifying the
program of a computer required making modifications to its wiring. In the ENIAC,
program instructions were stored using an array of switches, which represented an early
form of Read Only Memory. The Von Neumann architecture is the most widely used
today, and is implemented by the majority of microprocessors on the market. It is
described in Figure 3-1. For this architecture, all the elements of the computer are
interconnected by a single system of 3 busses:
The Data Bus Transports data between the CPU and its peripherals. It is
bi-directional. The CPU can read or write data in the peripherals.
The Address Bus The CPU uses the address bus to indicate which
peripherals it wants to access, and within each peripheral which specific register.
The address bus is unidirectional The CPU always writes the address, which is
read by the peripherals.

BR U NO P AI LL ARD I NG . 23
Control Bus This bus carries signals that are used to manage and
synchronize the exchanges between the CPU and its peripherals. For instance
the signal that indicates if the CPU wants to read or write the peripheral, as well
as the signal used to synchronize the exchange are part of the control bus. Since
the CPU initiates and manages all data exchanges with the peripherals, the main
signals of the control bus originate at the CPU and are sent to the peripherals.
However special lines of the control bus, such as interrupt or wait-state signals
carry information from the peripherals to the CPU.

Outside world
Clock
Memory
(Program / Peripheral
Data)

CPU
Address
Data
Control

Bus system

Von Neumann architecture

Figure 3-1

The main characteristic of the Von Neumann architecture is that it only possesses 1 bus
system. The same bus carries all the information exchanged between the CPU and the
peripherals, including the instruction codes as well as the data processed by the CPU.

24 BR U NO P AI LL ARD
2. HARVARD ARCHITECTURE

Clock

Outside world

Program Data
Memory Memory Peripheral

CPU
Address Address
Data Data
Control Control

Program Bus System Data Bus System

Harvard architecture

Figure 3-2

The Harvard architecture as the name implies was developed at Harvard University.
By contrast to the Von Neumann architecture, it uses two separate bus systems to
transport the instruction codes and the data being processed by the CPU.
The Program Bus System: Is used exclusively to transport instruction codes
from the program memory to the CPU during the fetch cycle.
The Data Bus System: Is used exclusively to transport data from/to the
CPU, to/from the memory and peripherals.

Note: One word of caution about a confusing terminology is in order: The Program Bus
System and the Data Bus System are complete bus systems composed of an address bus, a
data bus and a control bus. Very often the Program Bus System and Data Bus System are
simply called Program Bus and Data Bus. When discussing a data bus, it is therefore
important to put it in context and determine if it applies to a data bus system comprising an
address bus, a data bus and a control bus, or if it is simply a data bus.

3. PROS AND CONS OF EACH ARCHITECTURE


Since it possesses two independent bus systems, the Harvard architecture is
capable of simultaneously reading an instruction code, and reading or writing

BR U NO P AI LL ARD 25

You might also like