0% found this document useful (0 votes)
4 views22 pages

CBA-IO-2a

The document discusses the fundamentals of Input/Output (I/O) organization, including the types of I/O devices, the role of I/O modules, and the differences between isolated and memory-mapped I/O. It highlights the functions of I/O modules, the communication methods between peripherals and the CPU, and the importance of I/O interfaces in managing data transfers. Additionally, it compares the characteristics of isolated I/O and memory-mapped I/O, outlining their advantages and disadvantages.

Uploaded by

shivamgdrive158
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views22 pages

CBA-IO-2a

The document discusses the fundamentals of Input/Output (I/O) organization, including the types of I/O devices, the role of I/O modules, and the differences between isolated and memory-mapped I/O. It highlights the functions of I/O modules, the communication methods between peripherals and the CPU, and the importance of I/O interfaces in managing data transfers. Additionally, it compares the characteristics of isolated I/O and memory-mapped I/O, outlining their advantages and disadvantages.

Uploaded by

shivamgdrive158
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

IO

Unit-II: I/O Basics: I/O Modules, Concept of


Programmed I/O, Interrupt driven I/O, and Direct
Memory Access. I/O Channels and Processors,
External interconnection standards.
IO Organization
• IO  Input/Output devices  external devices  Peripherals
• Ex: Keyboard, Mouse, Monitor, Printer, Magnetic tapes,
Scanners, Optical readers etc
• Devices that are under the direct control of the computer are
said to be connected on-line.
• These devices are to be designed to read information into or
out of the memory unit upon command from CPU; Goal of IO
Organization is to communicate between IO & CPU/Memory
• Broad Classification – Human Readable; Machine Readable,
Communication devices
• No unique behavior among these peripherals
• Techniques of interconnection between computer and these
peripherals so as to have communication are discussed in this
IO organization
IO Devices
INPUT DEVICES OUTPUT DEVICES
Keyboard Card Puncher, Paper Tape
Optical - Card Reader, Paper Puncher, Monitor (CRT, LCD,
Tape Reader, OCR, OBR, LED), Printer (Impact, Ink Jet,
Digitizer, Optical Mark Reader Laser, Dot Matrix), Plotter,
etc Analog, Voice etc
Magnetic - Magnetic Stripe
Reader, Magnetic Ink Character
Recognition, etc
Screen Input Devices - Touch
Screen, Light Pen, Mouse etc
Analog Input Devices
Major differences

• Differences between Computer & Peripherals


– Signal mismatch
– Speed mismatch
– Data format mismatch
– Operating modes mismatch
• To resolve these differences, computer systems
include special hardware components between the
CPU and peripherals called as IO module

IO Organization  IO Devices  IO Module


IO Module
What is an IO Module?
An I/O module is a special
hardware component that
is used to connect an IO
device to the CPU

• Peripherals are not directly connected to the system bus


– To address varied modes of operations
– To match the speeds of operation
– To address the differences in data formats
– To address the signal mismatch
Functions of IO Modules

• Control & Timing: To coordinate the flow of


traffic between internal resources and
external devices.
• Processor Communication:
• Device Communication:
• Data Buffering:
• Error Handling:
Internal Structure of IO Module
IO MODULES
are
popularly known
as
IO INTERFACES
I/O Interface – Bigger Pic

I/O interfaces are hardware components between CPU


& peripherals used to supervise and synchronize all I/O
transfers.
Note: Each peripheral device has associated with it
an interface unit. An interface may be housed separately
or may be physically integrated with the peripheral.
I/O Interface functions

Interface performs the following:


• Decodes the device address (device code)
• Decodes the commands (operation)
• Provides signals for the peripheral controller
• Synchronizes the data flow and supervises the transfer
rate between peripheral and CPU or Memory
IO Commands
• Control:
– activates the peripheral and informs what to do
– Ex: paper motion, the print timing, and the selection of printing
characters in case of printer, rewind or FF in case of tape etc )
– These commands depend on the peripherals
• Status:
– to test various status conditions in the interface and the peripheral
– Ex: computer may wish to check the status of the peripheral before a transfer is
initiated; Printer checks the availability of paper

