You are on page 1of 10

CPU Architecture

The central processing unit (CPU) consists of six main components:

• control unit (CU)


• arithmetic logic unit (ALU)
• registers

• cache

• buses

• clock

All the components work together to allow processing and system control.

Control unit (CU)


The CU provides several functions:

• it fetches, decodes and executes instructions


• it issues control signals that control hardware components within the CPU
• it transfers data and instructions around the system

Arithmetic Logic Unit (ALU)


The ALU has two main functions:

• it performs arithmetic and logical operations (decisions).


• it acts as a gateway between primary storage and secondary storage - data
transferred between them passes through the ALU.
The ALU performs arithmetic and logical operations.

Registers
Registers are small amounts of high-speed memory contained within the CPU.
They are used by the processor to store small amounts of data that are needed
during processing, such as:

• the address of the next instruction to be executed


• the current instruction being decoded
• the results of calculations
Different processors have different numbers of registers for different purposes.
Most have some, or all, of the following:

• program counter (PC)


• memory address register (MAR)
• memory data register (MDR)
• current instruction register (CIR)
• accumulator (ACC)

Cache
Cache is a small amount of high-speed random access memory (RAM) built
directly within the processor. It is used to temporarily hold data and instructions
that the processor is likely to reuse. This allows for faster processing, as the
processor does not have to wait for the data and instructions to be fetched from the
RAM.
Clock

The CPU contains a clock which, along with the CU, is used to coordinate all of
the computer's components. The clock sends out a regular electrical pulse which
synchronises (keeps in time) all the components.

The frequency of the pulses is known as clock speed. Clock speed is measured
in hertz (Hz). The greater the speed, the more instructions can be performed in any
given moment of time.
In the 1980s, processors commonly ran at a rate of between 3 megahertz
(MHz) and 5 MHz, which is 3 million to 5 million pulses or cycles per second.
Today, processors commonly run at a rate of between 3 gigahertz (GHz) and 5
GHz, which is 3 billion to 5 billion pulses or cycles per second.
Buses
A bus is a high-speed internal connection. Buses are used to send control signals
and data between the processor and other components.
Three types of bus are used.

• Address bus - carries memory addresses from the processor to other


components such as primary storage and input/output devices. The address
bus is unidirectional.
• Databus - carries the data between the processor and other components. The
data bus is bidirectional.
• Controlbus - carries control signals from the processor to other components.
The control bus also carries the clock's pulses. The control bus is
unidirectional.

What is a computer bus?

A bus is a communication system in computer architecture that transfers data


between components inside a computer, or between computers.

The term encompasses all the components related to hardware (wire, optical fiber,
etc.) and software, including communication protocol.
The following are a few points to describe a computer bus:-

• A bus is a group of lines/wires which carry computer signals.


• A bus is the means of shared transmission.
• Lines are assigned for providing descriptive names. — carries a single
electrical signal, e.g. 1-bit memory address, data bits series, or timing
control that turns the device on or off.
• Data can be transferred from one computer system location to another
(between different I / O modules, memory, and CPU).
• The bus is not only cable but also hardware (bus architecture),
protocol, program, and bus controller.

Functions of a computer bus


Below are a few of the functions in a computer bus:-

• Data sharing – All types of buses used in network transfer data


between the connected computer peripherals. The buses either transfer
or send data in serial or parallel transfer method. This allows 1, 2, 4,
or even 8 bytes of data to be exchanged at a time. (A Byte is an 8-bit
group). Buses are classified according to how many bits they can
move simultaneously, meaning we have 8-bit, 16-bit, 32-bit, or even
64-bit buses.
• Addressing – A bus has address lines that suit the processors. This
allows us to transfer data to or from different locations in the memory.
• Power – A bus supplies the power to various connected peripherals.
Structure and Topologies of Computer buses
Lines are grouped as mentioned below –

• Power line provides electrical power to the components connected


• Data lines carrying data or instructions between modules of the
system
• Address lines indicate the recipient of the bus data
• Control lines control the synchronization and operation of the bus and
the modules linked to the bus
What are the different types of computer buses?
Computers normally have two bus types:-

