0% found this document useful (0 votes)
362 views34 pages

Objectives: Input and Output (I/O) Organization

The document discusses input and output (I/O) organization in computer systems. It describes the role of I/O devices in providing a method for transferring data between internal storage and external devices. I/O controllers help resolve differences in data transfer rates and operating modes between computer components and peripheral devices. Common I/O devices include keyboards, displays, printers and storage devices that transfer data through I/O buses and memory-mapped I/O or dedicated I/O instructions.

Uploaded by

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

Objectives: Input and Output (I/O) Organization

The document discusses input and output (I/O) organization in computer systems. It describes the role of I/O devices in providing a method for transferring data between internal storage and external devices. I/O controllers help resolve differences in data transfer rates and operating modes between computer components and peripheral devices. Common I/O devices include keyboards, displays, printers and storage devices that transfer data through I/O buses and memory-mapped I/O or dedicated I/O instructions.

Uploaded by

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

Input and Output (I/O ) Organization

Objectives
To understand:
 Role of Input / Output devices
Role of I/O controller
I/O Design factors
Input/Output Problems
Types of typical I/O devices
Types of Buses in computer system
Interfacing I/O devices to processor memory
and operating systems
I/O Data Transfer Methods

Source: Feleke Merin (Dr. –Eng.) 1


Computer Input / Output devices

• Through input and output devices, people provide data


and instructions to the computer and receive results from
it
• I/O devices provide a method for transferring information
between internal storage (such as memory and CPU
registers) and external I/O devices
• Resolves the differences between the computer and
peripheral devices

Source: Feleke Merin (Dr. –Eng.) 2


Computer Input / Output devices(contd.)

 Peripherals - Electromechanical Devices


 CPU or Memory - Electronic Device
 Data Transfer Rate
– Peripherals - Usually slower
– CPU or Memory - Usually faster than peripherals
Some kinds of Synchronization mechanism may be needed
 Unit of Information
– Peripherals – Byt
– CPU or Memory - Word
 Operating Modes
– Peripherals - Autonomous, Asynchronous
– CPU or Memory - Synchronous

Source: Feleke Merin (Dr. –Eng.) 3


Computer Input / Output devices(contd.)

Interrupts
Processor

Cache

Memory– I/O bus

I/O I/O I/O


Main controller controller controller
memory

Graphics Network
Disk Disk
output

• I/O is the eyes, ears, nose, mouth, hands, legs, etc. of the
computer system. Imagine a computer without I/O.
Source: Feleke Merin (Dr. –Eng.) 4
Role of I/O controller

• Each peripheral device has an interface (an I/O controller)


associated with it.
• I/O controller (duties)
 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

• Typical I/O instruction


Op. code Device address Function code
(Command)

Source: Feleke Merin (Dr. –Eng.) 5


I/O Design factors

• Design factors:
– I/O device characteristics (input, output, storage, etc.).
– I/O Connection Structure (degree of separation from
memory operations).
– I/O interface (the utilization of dedicated I/O and bus
controllers).
– Types of buses (processor-memory vs. I/O buses).
– I/O data transfer or synchronization method
(programmed I/O, interrupt-driven, DMA).

Source: Feleke Merin (Dr. –Eng.) 6


Diversity of I/O systems

Three characteristics are useful in organizing the wide


variety of I/O systems.
Behavior : Input (read once), Output (write only) or
storage
Partner : Either Human or a machine at the end of the I/O
device.
Data rate : The peak rate at which the data can be
transferred between the i/o devices and main memory or
processor.
Ex : A key board device is used by a human with data rate
about 10 bytes per second.

Source: Feleke Merin (Dr. –Eng.) 7


Input/Output Problems

• Wide variety of peripherals


– Delivering different amounts of data
– At different speeds
– In different formats
• All slower than CPU and RAM
• Need I/O modules (or interface device)

Source: Feleke Merin (Dr. –Eng.) 8


I/O Characteristics and Functionality

• Nature of data- data can be human-readable or


machine-readable
• Data entry: converts human-readable data into
machine-readable form
• Data input: transfers machine-readable data
into system
• Source data automation: capturing and editing
data where the data is initially created and in a
form that can be directly input to a computer
Source: Feleke Merin (Dr. –Eng.) 9
Input Devices

• Personal computer input devices


– Keyboard

• Screen Input Devices


- Touch Screen
- Light Pen
- Mouse

• Terminals
– Input and display devices that perform
data entry and input at same time
– Office, warehouse, factory

