0% found this document useful (0 votes)
11 views17 pages

Lecture 5

Chapter 7 of 'Computer Organization and Architecture' discusses the various aspects of Input/Output (I/O) systems, including the need for I/O modules to interface between the CPU, memory, and peripherals. It covers different types of external devices, I/O module functions, and techniques such as programmed I/O, interrupt-driven I/O, and Direct Memory Access (DMA). The chapter also explains I/O commands, addressing I/O devices, and the concepts of memory-mapped and isolated I/O.

Uploaded by

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

Lecture 5

Chapter 7 of 'Computer Organization and Architecture' discusses the various aspects of Input/Output (I/O) systems, including the need for I/O modules to interface between the CPU, memory, and peripherals. It covers different types of external devices, I/O module functions, and techniques such as programmed I/O, interrupt-driven I/O, and Direct Memory Access (DMA). The chapter also explains I/O commands, addressing I/O devices, and the concepts of memory-mapped and isolated I/O.

Uploaded by

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

William Stallings

Computer Organization
and Architecture
8th Edition

Chapter 7
Input/Output
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
Input/Output Module
• Interface to CPU and Memory
• Interface to one or more peripherals
Generic Model of I/O Module
External Devices
• Human readable
—Screen, printer, keyboard
• Machine readable
—Monitoring and control
• Communication
—Modem
—Network Interface Card (NIC)
External Device Block Diagram
I/O Module Function
• Control & Timing
• CPU Communication
• Device Communication
• Data Buffering
• Error Detection
I/O Steps
• CPU checks I/O module device status
• I/O module returns status
• If ready, CPU requests data transfer
• I/O module gets data from device
• I/O module transfers data to CPU
• Variations for output, DMA, etc.
I/O Module Diagram
I/O Module Decisions
• Hide or reveal device properties to CPU
• Support multiple or single device
• Control device functions or leave for CPU
• Also O/S decisions
—e.g. Unix treats everything it can as a file
Input Output Techniques
• Programmed
• Interrupt driven
• Direct Memory Access (DMA)
Three Techniques for
Input of a Block of Data
Programmed I/O
• CPU has direct control over I/O
—Sensing status
—Read/write commands
—Transferring data
• CPU waits for I/O module to complete
operation
• Wastes CPU time
Programmed I/O - detail
• CPU requests I/O operation
• I/O module performs operation
• I/O module sets status bits
• CPU checks status bits periodically
• I/O module does not inform CPU directly
• I/O module does not interrupt CPU
• CPU may wait or come back later
I/O Commands
• CPU issues address
—Identifies module (& device if >1 per module)
• CPU issues command
—Control - telling module what to do
– e.g. spin up disk
—Test - check status
– e.g. power? Error?
—Read/Write
– Module transfers data via buffer from/to device
Addressing I/O Devices
• Under programmed I/O data transfer is
very like memory access (CPU viewpoint)
• Each device given unique identifier
• CPU commands contain identifier
(address)
I/O Mapping
• 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

You might also like