Lecture 21Comp. Arch. Fall 2006 Chapter 8: I/O Systems Adapted from Mary Jane Irwin at Penn State University for Computer Organization and Design, Patterson.

Slides:



Advertisements
Similar presentations
Computer Buses For many of you who have depopulated his/her breadboards, THANKS! There are still some to be depopulated. Please don’t forget to do it.
Advertisements

CPEG 323 Computer Architecture I/O Systems
Chapter 8 Interfacing Processors and Peripherals.
1 Lecture 22: I/O, Disk Systems Todays topics: I/O overview Disk basics RAID Reminder: Assignment 8 due Tue 11/21.
Bus Design.
IT253: Computer Organization
Digital Computer Fundamentals
I/O Chapter 8. Outline Introduction Disk Storage and Dependability – 8.2 Buses and other connectors – 8.4 I/O performance measures – 8.6.
Princess Sumaya Univ. Computer Engineering Dept. Chapter 6:
CS1104 – Computer Organization
1  1998 Morgan Kaufmann Publishers Interfacing Processors and Peripherals.
CS61C L13 I/O © UC Regents 1 CS 161 Chapter 8 - I/O Lecture 17.
Computer Science & Engineering
Datorteknik BusInterfacing bild 1 Bus Interfacing Processor-Memory Bus –High speed memory bus Backplane Bus –Processor-Interface bus –This is what we usually.
COMPUTER ORGANIZATION CHAPTER SUBSYSTEM INTERCONNECTION.
CSCE 212 Chapter 8 Storage, Networks, and Other Peripherals Instructor: Jason D. Bakos.
IOSystems.1 Review: Major Components of a Computer Processor Control Datapath Memory Devices Input Output  Important metrics for an I/O system l Performance.
EE30332 Ch8 DP – 1 Ch 8 Interfacing Processors and Peripherals Buses °Fundamental tool for designing and building computer systems divide the problem into.
S. Barua – CPSC 440 CHAPTER 8 INTERFACING PROCESSORS AND PERIPHERALS Topics to be covered  How to.
Cache Performance, Interfacing, Multiprocessors CPSC 321 Andreas Klappenecker.
Interfacing Processors and Peripherals Andreas Klappenecker CPSC321 Computer Architecture.
1  1998 Morgan Kaufmann Publishers Chapter 8 Storage, Networks and Other Peripherals.
331 Week 13.1Spring :332:331 Computer Architecture and Assembly Language Spring 2006 Week 13 Buses and I/O system [Adapted from Dave Patterson’s.
Processor Design 5Z0321 Processor Design 5Z032 Chapter 8 Interfacing Processors and Peripherals Henk Corporaal.
1  1998 Morgan Kaufmann Publishers Chapter 8 Interfacing Processors and Peripherals.
1 CSE SUNY New Paltz Chapters 8 Interfacing Processors and Peripherals.
1 Interfacing Processors and Peripherals I/O Design affected by many factors (expandability, resilience) Performance: — access latency — throughput — connection.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE Computer Organization Lecture 22 - Input/Output.
COMP381 by M. Hamdi 1 Input/Output Systems. COMP381 by M. Hamdi 2 Motivation: Who Cares About I/O? CPU Performance: 60% per year I/O system performance.
Chapter 8: Part II Storage, Network and Other Peripherals.
CSE431 Chapter 6B.1Irwin, PSU, 2008 Chapter 6B: I/O Systems Mary Jane Irwin ( ) [Adapted from Computer Organization.
I/O – Chapter 8 Introduction Disk Storage and Dependability – 8.2 Buses and other connectors – 8.4 I/O performance measures – 8.6.
CPU BASICS, THE BUS, CLOCKS, I/O SUBSYSTEM Philip Chan.
1chapter 8 Review: Major Components of a Computer Processor Control Datapath Memory Devices Input Output Important metrics for an I/O system –Performance.
1 (Based on text: David A. Patterson & John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, 3 rd Ed., Morgan Kaufmann,
I/O Example: Disk Drives To access data: — seek: position head over the proper track (8 to 20 ms. avg.) — rotational latency: wait for desired sector (.5.
3/8/2002CSE Buses Buses Pentium 4 Processor L1 and L2 caches Memory Controller Hub RDRAM Disks RDRAM I/O Controller Hub MB/sec (33 MHz, 32.
Storage Systems CS465 Lecture 12 CS465.
CS2100 Computer Organisation Input/Output (AY2010/2011) Semester 2 Adapted from.
Lecture 35: Chapter 6 Today’s topic –I/O Overview 1.
Bus Mr. Mukul Varshney. Bus A bus, in computing, is a set of physical connections (cables, printed circuits, etc.) which can be shared by multiple hardware.
I/O Computer Organization II 1 Interconnecting Components Need interconnections between – CPU, memory, I/O controllers Bus: shared communication channel.
August 1, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 9: I/O Devices and Communication Buses * Jeremy R. Johnson Wednesday,
CSIE30300 Computer Architecture Unit 11: Bus and I/O Systems Hsin-Chou Chi [Adapted from material by and
MBG 1 CIS501, Fall 99 Lecture 18: Input/Output (I/O): Buses and Peripherals Michael B. Greenwald Computer Architecture CIS 501 Fall 1999.
Datorteknik F1 bild 1 What is a bus? Slow vehicle that many people ride together –well, true... A bunch of wires...
CS2100 Computer Organisation Input/Output – Own reading only (AY2015/6) Semester 1 Adapted from David Patternson’s lecture slides:
Chapter 6 Storage and Other I/O Topics. Chapter 6 — Storage and Other I/O Topics — 2 Introduction I/O devices can be characterized by Behaviour: input,
Processor Memory Processor-memory bus I/O Device Bus Adapter I/O Device I/O Device Bus Adapter I/O Device I/O Device Expansion bus I/O Bus.
1 Lecture 14 Buses and I/O Data Transfer Peng Liu
Mohamed Younis CMCS 411, Computer Architecture 1 CMCS Computer Architecture Lecture 26 Bus Interconnect May 7,
10/15: Lecture Topics Input/Output –Types of I/O Devices –How devices communicate with the rest of the system communicating with the processor communicating.
1  2004 Morgan Kaufmann Publishers Page Tables. 2  2004 Morgan Kaufmann Publishers Page Tables.
CSE431 L24 IOSystems.1Irwin, PSU, 2005 CSE 431 Computer Architecture Fall 2005 Lecture 24. I/O Systems Mary Jane Irwin ( )
Computer Organization & Design 计算机组成与设计 Weidong Wang ( 王维东 ) College of Information Science & Electronic Engineering 信息与通信工程研究所 Zhejiang.
CSCE 385: Computer Architecture Spring 2014 Dr. Mike Turi I/O.
1 Computer Architecture & Assembly Language Spring 2001 Dr. Richard Spillman Lecture 19 – IO II.
Lecture 2. A Computer System for Labs
Buses: Presentation Outline
XU, Qiang 徐強 [Adapted from UC Berkeley’s D. Patterson’s and
Bus Interfacing Processor-Memory Bus Backplane Bus I/O Bus
Operating Systems (CS 340 D)
What is a bus? Slow vehicle that many people ride together
Chapter 8-A BUS.
Virtual Memory Main memory can act as a cache for the secondary storage (disk) Advantages: illusion of having more physical memory program relocation protection.
Input-output I/O is very much architecture/system dependent
Lecture 14 Buses and I/O Data Transfer
Peng Liu Lecture 14 I/O Peng Liu
Buses: Presentation Outline
CSC3050 – Computer Architecture
Presentation transcript:

Lecture 21Comp. Arch. Fall 2006 Chapter 8: I/O Systems Adapted from Mary Jane Irwin at Penn State University for Computer Organization and Design, Patterson & Hennessy, © 2005

Lecture 21Comp. Arch. Fall 2006 Review: Major Components of a Computer Processor Control Datapath Memory Devices Input Output  Important metrics for an I/O system l Performance l Expandability l Dependability l Cost, size, weight

Lecture 21Comp. Arch. Fall 2006 Input and Output Devices  I/O devices are incredibly diverse with respect to l Behavior – input, output or storage l Partner – human or machine l Data rate – the peak rate at which data can be transferred between the I/O device and the main memory or processor DeviceBehaviorPartnerData rate (Mb/s) Keyboardinputhuman Mouseinputhuman Laser printeroutputhuman Graphics displayoutputhuman Network/LANinput or output machine Magnetic diskstoragemachine orders of magnitude range

Lecture 21Comp. Arch. Fall 2006 I/O Performance Measures  I/O bandwidth (throughput) – amount of information that can be input (output) and communicated across an interconnect (e.g., a bus) to the processor/memory (I/O device) per unit time 1. How much data can we move through the system in a certain time? 2. How many I/O operations can we do per unit time?  I/O response time (latency) – the total elapsed time to accomplish an input or output operation l An especially important performance metric in real-time systems  Many applications require both high throughput and short response times

Lecture 21Comp. Arch. Fall 2006 A Typical I/O System Processor Cache Memory - I/O Bus Main Memory I/O Controller Disk I/O Controller I/O Controller Graphics Network Interrupts Disk

Lecture 21Comp. Arch. Fall 2006 I/O System Performance  Designing an I/O system to meet a set of bandwidth and/or latency constraints means 1. Finding the weakest link in the I/O system – the component that constrains the design l The processor and memory system ? l The underlying interconnection (e.g., bus) ? l The I/O controllers ? l The I/O devices themselves ? 2. (Re)configuring the weakest link to meet the bandwidth and/or latency requirements 3. Determining requirements for the rest of the components and (re)configuring them to support this latency and/or bandwidth

Lecture 21Comp. Arch. Fall 2006 I/O System Performance Example  A disk workload consisting of 64KB reads and writes where the user program executes 200,000 instructions per disk I/O operation and l a processor that sustains 3 billion instr/s and averages 100,000 OS instructions to handle a disk I/O operation l a memory-I/O bus that sustains a transfer rate of 1000 MB/s l SCSI disk I/O controllers with a DMA transfer rate of 320 MB/s that can accommodate up to 7 disks per controller l disk drives with a read/write bandwidth of 75 MB/s and an average seek plus rotational latency of 6 ms what is the maximum sustainable I/O rate and what is the number of disks and SCSI controllers required to achieve that rate? The maximum disk I/O rate (# I/O’s/sec) of the processor is Each disk I/O reads/writes 64 KB so the maximum I/O rate of the bus is

Lecture 21Comp. Arch. Fall 2006 I/O System Performance Example  A disk workload consisting of 64KB reads and writes where the user program executes 200,000 instructions per disk I/O operation and l a processor that sustains 3 billion instr/s and averages 100,000 OS instructions to handle a disk I/O operation l a memory-I/O bus that sustains a transfer rate of 1000 MB/s The maximum disk I/O rate (# I/O’s/s) of the processor is = = 10,000 I/O’s/s Instr execution rate 3 x 10 9 Instr per I/O ( ) x 10 3 l SCSI disk I/O controllers with a DMA transfer rate of 320 MB/s that can accommodate up to 7 disks per controller l disk drives with a read/write bandwidth of 75 MB/s and an average seek plus rotational latency of 6 ms what is the maximum sustainable I/O rate and what is the number of disks and SCSI controllers required to achieve that rate? Each disk I/O reads/writes 64 KB so the maximum I/O rate of the bus is = = 15,625 I/O’s/s Bus bandwidth 1000 x 10 6 Bytes per I/O 64 x 10 3

Lecture 21Comp. Arch. Fall 2006 Disk I/O System Example Processor Cache Memory - I/O Bus Main Memory I/O Controller Disk … I/O Controller Disk … Up to 7 10,000 I/O’s/s 15,625 I/O’s/s 320 MB/s 75 MB/s

Lecture 21Comp. Arch. Fall 2006 I/O System Performance Example, Con’t So the processor is the bottleneck, not the bus To calculate the number of SCSI disk controllers, we need to know the average transfer rate per disk to ensure we can put the maximum of 7 disks per SCSI controller and that a disk controller won’t saturate the memory-I/O bus during a DMA transfer l disk drives with a read/write bandwidth of 75 MB/s and an average seek plus rotational latency of 6 ms Disk I/O read/write time = seek + rotational time + transfer time = 6ms + 64KB/(75MB/s) = 6.9ms Thus each disk can complete 1000ms/6.9ms or 146 I/O’s per second. To saturate the processor requires 10,000 I/O’s per second or 10,000/146 = 69 disks Disk transfer rate = (transfer size)/(transfer time) = 64KB/6.9ms = 9.56 MB/s Thus 7 disks won’t saturate either the SCSI controller (with a maximum transfer rate of 320 MB/s) or the memory-I/O bus (1000 MB/s). This means we will need 69/7 or 10 SCSI controllers.

Lecture 21Comp. Arch. Fall 2006 I/O System Interconnect Issues  A bus is a shared communication link (a single set of wires used to connect multiple subsystems) that needs to support a range of devices with widely varying latencies and data transfer rates l Advantages -Versatile – new devices can be added easily and can be moved between computer systems that use the same bus standard -Low cost – a single set of wires is shared in multiple ways l Disadvantages -Creates a communication bottleneck – bus bandwidth limits the maximum I/O throughput  The maximum bus speed is largely limited by l The length of the bus l The number of devices on the bus

Lecture 21Comp. Arch. Fall 2006 Bus Characteristics  Control lines l Signal requests and acknowledgments l Indicate what type of information is on the data lines  Data lines l Data, addresses, and complex commands  Bus transaction consists of l Master issuing the command (and address) – request l Slave receiving (or sending) the data – action l Defined by what the transaction does to memory -Input – inputs data from the I/O device to the memory -Output – outputs data from the memory to the I/O device Bus Master Bus Slave Control lines: Master initiates requests Data lines: Data can go either way

Lecture 21Comp. Arch. Fall 2006 Types of Buses  Processor-memory bus (proprietary) l Short and high speed l Matched to the memory system to maximize the memory- processor bandwidth l Optimized for cache block transfers  I/O bus (industry standard, e.g., SCSI, USB, Firewire) l Usually is lengthy and slower l Needs to accommodate a wide range of I/O devices l Connects to the processor-memory bus or backplane bus  Backplane bus (industry standard, e.g., ATA, PCIexpress) l The backplane is an interconnection structure within the chassis l Used as an intermediary bus connecting I/O busses to the processor-memory bus

Lecture 21Comp. Arch. Fall 2006 Synchronous and Asynchronous Buses  Synchronous bus (e.g., processor-memory buses) l Includes a clock in the control lines and has a fixed protocol for communication that is relative to the clock l Advantage: involves very little logic and can run very fast l Disadvantages: -Every device communicating on the bus must use same clock rate -To avoid clock skew, they cannot be long if they are fast  Asynchronous bus (e.g., I/O buses) l It is not clocked, so requires a handshaking protocol and additional control lines (ReadReq, Ack, DataRdy) l Advantages: -Can accommodate a wide range of devices and device speeds -Can be lengthened without worrying about clock skew or synchronization problems l Disadvantage: slow(er)

Lecture 21Comp. Arch. Fall 2006 Asynchronous Bus Handshaking Protocol 7. I/O device sees DataRdy go low and drops Ack  Output (read) data from memory to an I/O device I/O device signals a request by raising ReadReq and putting the addr on the data lines ReadReq Data Ack DataRdy addrdata Memory sees ReadReq, reads addr from data lines, and raises Ack 2. I/O device sees Ack and releases the ReadReq and data lines 3. Memory sees ReadReq go low and drops Ack 4. When memory has data ready, it places it on data lines and raises DataRdy 5. I/O device sees DataRdy, reads the data from data lines, and raises Ack 6. Memory sees Ack, releases the data lines, and drops DataRdy