• Output:
– causes the interface to respond by transferring data from the bus into
one of its registers via data lines
• Input:
– Data Transfer from I/O to processor via data lines
Moving On…
• Most modern operating systems (O/Ss) pre-emptively
schedule programs.
— If you are simultaneously running two programs A and B, the
O/S will periodically switch between them, as it sees fit.
— Specifically, the O/S will:
• Stop A from running
• Copy A’s register values to memory
• Copy B’s register values from memory
• Start B running
Interaction with I/O
• Most I/O requests are made by applications or the
OS, and involve moving data between a peripheral
device and main memory.
• There are TWO main ways that programs
communicate with devices.
— Isolated I/O
— Memory-mapped I/O
• There are also several ways of managing data
transfers between devices and main memory.
— Programmed I/O
— Interrupt-driven I/O
— Direct Memory Access
I/O Bus versus Memory Bus
Computer buses can be used to communicate with
main memory and I/O in TWO ways:
1. Use common A_bus & D_bus for both memory
and I/O but have separate C_bus. There is a
separate read and write lines: I/O read and I/O
write for I/O and memory read and memory
write for memory. – Isolated I/O or I/O mapped
I/O
2. Use a common bus for memory and I/O with
common C_bus – Memory-mapped I/O
Communicating with devices

Most devices can be considered as


memories, with an “address” for
reading or writing.
Many instruction sets often make
this analogy explicit. To transfer
data to or from a particular
device, the CPU can access
special addresses.
Here you can see a video card can
be accessed via addresses 3B0-
3BB, 3C0- 3DF and A0000-
BFFFF. There are two ways
these addresses can be
accessed.
Isolated I/O
• This approach is to support separate
address spaces for memory and I/O
devices, with special instructions that
access the I/O space.
• For instance, 8086 machines have a
32-bit address space.
— Regular instructions like MOV
reference RAM.
— The special instructions IN and
OUT access a separate 64KB I/O
address space.
Memory-mapped I/O
• With memory-mapped I/O, one address space
is divided into two parts:
— Some addresses refer to physical memory locations.
— Other addresses actually reference peripherals.
• For example, an Apple IIe had a 16-bit address
bus which could access a whole 64KB of
memory.
— Addresses C000-CFFF in hexadecimal were not part of
memory, but were used to access I/O devices.
• All the other addresses did reference main
memory. The I/O addresses are shared by
many peripherals. In the Apple IIe, for instance,
C010 is attached to the keyboard while C030
goes to the speaker.
• Some devices may need several I/O addresses.
Isolated & Memory-mapped I/O
Isolated I/O
• Separate I/O read/write control lines in addition to memory
read/write control lines
• Separate (isolated) memory and I/O address spaces
• Distinct input and output instructions
• Each instruction is associated with the address of interface register.
Memory-mapped I/O
• A single set of read/write control lines (no distinction between
memory and I/O transfer)
• Memory and I/O addresses share the common address space which
reduces memory address range available
• No specific input or output instruction so the same memory
reference instructions can be used for I/O transfers
• Considerable flexibility in handling I/O operations
Isolated & Memory-mapped I/O
Isolated I/O Memory-mapped I/O
Different address spaces are used for Same address space is used for memory
memory and I/O. and I/O devices.
Separate control unit and control
Control units and instructions are same
instructions are used in case of I/O
for memory and I/O devices.
devices.
More complex and costlier than memory Easier to build and cheap as it’s less
-mapped I/O as more bus are used. complex.
Entire address space can be used by
memory as I/O devices have separate Memory space is reduced
address space.
Computer memory and I/O devices use Computer memory and I/O devices can
different control instructions for read both use same set of read and write
write. instructions.
Separate control bus is used for computer
Address, data and control bus are same
memory and I/O devices. Though same
for memory and I/O devices.
address and data bus are used.
Identify Memory-mapped & Isolated I/O
I/O interface – A case study
I/O interface – A case study

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy