FIU Chapter 7: Input/Output Jerome Crooks Panyawat Chiamprasert

Slides:



Advertisements
Similar presentations
Computer Architecture
Advertisements

I/O Organization popo.
I/O Unit.
CS-334: Computer Architecture
Computer Organization and Architecture Input/Output.
Interrupts (contd..) Multiple I/O devices may be connected to the processor and the memory via a bus. Some or all of these devices may be capable of generating.
Input/Output.
Midterm Tuesday October 23 Covers Chapters 3 through 6 - Buses, Clocks, Timing, Edge Triggering, Level Triggering - Cache Memory Systems - Internal Memory.
Chapter 7 Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats.
Unit-5 CO-MPI autonomous
Group 7 Jhonathan Briceño Reginal Etienne Christian Kruger Felix Martinez Dane Minott Immer S Rivera Ander Sahonero.
INPUT/OUTPUT ARCHITECTURE By Truc Truong. Input Devices Keyboard Keyboard Mouse Mouse Scanner Scanner CD-Rom CD-Rom Game Controller Game Controller.
Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower.
The computer system’s I/O architecture is its interface to the outside world. This architecture provides a systematic means of controlling interaction.
Chapter 7 Input/Output Luisa Botero Santiago Del Portillo Ivan Vega.
Chapter 10: Input / Output Devices Dr Mohamed Menacer Taibah University
Input/OUTPUT [I/O Module structure].
I/O Sub-System CT101 – Computing Systems.
1 Computer System Overview Chapter 1. 2 n An Operating System makes the computing power available to users by controlling the hardware n Let us review.
COMPUTER ORGANIZATIONS CSNB123 NSMS2013 Ver.1Systems and Networking1.
MICROPROCESSOR INPUT/OUTPUT
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Principles of I/0 hardware.
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
2007 Oct 18SYSC2001* - Dept. Systems and Computer Engineering, Carleton University Fall SYSC2001-Ch7.ppt 1 Chapter 7 Input/Output 7.1 External Devices.
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
2009 Sep 10SYSC Dept. Systems and Computer Engineering, Carleton University F09. SYSC2001-Ch7.ppt 1 Chapter 7 Input/Output 7.1 External Devices 7.2.
Dr Mohamed Menacer College of Computer Science and Engineering Taibah University CE-321: Computer.
COMPUTER ORGANIZATIONS CSNB123 NSMS2013 Ver.1Systems and Networking1.
Input/Output Computer component : Input/Output I/O Modules External Devices I/O Modules Function and Structure I/O Operation Techniques I/O Channels and.
Chapter5: Input/Output (I/O).
Organisasi Sistem Komputer Materi VIII (Input Output)
CH10 Input/Output DDDData Transfer EEEExternal Devices IIII/O Modules PPPProgrammed I/O IIIInterrupt-Driven I/O DDDDirect Memory.
The computer system’s I/O architecture is its interface to the outside world. This architecture provides a systematic means of controlling interaction.
PART 7 CPU Externals CHAPTER 7: INPUT/OUTPUT 1. Input/Output Problems Wide variety of peripherals – Delivering different amounts of data – At different.
Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower than CPU.
IT3002 Computer Architecture
Input Output Techniques Programmed Interrupt driven Direct Memory Access (DMA)
I/O Organization Competency – C6. Important facts to remember when I/O devices are to be connected to CPU There is a vast variety of I/O devices. Some.
بسم الله الرحمن الرحيم MEMORY AND I/O.
Multiple Interrupts Each interrupt line has a priority Higher priority lines can interrupt lower priority lines If bus mastering only current master can.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
Computer Architecture Chapter (7): Input / Output
EEL4709C Dr. Watson Summer 2009 Juan Benatuil William Raad.
Computer Architecture
Computer Organization and Architecture + Networks Lecture 6 Input/Output.
William Stallings Computer Organization and Architecture 6th Edition
I/O SYSTEMS MANAGEMENT Krishna Kumar Ahirwar ( )
Unit- 3 Chapter 7 Input/Output.
William Stallings Computer Organization and Architecture 7th Edition
BIC 10503: COMPUTER ARCHITECTURE
Created by Vivi Sahfitri
William Stallings Computer Organization and Architecture 8th Edition
William Stallings Computer Organization and Architecture 8th Edition
William Stallings Computer Organization and Architecture 8th Edition
Jazan University, Jazan KSA
I/O subsystem Overview Peripheral Devices and IO Modules
Presentation transcript:

FIU Chapter 7: Input/Output Jerome Crooks Panyawat Chiamprasert Jose Cuba

Table of Content 7.1 External Devices 7.2 I/O Modules 7.3 Programmed I/O 7.4 Interrupts 7.5 DMA

External Devices can be group into three categories: Human readable: Appropriate for communicating with the computer user. Screen, printer, keyboard Machine readable: Appropriate for communicating with the equipment. Monitoring and control Communication: Appropriate for communicating with remote devices. Modem Network Interface Card (NIC)

Block Diagram for External Devices Control signals: Establish the function that the device will execute. Status signal: Indicates the state of the device. Control logic: Connected with the device controls ; the device’s operation in response to direction from the I/O module. Transducer: Converts data from electrical to other forms of energy through output and from other forms to electrical through input. Buffer: Associated with the transducer to temporarily hold data being transferred between the I/O module and the external environment ; it is very often 8 to 16 bits. Data bits: In the form of a set of bits are the data , and it is sent to or received from the I/O module.

Major functions for an I/O module: I/O Modules Major functions for an I/O module: 1. Control and Timing: To organize the flow of interchange between internal resources and external devices. 2. Processor Communication: Includes command decoding , data exchange , status reporting , address recognition. 3. Device Communication: This communication contains commands , status information , and data. 4. Data Buffering: It is the fundamental assignment of an I/O module. 5. Error Detection: It is usually a responsibility of the I/O module to report errors to the CPU.

The control of the transfer of data from an external device to the processor consists in the following steps: Processor interrogates I/O module to verify the condition of the device connected. I/O module informs the situation of the installed device . If the device is prepared to transmit, the processor asks data transfer. I/O module achieves a unit of data such as 8 or 16 bits from the external device. Data are moved from the I/O module to the processor. Variations for output, Direct Memory Access, and so on. I/O Modules

General Block Diagram of an I/O Module

I/O module communicates with the processor: I/O Modules I/O module communicates with the processor: Command decoding: The I/O module accepts commands from the processor. Data: Data are exchange between the processor and the I/O module over the data bus Status reporting: Due to peripherals are so slow , it is important to know the status of the I/O module. Address recognition: As each word of memory has an address , so does each I/O device.

Programmed I/O The processor has direct control over I/O. Sensing status Read/write commands Transferring data 2. The processor waits for I/O module to complete operation. 3. With programmed I/O , data are exchange between the processor and the I/O module.

Programmed I/O Steps The processor requests I/O operation. I/O module performs operation. I/O module sets status bits. The processor checks status bits periodically. I/O module does not inform the processor directly. I/O module does not interrupt the processor. The processor may wait or come back later.

Interrupt Driven I/O With this interrupt , the processor issues an I/O command and continues to execute other instructions ; but is interrupted by the I/O module when the latter has completed its work. Overcomes the processor waiting. The processor does not repeat checking of device. 4. This interrupt is used when an I/O to memory transfer occurs across the processor.

Interrup Driven I/O Basic Operation CPU issues read command I/O module gets data from peripheral while CPU does other work I/O module interrupts CPU CPU requests data I/O module transfers data CPU Viewpoint Issue read command Do other work Check for interrupt at end of each instruction cycle If interrupted:- Save context (registers) Process interrupt Fetch data & store See Operating Systems notes

Simple Interrupt Processing

Design issues -How do you identify the module issuing the interrupt? -How do you deal with multiple interrupts? i.e. an interrupt handler being interrupted

Identifying Interrupting Module 1.Multiple interrupt lines -PC -Limits number of devices 2. Software poll -CPU asks each module in turn -Slow 3. Daisy Chain or Hardware poll -Interrupt Acknowledge sent down a chain -Module responsible places vector on bus -CPU uses vector to identify handler routine 4. Bus Master -Module must claim the bus before it can raise interrupt

Multiple Interrupts Each interrupt line has a priority Higher priority lines can interrupt lower priority lines If bus mastering only current master can interrupt

82C59A Interrupt Controller Example - PC Bus 80x86 has one interrupt line 8086 based systems use one 8259A interrupt controller 8259A has 8 interrupt lines Sequence of Events 8259A accepts interrupts 8259A determines priority 8259A signals 8086 (raises INTR line) CPU Acknowledges 8259A puts correct vector on data bus CPU processes interrupt

Direct Memory Access Interrupt driven and programmed I/O require active CPU intervention Transfer rate is limited CPU is tied up DMA is the answer

DMA Function Additional Module (hardware) on bus DMA controller takes over from CPU for I/O

Typical DMA Module Diagram

DMA Operation 1. CPU tells DMA controller: Request: Read or Write Device address Starting location in memory Data transfer amount 2. CPU carries on with other work 3. DMA controller does transfer 4. DMA controller sends interrupt

DMA Transfer Cycle Stealing 1. DMA controller takes over bus for a cycle 2. Transfer of one word of data 3. Not an interrupt CPU does not switch context 4. CPU suspended just before it accesses bus i.e. before an operand or data fetch or a data write 5. Slows down CPU

DMA and Interrupt Break points During an Instruction Cycle

DMA Configurations(1) Single Bus, Detached DMA controller 1. Each transfer uses bus twice I/O to DMA then DMA to memory 2. CPU is suspended twice

DMA Configurations (2) Single Bus, Integrated DMA controller Controller may support >1 device Each transfer uses bus once DMA to memory CPU is suspended once

DMA Configurations (3) Separate I/O Bus Bus supports all DMA enabled devices Each transfer uses bus once DMA to memory CPU is suspended once

Intel 8237A DMA Controller Interfaces to 80x86 family and DRAM When DMA module needs buses it sends HOLD signal to processor CPU responds HLDA (hold acknowledge) DMA module can use buses E.g. transfer data from memory to disk

8237 DMA Usage of Systems Bus

Review Questions List three broad classifications of external , or peripheral , devices. What is the International Reference Alphabet? What are the major functions of an I/O module? List and briefly define three techniques for performing I/O. What is the difference between memory-mapped I/O and isolated I/O? When a device interrupt occurs , how does the processor determine which device issued the interrupt? When a DMA module takes control of a bus , and while it retains control of the bus , what does the processor do?