IT253: Computer Organization

Slides:



Advertisements
Similar presentations
1 Lecture 22: I/O, Disk Systems Todays topics: I/O overview Disk basics RAID Reminder: Assignment 8 due Tue 11/21.
Advertisements

Computer Buses Ref: Burd, Chp – 220 Englander, Chp 7 p
HARDWARE Rashedul Hasan..
Disk Storage SystemsCSCE430/830 Disk Storage Systems CSCE430/830 Computer Architecture Lecturer: Prof. Hong Jiang Courtesy of Yifeng Zhu (U. Maine) Fall,
I/O Chapter 8. Outline Introduction Disk Storage and Dependability – 8.2 Buses and other connectors – 8.4 I/O performance measures – 8.6.
CSE431 Chapter 6A.1Irwin, PSU, 2008 Chapter 6A: Disk Systems Mary Jane Irwin ( ) [Adapted from Computer Organization.
- Dr. Kalpakis CMSC Dr. Kalpakis 1 Outline In implementing DBMS we need to answer How should the system store and manage very large amounts of data?
Princess Sumaya Univ. Computer Engineering Dept. Chapter 6:
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.
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.
Datorteknik BusInterfacing bild 1 Bus Interfacing Processor-Memory Bus –High speed memory bus Backplane Bus –Processor-Interface bus –This is what we usually.
CPE 442 io.1 Introduction To Computer Architecture CpE 442 I/O Systems.
CSCE 212 Chapter 8 Storage, Networks, and Other Peripherals Instructor: Jason D. Bakos.
Storage. The Memory Hierarchy fastest, but small under a microsecond, random access, perhaps 2Gb Typically magnetic disks, magneto­ optical (erasable),
S. Barua – CPSC 440 CHAPTER 8 INTERFACING PROCESSORS AND PERIPHERALS Topics to be covered  How to.
Henry Hexmoor1 Chapter 7 Henry Hexmoor Registers and RTL.
Interfacing Processors and Peripherals Andreas Klappenecker CPSC321 Computer Architecture.
1  1998 Morgan Kaufmann Publishers Chapter 8 Storage, Networks and Other Peripherals.
Processor Design 5Z0321 Processor Design 5Z032 Chapter 8 Interfacing Processors and Peripherals Henk Corporaal.
11/18/2004Comp 120 Fall November 3 classes to go No class on Tuesday 23 November Last 2 classes will be survey and exam review Interconnect and.
1  1998 Morgan Kaufmann Publishers Chapter 8 Interfacing Processors and Peripherals.
1  2004 Morgan Kaufmann Publishers Chapters 8 & 9 (partial coverage)
1 Interfacing Processors and Peripherals I/O Design affected by many factors (expandability, resilience) Performance: — access latency — throughput — connection.
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.
12/3/2004EE 42 fall 2004 lecture 391 Lecture #39: Magnetic memory storage Last lecture: –Dynamic Ram –E 2 memory This lecture: –Future memory technologies.
IT Systems In and Out EN230-1 Justin Champion C208 –
1 Today I/O Systems Storage. 2 I/O Devices Many different kinds of I/O devices Software that controls them: device drivers.
Counters and Registers
Introduction to Database Systems 1 The Storage Hierarchy and Magnetic Disks Storage Technology: Topic 1.
Lecture 12 Today’s topics –CPU basics Registers ALU Control Unit –The bus –Clocks –Input/output subsystem 1.
Computer Architecture Lecture 08 Fasih ur Rehman.
Storage & Peripherals Disks, Networks, and Other Devices.
Stuart Cunningham - Computer Platforms COMPUTER PLATFORMS Input, Output, and Storage & Introduction to Basic Computer Architecture Week 2.
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.
 Design model for a computer  Named after John von Neuman  Instructions that tell the computer what to do are stored in memory  Stored program Memory.
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.
1 Week 9: Computing Components: PART II READING: Chapter 5.
Input/Output 2 What is I/O? How we get the CPU to communicate with devices From the computer’s point of view, it’s just 1’s and 0’s Gets interpreted.
IT253: Computer Organization
August 1, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 9: I/O Devices and Communication Buses * Jeremy R. Johnson Wednesday,
Programming for GCSE Topic 5.1: Memory and Storage T eaching L ondon C omputing William Marsh School of Electronic Engineering and Computer Science Queen.
Lecture 3 Page 1 CS 111 Online Disk Drives An especially important and complex form of I/O device Still the primary method of providing stable storage.
Computer Organization. This module surveys the physical resources of a computer system.  Basic components  CPU  Memory  Bus  I/O devices  CPU structure.
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
CS2100 Computer Organisation Input/Output – Own reading only (AY2015/6) Semester 1 Adapted from David Patternson’s lecture slides:
Csci 136 Computer Architecture II – IO and Storage Systems Xiuzhen Cheng
Disk Basics CS Introduction to Operating Systems.
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.
Fall EE 333 Lillevik 333f06-l22 University of Portland School of Engineering Computer Organization Lecture 22 Project 6 Hard disk drive Bus arbitration.
Mohamed Younis CMCS 411, Computer Architecture 1 CMCS Computer Architecture Lecture 26 Bus Interconnect May 7,
ECE 456 Computer Architecture Lecture #9 – Input/Output Instructor: Dr. Honggang Wang Fall 2013.
REGISTER TRANSFER LANGUAGE (RTL) INTRODUCTION TO REGISTER Registers1.
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.
Mohamed Younis CMCS 411, Computer Architecture 1 CMCS Computer Architecture Lecture 25 I/O Systems May 2,
Main Memory Main memory – –a collection of storage locations, –each with a unique identifier called the address. Word- –Data are transferred to and from.
Bus Interfacing Processor-Memory Bus Backplane Bus I/O Bus
REGISTER TRANSFER LANGUAGE (RTL)
Computer Architecture
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
Persistence: hard disk drive
Page Table Constraints 32 bit addresses Page Table v d pro physPGaddr
Registers Today we’ll see some common sequential devices: counters and registers. They’re good examples of sequential analysis and design. They are also.
Presentation transcript:

IT253: Computer Organization Tonga Institute of Higher Education IT253: Computer Organization Lecture 13: Input/Output

Input/Output Input and output allows people to work with computers. It includes many parts: keyboard, mouse, printer, hard drive, network card…

I/O Examples

Storage Devices The hard disk is an I/O device. It is long-term storage that is a slow, but still a valuable part of the memory hierarchy

Organization of Magnetic Disk Most of the time, a hard disk will have: 500-2000 tracks per platter 32 – 128 sectors per track (a sector is the smallest amount of data that can be read or written) Usually all tracks have same number of sectors, but sometimes they are different because it might be faster to get to one spot on the hard disk than another

Characteristics of Magnetic Disks Cylinder – the word for all the tracks that can be read by the read/write head in the spot that the read/write head is in Reading and Writing data takes 3 steps Seek time – move the head to the correct place Rotational latency – wait for the platter to spin so that the right sector is underneath the head Transfer time – time it takes to transfer a sector from the head

Characteristics of Magnetic Disks Rotational Latency Most disks rotate at 3,600 RPM to 10K RPM (rotations per minute). About 3.5 ms to 16 ms for one rotation Transfer time depends on: Transfer size (usually 1 KB sectors) Rotation speed Recording density (how many bits you can fit in one square inch) Diameter of the platter Usually you can get 2 – 12 MB of data transferred a second

Disk Access Access time = queue + seek + rotational + transfer + overhead Queue – the request has to wait for other things to finish first Seek time – move arm of head over track Rotational latency – wait for platter to spin to right place Transfer time – the number of bits you get a second

Disk Access Example Parameters: Transfer size: 8MB Advertised average seek is 12 ms Disk spins at 7200 RPM Transfer rate is 4 MB Average rotational delay: 4 ms Controller overhead: 2 ms What is average disk access time for a sector? Avg seek + avg rotate delay + transfer time + overhead 12 ms + 4 + 8 MB/4 MB/s + 2 ms 12 + 4 + 2 + 2 = 20 ms Advertised rate was 12 ms, but really 20 ms. The real rate is usually about only ¼ as fast as the advertised rate.

Alternative Storage DRAM as hard disk – you could use DRAM as your hard disk, but you would need the power to be on all the time, and it would be expensive, but very fast CD-ROM – read only CD-RW – read and write Magnetic tape – Sequential access, very slow, very big in size. Tera or peta bytes of data

Buses: Connecting I/O to Processor A bus is a communication link between devices It is usually a set of wires that will connect to many things all at once (between different inputs and outputs and the processor and memory)

Goods things about Buses Why do we need buses? Allows us to add new devices easily Allows us to move parts from one computer to another if they use same bus type Lower cost because we only use one set of wires to connect all the pieces

Bad things about buses Buses can also introduce a few problems for computers They create a communication bottleneck. Things may not be able to send and get data as fast as possible because it has to wait for other things to use the bus Maximum speed of a bus is determined by: Length of bus How many devices are on the bus How many devices it has to work with (different devices will have different speeds for sending and getting data

Bus Organization A bus will have two wires, one for control of the bus and one for sending data Control Lines: Carries requests and acknowledgements for who wants to use the bus Tells what kind of data is being sent on the bus Data Lines: Carries data between source and destination

Master/Slave Bus Organization To use the bus, two things must happen: Sending the address Receiving or sending data A Master device will start the transaction on the bus by sending the address A Slave device will respond to this address by either Sending data to the master Receiving data from master

Outputting Data There are three steps for outputting data A request on the bus to read memory Reading the memory Sending the memory to the output device

Input Operation Input is when the processor receives data from an input device When we want to do an input operation we need to take two steps. A request to write memory on the bus Sending data from input device to memory

Types of buses There are different types of buses that a computer can use to transfer data between different objects Processor-Memory bus: short and high speed. Connected directly from memory to processor External I/O bus: longer and slow. Must work with many devices. Connects to processor memory bus Backplane bus: connects all the pieces together, including memory and processor and all I/O devices. Only one bus needed Bit-Serial Bus: high speed buses that connect directly from one object to another object. (like USB or FireWire)

A Backplane Bus Computer Backplane bus: a single bus is used to connect all components Simple and low cost But it is slow and can cause bottlenecks where data waits for a long time before it gets where it needs to go. Not used today

Two-Bus Computer A two-bus computer will use an I/O bus for the devices and a processor-memory bus I/O buses connect to the processor-memory bus through “bus adapters” The bus adapters allow the different buses to work together without problems

Synchronous and Asynchronous Buses Synchronous bus: this means that the operation of the bus is determined by a clock cycle It is pretty easy to implement and also runs fast But every device on the bus must use same clock cycle and if the bus is too long there will be “clock skew” Clock skew is a problem where a device at the end of the bus may think it’s an older clock cycle, but a new cycle has already started Asynchronous bus: No cycle and can work with many devices It can be any size without worrying about clock skew Not as fast.

Using the bus One of the most important issues is how will devices get access to control the bus The master-slave system avoids many of the problems. The bus master controls all actions and tells devices when they will read data and when they will write data to the bus The simplest way is to make the processor the bus master. That means every time there is an I/O transaction the processor has to be told about it and then tell the bus to do that. This means the processor is slowed down by bus transactions

Bus Masters It is not the best solution to use the processor as the bus master. Instead, we might have a few pieces of hardware act as the bus masters. That means there needs to be a way to determine who will use the bus if there are many masters This is called bus arbitration and it uses two ideas Priority – if something is really important, then it should be allowed to use the bus right away Fairness – make sure all the devices are able to use the bus in a reasonable amount of time

Bus Arbitration There are generally four bus arbitration ideas used Distributed arbitration by self-selection - each device on the bus will put a request on the bus to use it when it needs it. It then might have to wait its turn Distributed arbitration by collision detection – this is what Ethernet uses. It will just send the data on the bus and if it crashes into other data and is lost, then it will send again Daisy Chain arbitration – there is one device which is a bus arbitrator and it has devices connected one after each other. There is only one wire to connect devices to bus master Centralized-Parallel arbitration – all devices are connected to a bus master with their own separate lines. Then the bus arbitrator decides who uses the bus

Centralized-Parallel Arbitration

Daisy Chain Arbitration Slow, but simple and cheap

Bus Summary