Please enable JavaScript.
Coggle requires JavaScript to display documents.
THE COMPUTER SYSTEM Understand I/O in Computer System - Coggle Diagram
THE COMPUTER SYSTEM
Understand I/O in Computer System
I/O Module
The term I/O is used to describe any program, operation or device that transfers data to or from a computer and to or from a peripheral device.
Every transfer is an output from one device and an input into another.
I/O Module Functions
• Acts as an interface with the CPU and memory
via the system bus or central switch.
• Acts as an interface with one or more
peripheral devices by tailored data links.
I/O Devices
Input / Output Data Transfer
Asynchronous Serial Transfer
Asynchronous serial transmission is character oriented.
Each character transmitter consists of a start bit,
character bits, and stop bits.
The first bit is called the start bit. It is always a 0 and is
used to indicate the beginning of a character.
The last bit called the stop bit is always a 1. In asynchronous transmission, binary information is sent only when it is available and the line remains idle when there is no information to be transmitted.
Asynchronous Communication Interface
• Is the transmission of data without the use of an external clock signal, where data can be
transmitted continuously rather than in a steady stream.
• The most significant aspect of asynchronous communications is variable bit rate, or that the
transmitter and receiver clock generators do not have to be exactly synchronized.
Characteristic of isolated and memory mapped I/O
Memory mapped I/O
Devices and memory share an address
space
I/O looks just like memory read/write
No special commands for I/O
Large selection of memory access
commands available
Isolated I/O
Separate address spaces
Need I/O or memory select lines
Special commands for I/O
Limited set
Transfer Mode
• Programmed I/O
• Interrupt-Initiated I/O
• Direct Memory Access
Program I/O
• Data are exchanged between the CPU and the I/O
module.
• The CPU executes a program that gives it direct
control of the I/O operation, including sensing device status, sending a read or write command
and transferring data.
• When CPU issues a command to I/O module, it
must wait until I/O operation is complete.
• If the CPU is faster than I/O module, there is
wastage of CPU time.
Advantage
– Simple to implement
Disavantage
– CPU is tied up for the duration of the transfer
while doing a relatively simple task
Interrupt / Initiated I/O
• Overcomes the processor having to wait long
periods of time for I/O modules.
• The processor does not have to repeatedly
check the I/O module status.
Summary
• Overcomes CPU waiting
• No repeated CPU checking of device
• I/O module interrupts when ready
Direct Memory Access
Direct Memory Access controller (DMAC)
• The DMA controller periodically takes over
control of the system bus from the CPU.
• DMAC generates address, data and control
signals to transfer data between memory and
I/O devices.
Direct Memory Access (DMA)
• For high-bandwidth devices (like disks) interrupt-driven
I/O would consume a lot of processor cycles
• DMA – the I/O controller has the ability to transfer data
directly to/from the memory without involving the
processor
The processor initiates the DMA transfer by supplying the I/O
device address, the operation to be performed, the memory
address destination/source, the number of bytes to transfer
The I/O DMA controller manages the entire transfer (possibly
thousand of bytes in length), arbitrating for the bus
When the DMA transfer is complete, the I/O controller
interrupts the processor to let it know that the transfer is
complete
• There may be multiple DMA devices in one system
– Processor and I/O controllers contend for bus cycles and for memory