Ch-8-Input Output Interrupt DMA
Ch-8-Input Output Interrupt DMA
and Peripherals
interrupt DMA
Chapter - 8
Introduction
8.4 Buses: Connecting I/O Devices to
Processor and Memory
• A bus is a shared communication link, which
uses one set of wires to connect multiple
subsystems.
• Bus: set of control lines + set of data lines
• Two major advantages:
– Versatility
– Low cost
• The major disadvantage:
– Creates a communication bottleneck.
8.4 Buses: Connecting I/O Devices to
Processor and Memory
• A bus transaction includes two parts: sending
the address and receiving or sending the data.
• Input operation: inputting data from the
device to memory.
• Output operation: outputting data to a device
from memory.
8.4 Buses: Connecting I/O Devices
to Processor and Memory
• a) 1st step initiates a read from memory.
• Control line signals a read request to memory
• Data line contains the address
b)2nd step memory is accessing data
• C)3rd step memory transfers data using the
data lines
• Control lines signals that data is available in
I/O device
Types of Buses
• Traditionally classified as:
– Processor-memory buses
– I/O buses
– Backplane buses
20
DMA Configurations (continued)
Single Bus, DMA controller integrated into I/O module
– Controller may support one or more devices
– Each transfer uses bus once – DMA to memory
– CPU is suspended once
21
DMA Configurations (continued)
Separate I/O Bus
– Bus supports all DMA enabled devices with single DMA
controller
– Each transfer uses bus once – DMA to memory
– CPU is suspended once
22
Evolutions of I/O Methods
Growth of more sophisticated I/O devices
1. Processor directly controls device
2. Processor uses Programmed I/O
3. Processor uses Interrupts
4. Processor uses DMA
5. Some processing moved to processors in I/O module
that access programs in memory and execute them on
their own without CPU intervention (I/O Module
referred to as an I/O Channel)
23
I/O Channels (continued)
• I/O Channel is extension of DMA concept
• CPU instructs the I/O channel to execute a program
in memory
• Following these instructions, the I/O channel does
the transfer of data itself
24
I/O Channels
(continued)
Architecture
Selector – one device
transferring block of data at
a time
Multiplexor – TDM can use
more device
25