Please enable JavaScript.
Coggle requires JavaScript to display documents.
PART 3: UNDERSTAND I/O IN COMPUTER SYSTEM - Coggle Diagram
PART 3: UNDERSTAND I/O IN COMPUTER SYSTEM
I/O MODULE
The term I/O is used to describe any program, operation or device that transfer 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
Devices such as keyboard and mouses are input-onlu devices while devices such as printers are output-only. A writable CD-ROM is both an input and an output devic
Function
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
Input devices:
Keyboard, scanner, mouse, camera
Output devices:
Printer, speaker, monitor, headphone
Both input and output device:
Fax, modem, pendrive
INPUT/OUTPUT DATA TRANSFER
Asynchronous Serial Transfer
Asynchronous serial transmission is character oriented
Each character transmitter consists of a start bit, character bit and stop bits
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 be exactly synchronized
CHARACTERISTIC OF ISOLATED AND MEMORY MAPPED I/O
Isolated I/O uses a special class of CPU instructions specifically for performing I/O. This is generally found on Intel microprocessors, specifically the IN and OUT instructions which can read and write one to four bytes to an I/O device
The processor and the I/O device have different memory located to each other
Memory mapped I/O is one where the processor and the I/O device share the same memory location (memory)
Characteristic
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
PROGRAMMED I/O
Is the method of transferring data between the CPU and a peripheral such as a network adapter or an ATA storage device
Programmed I/O refers to using input and output instructions to transfer data between memory and the registers on a peripheral interface
Data are exchanged between the CPU and the I/O module
Advantage:
Simple to implement
Disadvantage:
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 is a method of transferring data between peripherals and memory without using the CPU
Sometimes, CPU may not be fast enough to keep up with the peripheral
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 interrupt-driven I/O would consume a lot of processor cycles
The I/O controller has the ability to transfer data directly to/from the memory without involving the processor
There may be multiple DMA devices in one system
Processor and I/O controllers contend for bus cycles and for memory