Professional Documents
Culture Documents
What is a Bus?
Bus is:
Processor Input
Control
Memory
Datapath
Output
Bus Representation
Advantages of Buses
Processor I/O I/O Memory
Device Device
Disadvantages of Buses
Control Lines
Data Lines
Control Lines
PC Bus Hierarchy
Processor Bus
o This is the highest-level bus that chipset uses to send information to and
from processor.
o A processor bus is a bus inside the processor.
o Processor bus can be further categorized into:
Memory Bus
Backplane Bus
Advantage
Backplane
Processor Memory
I/O Devices
Uses
Advantages
Disadvantage
A Two-Bus System
Processor Memory
Processor Memory
Backside Bus
Cache Bus Adaptor
Bus
L2 Adaptor
Cache
I/O Bus
I/O Bus
Bus
Adaptor
Transaction protocol
Timing and signaling
Bunch of wires
Electrical specification
Physical/mechanical characteristics – the connectors
Synchronous Bus
Advantage
Disadvantages
o Every device on the bus must run at the same clock rate.
o To avoid clock skew, they cannot be long if they are fast.
Asynchronous Bus
o It is not clocked.
o It requires a handshaking protocol.
Advantages
Buses so Far
Control Lines
Address Lines
Data Lines
Bus Master
Bus Slave
Bus Transaction
Arbitration
Request
Action
Major Drawback
o A bus master wanting to use the bus asserts the bus request.
o A bus master cannot use the bus until its request is granted.
o A bus master must signal to the arbiter after using the bus.
1. Bus Priority
2. Fairness
Device 1 Device N
Highest Device 2 ooo Highest
Priority Priority
Release
Bus
Arbiter
Request
Advantage
o Simple.
Disadvantages
Grant
Request Grant
Request Grant
Bus
Arbiter Request
Release
o Used in essentially all processor-memory buses
and in high-speed I/O buses.
Centralized Parallel Arbitration Representation
3. Distributed Arbitration by Self-Selection
ooo
o Address and data can be transmitted in one bus cycle if separate address
and data lines are available.
Disadvantages
Disadvantage
o Inefficient technique.
Block Transfers
Advantage
Disadvantage
Once a burst has started, requesting masters have to wait until the
burst has finished, which could take a relatively long time.
Asynchronous Handshake
Write Transaction
o Master has obtained control and asserts address, direction, and data.
Read Transaction
o Master has obtained control and asserts address, direction, and data.
PCI Bus
USB
o USB uses a small, flat jack and thin cable to connect peripherals to the
host PC.
o The system automatically detects when a USB device is added or
subtracted from this bus.
o Up to 127 devices may be chain-connected to a single USB connection to
the system.
o The host PC begins the USB chain, but peripherals such as keyboards
and monitors that might come equipped with multiple USB ports could
become a USB hub for connecting more devices.
USB Speeds
ISA
IBM introduced ISA or Industry Standard Architecture Bus.
It was originally released as an 8-bit bus, however was expanded to 16-bit
bus in 1984.
In 1993, Intel and Microsoft introduced a PnP ISA Bus, which allows the
computer to automatically detect and setup computer ISA peripherals such
as a modem or sound card.
MCA
IBM introduced MCA or the Micro Channel Bus in 1987 as a competition for
ISA Bus.
The MCA Bus offered several additional features over the ISA such as:
A 32-bit bus
Automatically configure cards (similar to what Plug and Play is
today)
Bus mastering for greater efficiency
EISA
Addressing
Once a bus master controls a bus, it must establish contact with one or more
slaves in order to set up the data transfer.
This is called addressing, which potentially consists of two parts: board
addressing and the addressing of the data elements on that board.
Often, the same mechanism is used for both.
Each board is allocated a block of addresses such that the high-order address
bits specify the board and the low-order bits of the same address specify the
data element on the board.
The subject of addressing is discussed in terms of how a slave address can be
specified and the number of slaves involved in a bus transaction.
o Most bus transactions require only a single slave to be involved in the bus
transaction.
o However, for certain bus transactions, such as reset, it may be desirable
to involve all slaves or a group of slaves.
o Read and write operations that may involve more than one slave are
called broadcall and broadcast operations, respectively.
o The concept of broadcast/broadcall addressing is orthogonal to
logical/geographical addressing; it deals with the communication of a
single master with multiple slaves.
o Broadcall operations cause all selected slaves to place their data on the
bus, which will result in the collective AND or OR of the data of the
selected slaves.
o This restricts the use of broadcall addressing to special cases; for
example, to identify the source of an interrupt where each potential
interrupter is assigned a single-bit position to identify itself.
o A broadcall on a 32-bit bus can then be used to identify up to 32 interrupt
sources.
o Broadcast operations are important for performance reasons; for
example, in the case of data consistency, when several caches in a
multiprocessor system with distributed caches have to be updated
simultaneously.
o The reset operation, where each device is expected to assume its initial
state, is also a form of broadcast operation.
o Broadcast/broadcall operations can be indicated via a special address (for
example, address 0) or via a special control line, in which case the address
lines can be used to select a subset of all slaves.