System Bus in Computer Architecture: Goran Wnis Hama Ali
System Bus in Computer Architecture: Goran Wnis Hama Ali
Computer Architecture
GO R A N WN IS H A MA A LI
INTRODUCTION
The CPU sends various data values, instructions and
information to all the devices and components inside the
computer.
INTRODUCTION (contd)
Bottom of motherboard
BUS
A bus is a communication pathway connecting two or more
devices.
A key characteristic of a bus is that it is a shared transmission
medium.
Multiple devices connect to the bus, and a signal transmitted
by any one device is available for reception by all other
devices attached to the bus.
If two devices transmit during the same time period, their
signals will overlap and become garbled. Thus, only one device
at a time can successfully transmit.
BUS contd
Typically, a bus consists of multiple communication
pathways, or lines. Each line is capable of transmitting
signals representing binary 1 and binary 0.
several lines of a bus can be used to transmit binary digits
simultaneously (in parallel).
For example, an 8-bit unit of data can be transmitted over
eight bus lines.
Computer systems contain a number of different buses
that provide pathways between components at various
levels of the computer system hierarchy.
SYSTEM BUS
A bus that connects major computer components (processor,
memory, I/O) is called a system bus.
A system bus consists, typically, of from about fifty to hundreds of
separate lines. Each line is assigned a particular meaning or function
System bus usually is separated into three functional groups .
1.
Data Bus
2.
Address Bus
3.
Control Bus
DATA BUS
A collection of wires through which data is transmitted from
one part of a computer to another.
Data Bus can be thought of as a highway on which data
travels within a computer.
This bus connects all the computer components to the CPU
and main memory.
The data bus may consist of 32, 64, 128, or even more
separate lines.
The number of lines being referred to as the width of the
data bus. Because each line can carry only 1 bit at a time,
the number of lines determines how many bits can be
transferred at a time.
ADDRESS BUS
A
collection of wires used to identify particular location in
main memory is called Address Bus.
CONTROL BUS
Because the data and address lines are shared by all
components, there must be a means of controlling their
use.
The control lines regulates the activity on the bus.
Control signals transmit both command and timing
information among system modules.
The control bus carries signals that report the status of
various devices.
CONTROL BUS
Typical control bus signals are :
Memory Read : causes data from the addressed
location to be placed on the data bus.
Memory Write : causes data on the bus to be written
into the addressed location
I/O write: causes data on the bus to be output to the
addressed I/O port
I/O read: causes data from the addressed I/O port to be
placed on the bus
Bus type
Dedicated or multiplexed.
Bus operations
Read, write, block transfer, interrupt,
Bus arbitration
Centralized or distributed.
Bus timing
Synchronous or asynchronous
Bus Type
Dedicated buses
Separate buses dedicated to carry data and address information.
Good for performance.
But increases cost.
Multiplexed buses
Data and address information is time multiplexed(defined in the next
slide ) on a shared bus.
Poor Performance
But Reduces cost.
Bus Operations
Basic operations
Read and write.
Interrupt operation.
Bus Arbitration
In all but the simplest systems, more than one module may need
control of the bus.
For example, an I/O module may need to read or write directly to
memory, without sending the data to the processor.
Because only one unit at a time can successfully transmit over
the bus, some method of arbitration is needed.
Bus arbitration can be done either
Statically.
Dynamically.
A master uses the bus request line to let others know that it
needs the bus.
Before a master can use the bus, it must receive permission to
use the bus via the bus grant line.
Rotating priority
Priority is not fixed
Several ways of changing priority
Increase the priority as a function of waiting time
Lowest priority for the master that just received the bus
Demand-driven release
Avoids unnecessary bus requests of the previous policy.
Releases the bus only if another master requests the bus.
More efficient.
Easy to implement
Disadvantages
Complex to implement.