• System bus – This is the bus that connects the CPU to the
motherboard’s main memory. The system bus is also known as a
front-side bus, a memory bus, a local bus, or a host bus.
• A number of I / O Buses, (I / O is an input/output acronym)
connecting various peripheral devices to the CPU. These devices
connect to the system bus through a ‘bridge’ implemented on the
chipset of the processors. Other I / O bus names include “expansion
bus,” “external bus” or “host bus”

Bus organization of Microprocessor

Bus is a group of conducting wires which carries information, all the peripherals
are connected to microprocessor through Bus.
Diagram to represent bus organization system of 8085 Microprocessor.
There are three types of buses.
1. Address bus –
It is a group of conducting wires which carries address only.Address bus
is unidirectional because data flow in one direction, from microprocessor
to memory or from microprocessor to Input/output devices (That is, Out
of Microprocessor).

Length of Address Bus of 8085 microprocessor is 16 Bit (That is, Four


Hexadecimal Digits), ranging from 0000 H to FFFF H, (H denotes
Hexadecimal). The microprocessor 8085 can transfer maximum 16 bit
address which means it can address 65, 536 different memory location.
The Length of the address bus determines the amount of memory a
system can address.Such as a system with a 32-bit address bus can
address 2^32 memory locations.If each memory location holds one byte,
the addressable memory space is 4 GB.However, the actual amount of
memory that can be accessed is usually much less than this theoretical
limit due to chipset and motherboard limitations.
2. Data bus –
It is a group of conducting wires which carries Data only.Data bus is
bidirectional because data flow in both directions, from microprocessor
to memory or Input/Output devices and from memory or Input/Output
devices to microprocessor.
Length of Data Bus of 8085 microprocessor is 8 Bit (That is, two
Hexadecimal Digits), ranging from 00 H to FF H. (H denotes
Hexadecimal).
When it is write operation, the processor will put the data (to be written)
on the data bus, when it is read operation, the memory controller will get
the data from specific memory block and put it into the data bus.
The width of the data bus is directly related to the largest number that the
bus can carry, such as an 8 bit bus can represent 2 to the power of 8
unique values, this equates to the number 0 to 255.A 16 bit bus can carry
0 to 65535.
3. Control bus –
It is a group of conducting wires, which is used to generate timing and
control signals to control all the associated peripherals, microprocessor
uses control bus to process data, that is what to do with selected memory
location. Some control signals are:
• Memory read
• Memory write
• I/O read
• I/O Write
• Opcode fetch
If one line of control bus may be the read/write line.If the wire is low (no
electricity flowing) then the memory is read, if the wire is high
(electricity is flowing) then the memory is written.
von Neumann Architecture

Von Neumann architecture is the design upon which many general purpose
computers are based. The key elements of von Neumann architecture are:

• data and instructions are both stored as binary digits


• data and instructions are both stored in primary storage
• instructions are fetched from memory one at a time and in order (serially)
• theprocessor decodes and executes an instruction, before cycling around to
fetch the next instruction
• the cycle continues until no more instructions are available
A processor based on von Neumann architecture has five special registers which it
uses for processing:

• theprogram counter (PC) holds the memory address of the next instruction
to be fetched from primary storage
• thememory address register (MAR) holds the address of the current
instruction that is to be fetched from memory, or the address in memory to
which data is to be transferred
• the
memory data register (MDR) holds the contents found at the address
held in the MAR, or data which is to be transferred to primary storage
• the
current instruction register (CIR) holds the instruction that is currently
being decoded and executed
• theaccumulator (ACC) is a special purpose register and is used by
the arithmetic logic unit (ALU) to hold the data being processed and the
results of calculations

Harvard Architecture
In early computer systems, machine instructions were stored on punch cards and
data could be stored on another media such as magnetic tape. This kept the
instructions and data entirely separate from one another, known as the Harvard
architecture. In modern computer systems this can be achieved by using a central
processing unit with two separate memory units, one to store machine instructions
and another to store data, which are connected by different buses.

You might also like