Source: Feleke Merin (Dr. –Eng.) 10


Input Devices (contd.)

• Speech-recognition technology
– Input devices that recognize human speech
– e.g. automate account
identification process

• Digital cameras

Source: Feleke Merin (Dr. –Eng.) 11


Input Devices (contd.)

• Scanning devices
• Optical data readers
 Special scanner
 OMR – standardized tests
 OCR – convert handwritten
to typed doc into digital data
• Magnetic stripe card
– Swipe card
• Point-of-sale (POS) devices
– Used in retail operations to
enter sales information

Source: Feleke Merin (Dr. –Eng.) 12


Input Devices (continued)

• Automated teller machine (ATM) devices


• Pen input devices
• Touch-sensitive screens
• Bar-code scanners
• Radio Frequency Identification (RFID)

Source: Feleke Merin (Dr. –Eng.) 13


Output Devices

• Display monitors

• Liquid crystal displays (LCDs)

• Organic light-emitting diodes (OLEDs)

Source: Feleke Merin (Dr. –Eng.) 14


Output Devices(contd.)

• Printers and plotters

• Digital audio player

Source: Feleke Merin (Dr. –Eng.) 15


Special-Purpose Input and Output Devices

• Computer-based navigation systems


– GPSs (Global positioning system),
satellite based radio navigating system
– Guide to specific destination

• Multiple function printers


– Print, copy, fax,scan

• Eyebud screens
– Portable media devices
– Display video in front of one eye

Source: Feleke Merin (Dr. –Eng.) 16


Summary (Typical I/O devices)

Source: Feleke Merin (Dr. –Eng.) 17


Typical Computer System Architecture
System Bus or Front Side Bus (FSB)

Memory Controller
(Chipset North Bridge)

I/O Controller Hub


(Chipset South Bridge)

Isolated I/O

I/O Subsystem

Source: Feleke Merin (Dr. –Eng.) 18


Typical System Architecture(contd.)

• Functions of Buses (based on Slide)


– Memory bus is for information transfers between CPU and the MM
– I/O bus is for information transfers between CPU and I/O devices
through their I/O interface

Physical Organizations
– Many computers use a common single bus system for both memory
and I/O interface units
• Use one common bus but separate control lines for each function
• Use one common bus with common control lines for both functions
– Some computer systems use two separate buses, one to communicate
with memory and the other with I/O interfaces

Source: Feleke Merin (Dr. –Eng.) 19


I/O controller

I/O Interface, I/O controller or I/O bus adapter:


– Specific to each type of I/O device.

– To the CPU, and I/O device, it consists of a set of control and data
registers (usually memory-mapped) within the I/O address space.

– On the I/O device side, it forms a localized I/O bus which can be
shared by several I/O devices
• (e.g IDE, SCSI, USB ...)

Source: Feleke Merin (Dr. –Eng.) 20


I/O controller duties

• Control & Timing


• CPU Communication

• Device Communication
• Data Buffering

• Error Detection

Source: Feleke Merin (Dr. –Eng.) 21


Types of Buses in The System (1/2)

• Processor-Memory Bus

• System Bus, Front Side Bus, (FSB)


– Should offer very high-speed (bandwidth) and low
latency.
– Matched to the memory system performance to maximize
memory-processor bandwidth.
– Usually design-specific (not an industry standard).

Source: Feleke Merin (Dr. –Eng.) 22


Types of Buses in The System (2/2)

• I/O buses (sometimes called an interface):


– Follow bus industry standards.
– Usually formed by I/O interface adapters to handle many
types of connected I/O devices.
– Wide range in the data bandwidth and latency
– Not usually interfaced directly to memory instead
connected processor-memory bus via a bus adapter
(chipset south bridge).
– Examples:
• Main system I/O bus: PCI, PCI-X, PCI Express
• Storage: SATA, IDE, SCSI.

Source: Feleke Merin (Dr. –Eng.) 23


Interfacing I/O devices to processor,
memory and operating systems

Giving Commands to i/o devices


Basically two techniques are used to address the devices.
1.Memory-mapped I/O : An i/o scheme in which portions
of address space are assigned to i/o devices.
Ex : Simple printer has 2 i/o device registers.
a. Status register : It contains done bit and error bit.
b. Data register : The data to be printed is put into this
register.

Source: Feleke Merin (Dr. –Eng.) 24


Interfacing I/O devices … (contd.)

2. Alternative method is to use dedicated i/o instructions in


the processor.
These specify both the device no. and command word.

