Professional Documents
Culture Documents
SYSTEM BUS
I/O
I/O DEV
I/O
DEV DEV I/O I/O
DEV DEV
I/O I/O
DEV DEV
I/O BUS I/O I/O
DEV DEV
I/O I/O I/O
DEV DEV DEV
The system bus consists of a common set of signal lines shared by the
interfaces for exchange of data and control information. These signal lines are:
• Address Lines,
• Data lines,
• Control lines.
BUS
Shared set of signal lines for exchange of data
between the Processor, Memory and the I/O Device
Interfaces:
▪ Address Lines
▪ Data Lines
▪ Control Lines
• Command lines
• Data Transfer Handshake lines
• Interrupt Control Lines
• DMA Control lines
• Clock
• Reset
• Power Supply & Ground
• Utility Signal lines
Signal Lines on the Bus
❖ Party lines:
• Signal lines driven by Tristate Buffers
• Used for signals those are driven by only one device at-a-time.
e.g. Data, Address, Command lines etc.
❖ Wired-OR
• Signal lines driven by Open Collector/ Open Drain drivers
• Used for signals that may be asserted by multiple devices
simultaneously.
e.g. Interrupt Request, Bus Request etc.
❖ Daisy Chained
• Signal lines propagate through the interfaces.
• Used for assigning priority to the interfaces.
- Electrically closer interfaces get higher priority
e.g. Interrupt Acknowledgement, Bus Grant etc.
Party Line Driver
Truth Table
Enable Data Output
1 0 0
1 1 1
0 0 Hi-Z
0 1 Hi-Z
Bus Lines
Enable1
Party
Lines
Data
Register
Interface1
Enable2
Data
Register
Interface2
Bus
R1in Enable1 Lines
Clock
Enable2
R2in
▪ These are Open Collector (OC)/ Open Drain (OD)
Wired-OR signal lines to provide Active Low OR effect to the
signals connected to the bus line.
Signal Line ▪ The output circuit of the bus driver devices for the
signal line is kept open.
Vcc ▪ The resistor Rc/ Rd connecting the collector/ drain
to the power supply of the BJT/ FET of the output
stage of the driver is not placed in the driver.
▪ A Rc / Rd is placed in the bus which is shared by
the drivers of all the interfaces sharing the signal
line.
▪ A wired-OR signal line is always Active Low.
IRQ
Signal
Signalin Signalout
Inhibit
Questions ?
Bus Arbitration
❖ Centralized
• A central arbiter control the bus arbitration/
allocation process.
❖ Distributed
• Logic circuits distributed in the interfaces
resolve the bus allocation process.
Centralized Bus Arbitration
BRQk# are k OC Bus
BRQ1# Request signal lines.
Bus BRQ2# Each I/O interface is
Arbitration BBSY# hooked to one of
Unit BGNT# these k lines for
Interface Interface Interface Interface raising its Bus
C D A B Requests.
An interface hooked
to a Lines with
Allocation Process Timing Diagram: higher k value get
higher priority in
BRQ1# REQ-A REQ-B bus allocation.
ARB0#
ARB1#
ARB2#
Start Arbitration#
BBSY#
1 1 0 1 1 0
1 0 x 1 1 1 0
Bus Clock
Address
RD/WR
Data
t0 t1 t2 t3 t4
Asynchronous Parallel Data Transfer
Strobe
1. Strobing Initiator RD/WR’ Responder
Address
Operation: Device Device
Data
• Strobe issued
by the Master;
duration is
Shortcomings:
fixed. Strobe • Strobe duration is
decided by the
• Address and
slowest I/O
Command are
RD/WR’ interface. Hence,
issued at the
the bus speed is
leading edge of
Address limited to the
Strobe.
speed of the
• The Slave slowest device
device decodes
Data • If the addressed
the address &
I/O interface is
places the Data
absent or faulty
on bus within t0 t1 t2
the data transfer
the strobe.
will be incorrect.
• The trailing edge of Strobe clocks in the Data in the Master.
• The Address, Command and Data are removed after the trailing
edge of Strobe.
Asynchronous Parallel Data Transfer
2. Handshaking
Address
Data
Sync- Synchronize
Init- Initialize
Ack- Acknowledgement
RD- Read
WR- Write
Asynchronous Parallel Data Transfer
• Overcomes the
2. Handshaking • A Timeout
problems in mechanism is
Strobing by
- An Input (Read) Operation) introduced to
introducing the take care of
Slave Ready (ACK) scenarios of
signal Master the Slave being
Ready absent or
• The Master Ready (SYNC/ INIT)
signal does the job faulty.
of Strobe RD/WR’ • At Timeout
• The operation interrupt is
terminates only on Address generated in
receipt of ACK the Master if
from the Slave Slave
an ACK is not
device. Ready received within
(ACK) a set time.
• Duration of the
operation can vary Data
depending on how
soon the Slave can
issues ACK. t0 t1 t2 t3 t4 t5
Asynchronous Parallel Data Transfer
2. Handshaking
- An Output (Write) Operation
Master
Ready
(Sync/Init)
RD/WR
Address
Slave
Ready
(Ack)
Data
t0 t1 t2 t3 t4 t5
Questions ?
Asynchronous Serial Data Transfer Protocols
1 or more
Stop Bits
Start Bit Data Bits Parity Start Data Bits
Bit Bit
Next Character
One Character Transmission Transmission
Questions ?
Synchronous Serial Data Transfer Protocols
• Synchronous/ Asynchronous
• Time Multiplexed/ Dedicated
• Bus Width (8/16/32/64 bit)
• Control: Centralized/ Distributed
Example System Buses
• Unibus
• Multibus
• S-100
• VME
• Nu Bus
• Future Bus
• Q Bus
• Fast Bus
• HP Precision Bus
• MCA (Micro Channel Architecture)
• TURBOchannel
• STD Bus
• PC Bus
• XT Bus
• ISA (Industry Standard Architecture) Bus
• EISA (Extended ISA) Bus
• PCI (Peripheral Component Interconnect) Bus etc.
Example I/O Buses
Parallel Buses:
• Centronics/ IEEE-1284 – Parallel Printer Interface
• HPIB/ GPIB/ IEEE-488 (HP I/O Bus/ General purpose I/O Bus)
– Instruments Bus
- Synchronous Bus
- 32/ 64-bit wide
- Data Rates:
133 MBPS (32-bit at 33 MHz)
266 MBPS (32-bit at 66 MHz or 64-bit at 33 MHz)
533 MBPS(64-bit at 66 MHz)
- Bus Lines Time Multiplexed
1101 Dual Address Cycle : When accessing a memory address that requires
more than 32 bits to represent, the address phase begins with this
command and the low 32 bits of the address, followed by a second
cycle with the actual command and the high 32 bits of the address.
Clock
Frame#
AD A D D D D
C/BE# C BE#
IRDY#
TRDY#
DEVSEL#
PCI Read Operation (with use of IRDY#, TRDY#):
Clock
Frame#
AD A D D D D
C/BE# C BE#
IRDY#
TRDY#
DEVSEL#
Questions ?
Universal Serial Bus (USB)
Ack
Questions ?
Thank You