COMPUTER
ORGANIZATI
ON AND
ARCHITECTU
RE (COA)
Ms. Umang Kant
AP, KIET, CSE-AIML
Department
Ph.D Research Scholar, DTU,
CSE
CONTENTS
1. Computer Architecture vs Computer Organization
2. Functional Units of Computer
Input Unit
Central Processing Unit (ALU & CU)
Memory Unit
Output Unit
3. Bus
4. Internal Bus vs External Bus
5. Functions of Computer Bus
6. Types of Bus
7. Introduction to Bus Arbitration
UNIT 01
INTRODUCTI
ON
COMPUTER ARCHITECTURE
Computer Architecture is a functional description of requirements and
design implementation for the various parts of a computer.
It deals with the functional behavior of computer systems.
It comes before the computer organization while designing a computer.
Architecture describes what the computer does.
Computer Architecture refers to those attributes of a system that have a direct
impact on the logical execution of a program.
Architecture is those attributes visible to the programmer.
Examples:
the instruction set
the number of bits used to represent various data types
I/O mechanisms
memory addressing techniques
COMPUTER ORGANIZATION
Computer Organization comes after the decision of Computer Architecture first.
Computer Organization is how operational attributes are linked together and contribute
to realizing the architectural specification.
Computer Organization deals with a structural relationship.
The organization describes how it does it.
Computer Organization refers to the operational units and their interconnections that
realize the architectural specifications.
Organization is how features are implemented
Examples are things that are transparent to the programmer:
control signals
interfaces between computer and peripherals
COMPUTER ARCHITECTURE VS
COMPUTER ORGANIZATION
Computer Architecture Computer Organization
Computer Architecture is concerned with the way Computer Organization is concerned with the
hardware components are connected together to form a structure and behavior of a computer system as
computer system. seen by the user.
It acts as the interface between hardware and software. It deals with the components of a connection in a
system.
Computer Architecture helps us to understand the Computer Organization tells us how exactly all the
functionalities of a system. units in the system are arranged and
interconnected.
A programmer can view architecture in terms of Whereas Organization expresses the realization of
instructions, addressing modes and registers. architecture.
While designing a computer system architecture is An organization is done on the basis of
considered first. architecture.
Computer Architecture deals with high-level design Computer Organization deals with low-level
issues. design issues.
Architecture involves Logic (Instruction sets, Organization involves Physical Components
Addressing modes, Data types, Cache optimization) (Circuit design, Adders, Signals, Peripherals)
DIGITAL
COMPUTER
It is a processing machine that
processes the information in digital
form i.e. 0s and 1s.
Digital computers can only understand
binary language (0s and 1s).
If any analog quantity is to be
processed, it must be converted into
digital form before processing.
Whatever the size, and capacity of the
computer it should have five
functional blocks.
The following are the
five functional
units/block of a
computer:
1. Input Unit
2. Central Processing
Unit
2.1. Arithmetic and
Logic Unit (ALU)
2.2. Control Unit
(CU)
FUNCTIONAL UNITS OF 3. Memory Unit
COMPUTER (VON NEWMAN 4. Output Unit
ARCHITECTURE)
Input is the process of entering
and translating incoming data into
machine readable form.
Any hardware item which is
attached to the main unit of a
computer that houses the CPU is
referred to as peripheral device.
An input device is a peripheral
device through which data are
entered and transformed into
machine readable form.
Input devices are mainly used to
communicate information
INPUT UNIT between humans and computer.
Examples: Keyboard, Mouse etc.
CPU
CENTRAL PROCESSING UNIT
(CPU) CUwhere computations
ALU
CPU is the place
are performed.
It is the brain and heart of the computer.
1. ALU CPU interprets
of CPU instructions and
1. CU of CPU controls
all the operations of
performs the typical
arithmeticprocesses data contained in computer
computer.
program. 2.
operations such as It is the controller
of the entire system.
addition, subtraction,
multiplication, and
division. CPU has 3.
two
the
It also controls all
components:
devices
connected to CPU.
1. Arithmetic
2. Binary numbers are and Logic Unit (ALU)
used to represent 4. It also controls the
numbers. 2. Central flow Processing
of data fromUnit (CU)
3. The binary number input devices to
system has only two memory and
digits 0 and 1. memory to output
devices.
MEMORY UNIT
Memory is the location
where data and programs are
stored while being processed
by the CPU.
Memory is the main
storage unit in the
computer.
Memory consists of Primary
memory (Main Memory) and
Secondary Memory.
The data stored in the main
memory (RAM) is volatile
and is erased as soon as the
power supply is cut off.
Therefore secondary
Output device is a
peripheral device that
allows a computer to
communicate information to
humans or another machine
by accepting data from the
computer and transforming
them into usable form.
The output devices give
the desired results to the
user.
Example: Monitor, Printer
OUTPUT UNIT etc.
BUS
A group of wires connecting two or
more devices and provide a path to
perform communication is called a
bus.
Bus is a subsystem that is used to
transfer data and other information
between devices, i.e. various devices in
computer like Memory, CPU, I/O
devices and others, communicate with
each other through buses.
In general, a bus is said to be as the
communication pathway connecting
two or more devices.
A key characteristic of a bus is that it
is a shared transmission medium,
as multiple devices are attached to a
bus.
•o Typically, a bus consists of
multiple communication
pathways or lines which are
either in the form of wires or
metal lines etched in a card or
PCB (Printed Circuit Board).
o Each line is capable of
transmitting binary 0 and binary
1.
o Computer system contains a
number of different buses that
provide pathways between
components at various levels of
computer system hierarchy.
o Any bus typically consists of
about 50 to 100s of separate lines.
And on any bus, the lines may
generally be classified into three
BUS functional groups:
o Control Lines (Control Bus)
o Address Lines (Address
Bus)
INTERNAL BUS VS EXTERNAL
BUS
The internal bus, also known The external bus, or expansion
as internal data bus, memory bus, is made up of the electronic
pathways that connect the different
bus, system bus or Front- external devices, such as printer etc.,
Side-Bus, connects all the to the computer.
internal components of a
An expansion bus is an assortment of
computer, such as CPU and
wires that allows for computer
memory, to the motherboard expansion with the use of an
etc. expansion board, a printed circuit
board inserted into an expansion slot
Internal data buses are also on the motherboard or backplane that
referred to as a local bus, provides additional features to a
because they are intended to computer system.
connect to local devices. An expansion bus provides an
This bus is typically rather input/output pathway for transferring
information between internal
quick and is independent of hardware, such as RAM or the CPU,
the rest of the computer and expansion devices such as a
operations. graphics card or sound card.
o Data lines provide a path
for moving data between
system modules.
o It is bidirectional which
means data lines are used to
transfer data in both
directions.
o CPU can read data on these
lines from memory as well as
send data out of these lines
to a memory location or to a
port.
o In any bus, the number of
data lines are either 8, 16,
DATA LINES 32 or more depending on
the type, size and
(DATA BUS) architecture of the bus.
o These lines, collectively are
called the data bus.
ADDRESS
LINES
On address lines, CPU sends out the
address of memory location or I/O port that
is to be written on or read from.
It is an internal channel from CPU to
Memory across which the address of
data(not the data) are transmitted.
Here, the address is sent from CPU to
Memory and I/O port but not Memory and I/O
port send address to the CPU on that line.
Hence it is unidirectional.
In any bus, the number of address lines are
either 16, 20, 24 or more depending on the
type, size and architecture of the bus.
These lines, collectively are called the
address bus.
CONTROL
LINES
Control lines are gateway used to
transmit and receive control signals
between the microprocessor and various
devices attached to it.
In other words, control lines are used
by CPU for communicating with other
devices within the computer.
CPU sends signal on control bus to
enable the outputs of address memory
devices and port devices.
It is bidirectional.
These lines, collectively are called the
control bus.
Typical Control Lines are:
Memory Read, Memory Write
I/O Read, I/O Write
Bus Request, Bus Grant
FUNCTIONS OF COMPUTER
BUS
1. Data Sharing:
i. All types of buses used in network, transfer data between the connected
computer peripherals.
ii. The buses either transfer or send data in serial or parallel transfer method.
iii. This allows 1, 2, 4, or even 8 bytes of data to be exchanged at a time.
iv. 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.
2. Addressing:
i. A bus has address lines that suit the processors.
ii. This allows us to transfer data to or from different locations in the memory.
3. Power:
i. A bus supplies the power to various connected peripherals.
1. System Bus
2. Peripheral Bus or I/O
Bus or Expansion
Bus
3. Local Bus
4. High Speed Bus
TYPES OF BUS
A Bus that connects major
computer components (Processor,
Memory, I/O) is called a System
Bus.
It is a single computer bus among
all Buses that connects all these
components of a computer system.
And it is the only Bus, in which
data lines, address, control
lines all are present.
It is also Known as Front Side
Bus.
It is faster than peripheral Bus
SYSTEM BUS (PCI, ISA, etc.) but slower than
backside Bus.
PERIPHERAL BUS/IO
BUS/EXPANSION
BUS/EXTERNAL BUS
Peripheral Bus also known as I/O Bus or Expansion Bus.
It is data pathway that connects peripheral devices to the CPU.
In other words , in computing, a peripheral bus is a computer bus
designed to support computer peripheral like printers, hard drives.
The PCI and USB buses are commonly used Peripheral Buses and are
today used in commonly many PCs.
PCI(Peripheral Component Interconnect): PCI Bus connects the
CPU and expansion boards such as modem cards ,network cards and
sound cards. These expansion boards are normally plugged into
expansion slots on the motherboard. That's why PCI bus is also known
as expansion bus or external Bus.
USB(Universal Serial Bus): Universal Serial Bus is used to attach
USB devices like Pen Drive, etc. to CPU.
LOCAL BUS
Local Bus are the traditional I/O(Peripheral) buses.
Examples
1. ISA BUS
2. EISA BUS
3. VESA LOCAL (VL) BUS
4. PCI BUS
5. AGP BUS
6. PCI Express (PCIe)
The Industry Standard Architecture (ISA) bus is one of the
oldest buses still in use.
Even though it’s been replaced with faster buses, ISA still has a
lot of legacy devices that connect to it like cash registers,
Computer Numerical Control (CNC) machines and Bar code
scanners.
ISA remains largely unchanged since it was expanded to 16 bits
in 1984.
8 and 16 Bit ISA Expansion Slots To avoid performance issues, it was augmented with additional
high-speed buses.
ISA persists because of the enormous base of existing
peripherals.
ISA BUS
8-Bit ISA Board
EISA BUS
Extended Industry Standard Architecture or EISA is an
upgrade to ISA.
It doubled the data channels from 16 to 32 and allowed more
than one CPU to share the bus.
Even though it is deeper than the ISA slot, it is the same width
which allows older devices to connect to it.
If you compare the pins (the gold part of the card that goes into
EISA Expansion Slots
the slot) on an ISA to an EISA card, you will see the EISA pins
are longer and thinner. That is a quick way to determine if
you have an ISA or an EISA card.
Devices such as SCSI Host Bus Adapters (HBAs), network cards,
or cash registers connect through EISA.
EISA is much better suited for bandwidth-intensive tasks
such as disk access and networking.
EISA Bus mastering support was enhanced to provide access to
16-Bit EISA Card
4 GB of memory.
VESA LOCAL (VL)
BUS
The ISA bus quickly became a bottleneck as
graphics processors; even the 32-bit EISA was
not able to help that much.
The Video Electronics Standards Association
(VESA) Local bus was created to split the load
and allow the ISA bus to handle interrupts and
port I/O (input/output) and the VL bus to work VL Bus Expansion Slot
with Direct Memory Access (DMA) and memory
I/O.
Because of its size and other considerations,
this was only a temporary solution.
The PCI bus quickly superseded the VL bus.
A VESA card has an additional set of pins and
it is longer than ISA or EISA cards. Created in
the early 90’s, it has a 32-bit bus, and it was a VL Bus Board
temporary fix developed to help improve the
performance of ISA.
PCI BUS
The PCI bus was developed to solve the issues previously discussed about
ISA and VL-bus technology.
PCI has a 32-bit data path and runs at half the system memory bus speed.
One of its upgrades was it provided direct access to system memory for
connected devices.
This increased the performance of computers while eliminating the
potential for interference from the CPU.
Today’s computers have mostly PCI slots. PCI Bus Expansion Slot
PCI is considered a hybrid between ISA and VL-Bus which provides direct
access to system memory for connected devices.
It uses a bridge to connect to the front side bus and CPU and is capable of
higher performance while eliminating the potential for interference with
the CPU.
Also called the PCI Local Bus, this bus’s speed can be 32-bit or 64-bit.
The 64-bit speed again improves the speed of moving data through the
system.
A motherboard can have up to five PCI slots allowing you to connect five
external components to one controller. The PCI bridge chip regulates the
speed of the PCI bus independently from the CPUs speed.
PCI Board
This provides a higher degree of reliability because PCI hardware
manufacturers know what specifications have to be met.
AGP BUS
The Accelerated Graphics Bus (AGP) was created to handle
the increased graphics requirements of computers.
It has a 32-bit wide data path and runs at full bus speed.
This doubled the bandwidth over PCI and eliminated having to
share the bus with other components.
This means that on a standard motherboard, AGP runs at 66 AGP Expansion Slot
MHz instead of the PCI bus’s 33 MHz.
This immediately doubles the bandwidth of the port in
addition to not having to share that bandwidth with other PCI
devices.
AGP has a base speed of 66 MHz which doubles the speed of
PCI.
In addition, you can get slots that run into 2X, 4X, and 8X
speeds.
This makes an 8x expansion slot have a clock speed of 533 MHz.
It also uses special signaling to allow twice as much data to be
sent over the port at the same clock speed. AGP Video Card
PCI EXPRESS
(PCIE)
The latest slot added is PCI Express (PCIe).
It was created to replace the AGP and PCI buses.
It has a 64-bit data path and a base speed of 133
MHz, but its real performance enhancement was
the addition of full duplex architecture. PCIe Slots
This allowed the card to run at full speed in both
directions at the same time.
PCI Express slots run at 1X, 4X, 8X, and 16X giving
PCI the fastest transfer speed of any slot type.
The multiplier indicates the maximum transfer
rate.
PCI Express is backward compatible allowing a 1X
card to fit inside a 16X slot.
4x PCIe Board
HIGH SPEED BUS
High Speed Bus are specifically designed to support high
capacity I/O devices.
High Speed Bus brings high demand devices into closer
integration with the processor.
This Bus supports connection to high-speed LANs, such as Fast
Ethernet at 100 Mbps, video and graphic workstation, firewire etc.
The System Bus is a bunch of electrical
paths that are used to convey electrical signals
between various devices inside the computer.
*NOTE*: A bus (any bus) cannot be used
BUS
by more than one device at one time due to
electrical properties of the devices
(the outputs will be connected together and
ARBITRAT will cause damage).
*SOLUTION*: Before any device is allowed to
ION perform a read/write operation using the
system bus, it must first obtain permission.
Master device =
the device that starts a read/write
operation
Slave device = the device that is
being addressed in a read/write operation
Bus arbitration scheme tries to balance:
i. Bus Priority
Bus Arbitration refers to the process by which
the current bus master accesses and then leaves
the control of the bus and passes it to another bus
requesting processor unit.
The controller that has access to a bus at an
instance is known as Bus master.
BUS A conflict may arise if the number of DMA
controllers or other controllers or processors try to
ARBITRAT access the common bus at the same time, but
access can be given to only one of those.
ION Only one processor or controller can be Bus
master at the same point of time. To resolve these
conflicts, Bus Arbitration procedure is
implemented.
To coordinate the activities of all devices
requesting memory transfers, the selection of the
bus master must take into account the needs of
various devices by establishing a priority system for
gaining access to the bus.
The Bus Arbiter decides who would become
Bus cycle = the period to complete a data transfer
operation on the system bus
What happens in a bus cycle:
The master device sends out the address of the slave
device
The master device sends out the operation (READ or
WRITE) to the slave device
BUS If the operation = READ, then: The master
device will read the data that will be sent out by the slave
ARBITRAT device
If the operation = WRITE, then: The master
ION device will send out the data that will be received by
the slave device
A bus cycle consists of 2 periods: (i) bus arbitration period
and (ii) bus utilization period
There is always a bus arbitration period preceding a bus
utilization period because the bus arbitration operation and
the bus utilization operation uses different set of wires
The bus arbitration period and the bus
utilization
period can overlap in execution
BUS
ARBITRAT
ION
While the current bus utilization period is
going on, devices that want to use the bus in
the next cycle can decide among themselves
who will get to use the system bus in the
next period.
BUS ARBITRATION
TECHNIQUES
There are 2 types of bus arbitration techniques
1. Centralized Arbitration (commonly used)
1. Daisy Chaining Method
2. Polling Method
3. Independent Request Methods
2. Distributed Arbitration