The processor communicates via a set of wires normally


included as a part of i/o bus.
Commands can be transmitted over data lines in the bus.

Ex : Intel IA32, IBM 370.

Source: Feleke Merin (Dr. –Eng.) 25


Interfacing I/O devices … (contd.)

• I/O devices are interfaced via an I/O controller


– Takes care of low-level operations details
• Several ways of mapping I/O
– Memory-mapped I/O
• Reading and writing similar to memory read/write
• Uses same memory read and write signals
• Most processors use this I/O mapping
– Isolated I/O
• Separate I/O address space
• Separate I/O read and write signals are needed
• Pentium supports isolated I/O
– Also supports memory-mapped I/O

Source: Feleke Merin (Dr. –Eng.) 26


Interfacing I/O devices … (contd.)

 Separate I/O address space

CPU Memory

Memory Addressing Wires (Ax)

Bus Data Wires (Dx)

I/O Devices Addressing Wires

(1) Specify memory address using “memory addressing wires”

(2) Send/receive data to/from the memory address (using “data wires”)

Source: Feleke Merin (Dr. –Eng.) 27


Interfacing I/O devices … (contd.)
 Separate I/O address space

CPU Memory

Memory Addressing Wires

Data Wires

I/O Devices Addressing Wires

HDD Keyboard Monitor

(1) Specify I/O device (port) address using “I/O addressing wires”
(2) Send/receive data to/from the specified I/O device using “data wires”

Source: Feleke Merin (Dr. –Eng.) 28


Interfacing I/O devices … (contd.)
 Memory-Mapped I/O

CPU Memory

Memory Addressing Wires

Data Wires

HDD Keyboard Monitor I/O devices are also


addressed by memory
address wires

(1) Specify memory address using “memory addressing wires”


(2) Send/receive data to/from the memory address

Source: Feleke Merin (Dr. –Eng.) 29


I/O Data Transfer Methods (1/3)

1. Programmed I/O : Polling (For low-speed I/O)


 The I/O device puts its status information in a status
register.
 The processor must periodically check the status register.
 The processor is totally in control and does all the work.
 Very wasteful of processor time.
 Used for low-speed I/O devices (mice, keyboards etc.)

Source: Feleke Merin (Dr. –Eng.) 30


I/O Data Transfer Methods (2/3)

2. Interrupt-Driven I/O (For medium-speed I/O):


 An interrupt line from the I/O device to the CPU is used to
generate an I/O interrupt indicating that the I/O device needs
CPU attention.
 The interrupting device places its identity in an interrupt vector.
 Once an I/O interrupt is detected the current instruction is
completed and an I/O interrupt handling routine (by OS) is
executed to service the device.
 Used for moderate speed I/O (optical drives, storage, neworks ..)
 Allows overlap of CPU processing time and I/O processing time

Source: Feleke Merin (Dr. –Eng.) 31


Transferring data b/n I/O device and
memory using DMA(3/3)

3. Direct Memory Access (DMA) (For high-speed I/O):


 Implemented with a specialized controller that transfers data
between an I/O device and memory independent of the
processor(with out involving the processor).
 The DMA controller becomes the bus master and directs reads
and writes between itself and memory.
 Interrupts are still used only on completion of the transfer or
when an error occurs.
 Low CPU overhead, used in high speed I/O (storage, network
interfaces)
 Allows more overlap of CPU processing time and I/O
processing time than interrupt-driven I/O.

Source: Feleke Merin (Dr. –Eng.) 32


DMA transfer steps

• DMA transfer steps:


– The CPU sets up DMA by supplying device identity,
operation, memory address of source and destination of
data, the number of bytes to be transferred.
– The DMA controller starts the operation. When the
data is available it transfers the data, including
generating memory addresses for data to be
transferred.
– Once the DMA transfer is complete, the controller
interrupts the processor, which determines whether the
entire operation is complete.

Source: Feleke Merin (Dr. –Eng.) 33


Summary(Methods to communicate I/O
devices)

Methods Direction Who do it?

 Interrupt  I/O device  Memory The main processor

 Programmed-I/O  Memory  I/O device The main processor

 Polling  I/O device  Memory The main processor

 I/O device  Memory The shared central DMA


 Centralized-DMA  Memory  I/O device (on the motherboard)

 I/O device  Memory


 On-Card DMA On-card DMA
 Memory  I/O device

“DMA” = “Direct Memory Access”

Source: Feleke Merin (Dr. –Eng.) 34

You might also like