SlideShare uma empresa Scribd logo
1 de 48
Er. Nawaraj Bhandari
Topic 4
Input/ Output
Computer
Architecture
Input/Output Problems
 Wide variety of peripherals
 Delivering different amounts of data
 At different speeds
 In different formats
 There are a wide variety of peripherals with various methods of operation. It would
be impractical to incorporate the necessary logic within the processor to control a
range of devices
 The data transfer rate of peripherals is often much slower than that of the memory
or processor. Thus, it is impractical to use the high-speed system bus to
communicate directly with a peripheral
Input/Output Problems
 the data transfer rate of some peripherals is faster than that of the memory or
processor. Again, the mismatch would lead to inefficiencies if not managed
properly
 Peripherals often use different data formats and word lengths than the computer
to which they are attached
Input/Output Module
 Interface to CPU and Memory
 Interface to one or more peripherals
 Interface to the processor and memory via the system bus or central
switch
 Interface to one or more peripheral devices by tailored data links
Generic Model of I/O Module
External Devices
 Human readable (human interface)
 Monitor, printer, keyboard, mouse
 Machine readable
 Disk, tape, sensors
 Communication
 Modem
 Network Interface Card (NIC)
External Device Block Diagram
External Device
 Control signals determine the function that the device will perform, such as
send data to the I/O module (INPUT or READ), accept data from the I/O module
(OUTPUT or WRITE), report status, or perform some control function particular
to the device (e.g., position a disk head).
• Status signals indicate the state of the
device. Examples are READY/NOT-READY to show whether the device is ready
for data transfer
External Device
• Control logic associated with the device controls the device’s operation in
response to direction from the I/O module.
• The transducer converts data from electrical
to other forms of energy during output and from other forms to electrical during
input. Typically, a buffer is associated with the transducer to temporarily hold data being
transferred between the I/O module and the external environment; a
buffer size of 8 to 16 bits is common.
I/O Module Function
The major functions or requirements for an I/O module fall into the
following categories:
 Control & Timing
 CPU (Processor) Communication
 Device Communication
 Data Buffering
 Error Detection (e.g., extra parity bit)
I/O Module Function
 During any period of time, the processor may communicate with one or
more external devices in unpredictable patterns, depending on the
program’s need for I/O.
 The internal resources, such as main memory and the system bus, must be
shared among a number of activities, including data I/O.
 Thus, the I/O function includes a control and timing requirement, to
coordinate the flow of traffic between internal resources and external
devices.
 For example, the control of the transfer of data from an external device to
the processor might involve the following sequence of steps:
I/O Module Function
 The processor interrogates the I/O module to check the status of the
attached device.
 The I/O module returns the device status.
 If the device is operational and ready to transmit, the processor requests
the
 transfer of data, by means of a command to the I/O module.
 The I/O module obtains a unit of data (e.g., 8 or 16 bits) from the external
device.
 The data are transferred from the I/O module to the processor.
Processor/device Communications
 Command decoding:
The I/O module accepts commands from the processor, typically sent
as signals on the control bus. For example, an I/O module for a disk
drive might accept the following commands: READ SECTOR, WRITE
SECTOR, SEEK track number, and SCAN record ID
 Data: Data are exchanged between the processor and the I/O module
over the data bus.
Processor/device Communications
 Status reporting: Because peripherals are so slow, it is important to
know the status of the I/O module. For example, if an I/O module is asked
to send data to the processor (read), it may not be ready to do so because it
is still working on the previous I/O command. This fact can be reported
with a status signal Common status signals are BUSY and READY.
There may also be signals to report various error conditions
 Address recognition: Just as each word of memory has an
address, so does each I/O device. Thus, an I/O module must
recognize one unique address for each peripheral it controls.
Data Buffering:
 An essential task of an I/O module is data buffering.
 Whereas the transfer rate into and out of main
memory or the processor is quite high, the rate is orders of magnitude lower for
many peripheral devices and covers a wide range.
 Data coming from main memory
are sent to an I/O module in a rapid burst. The data are buffered in the I/O
module and then sent to the peripheral device at its data rate.
 In the opposite direction, data
are buffered so as not to tie up the memory in a slow transfer operation. Thus,
the I/O module must be able to operate at both device and memory speeds.
 Similarly, if the I/O device operates at a rate higher than the memory access
rate, then the I/O module performs the needed buffering operation.
Need for Data Buffering: Typical I/O Data Rates
Error detection:
• Finally, an I/O module is often responsible for error detection and for
subsequently reporting errors to the processor.
• One class of errors includes mechanical and electrical malfunctions reported
by the device (e.g., paper jam, bad disk track).
• Another class consists of unintentional changes to the bit pattern as it is
transmitted from device to I/O module.
• Some form of error-detecting code is often used to detect transmission errors
I/O Module Diagram
I/O Module Diagram
The module connects to the rest of the computer through a set of signal lines (e.g., system bus
lines).
Data transferred to and from the module are buffered in one or more data registers. There may
also be one or more status registers that provide current status information.
A status register may also function as a control register, to accept detailed control information
from the processor.
The logic within the module interacts with the processor via a set of control lines. The processor
uses the control lines to issue commands to the I/O module. Some of the control lines may be
used by the I/O module (e.g., for arbitration and status signals).
The module must also be able to recognize and generate addresses associated with the devices
it controls. Each I/O module has a unique address or, if it controls more than one external device,
a unique set of addresses.
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)
Input Output Techniques
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
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
I/O Mapping
Interrupt Driven I/O
 Overcomes CPU waiting
 No repeated CPU checking of device
 I/O module interrupts when ready
Interrupt Driven I/O
Interrupt Driven I/O
Basic Operation
 CPU issues read command
 I/O module gets data from peripheral whilst 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
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
DMA Module Diagram
DMA Operation
 CPU tells DMA controller:-
 Read/Write
 Device address
 Starting address of memory block for data
 Amount of data to be transferred
 CPU carries on with other work
 DMA controller deals with transfer
 DMA controller sends interrupt when finished
DMA Configurations (1)
 Single Bus, Detached DMA controller
 Each transfer uses bus twice
 I/O to DMA then DMA to memory
 CPU is suspended twice
I/O Channels
 The I/O module is enhanced to become a processor in its own right, with a
specialized instruction set tailored for I/O.
 The CPU directs the I/O processor to execute an I/O program in memory.
 The I/O processor fetches and executes these instructions without CPU
intervention.
 This allows the CPU to specify a sequence of I/O activities and to be
interrupted only when the entire sequence has been performed.
 The I/O module has a local memory of its own and is, in fact, a computer in
its own right.
 With this architecture, a large set of I/O devices can be controlled, with
minimal CPU involvement.
I/O Channels
 I/O devices getting more sophisticated
 e.g. 3D graphics cards
 CPU instructs I/O controller to do transfer
 I/O controller does entire transfer
 Improves speed
 Takes load off CPU
 Dedicated processor is faster
I/O Channel Architecture
Interfacing
 Connecting devices together
 Bit of wire?
 Dedicated processor/memory/buses?
 E.g. FireWire, InfiniBand
IEEE 1394 FireWire
 High performance serial bus
 Fast
 Low cost
 Easy to implement
 Also being used in digital cameras, VCRs and TV
FireWire Configuration
 Daisy chain
 Up to 63 devices on single port
 Really 64 of which one is the interface itself
 Up to 1022 buses can be connected with bridges
 Automatic configuration
 No bus terminators
 May be tree structure
Simple FireWire Configuration
InfiniBand
 I/O specification aimed at high end servers
 Merger of Future I/O (Cisco, HP, Compaq, IBM) and Next Generation I/O (Intel)
 Version 1 released early 2001
 Architecture and spec. for data flow between processor and intelligent
I/O devices
 Intended to replace PCI in servers
 Increased capacity, expandability, flexibility
InfiniBand Architecture
 Remote storage, networking and connection between servers
 Attach servers, remote storage, network devices to central fabric of switches
and links
 Greater server density
 Scalable data centre
 Independent nodes added as required
 I/O distance from server up to
 17m using copper
 300m multimode fibre optic
 10km single mode fibre
 Up to 30Gbps
ANY QUESTIONS?

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Major Function of i/o module
Major Function of i/o moduleMajor Function of i/o module
Major Function of i/o module
 
Computer Network - Types & Definition
Computer Network - Types & DefinitionComputer Network - Types & Definition
Computer Network - Types & Definition
 
operating system structure
operating system structureoperating system structure
operating system structure
 
Processor types
Processor typesProcessor types
Processor types
 
01. Basics of Computer Hardware
01. Basics of Computer Hardware01. Basics of Computer Hardware
01. Basics of Computer Hardware
 
Peripherals and interfacing
Peripherals  and interfacingPeripherals  and interfacing
Peripherals and interfacing
 
Computer network
Computer networkComputer network
Computer network
 
Instruction Execution Cycle
Instruction Execution CycleInstruction Execution Cycle
Instruction Execution Cycle
 
Operating System Introduction
Operating System IntroductionOperating System Introduction
Operating System Introduction
 
CPU Architecture - Basic
CPU Architecture - BasicCPU Architecture - Basic
CPU Architecture - Basic
 
Linux operating system ppt
Linux operating system pptLinux operating system ppt
Linux operating system ppt
 
Direct memory access
Direct memory accessDirect memory access
Direct memory access
 
Cd Rom
Cd RomCd Rom
Cd Rom
 
Input output accessing
Input output accessingInput output accessing
Input output accessing
 
Operating system and its types
Operating system and its types Operating system and its types
Operating system and its types
 
memory hierarchy
memory hierarchymemory hierarchy
memory hierarchy
 
Chapter 2 operating systems
Chapter 2 operating systemsChapter 2 operating systems
Chapter 2 operating systems
 
Functions Of Operating System
Functions Of Operating SystemFunctions Of Operating System
Functions Of Operating System
 
Computer network ppt communication
Computer network ppt communicationComputer network ppt communication
Computer network ppt communication
 
Microcontroller
MicrocontrollerMicrocontroller
Microcontroller
 

Semelhante a Input/Output Module Functions and Techniques

Computer architecture input output organization
Computer architecture input output organizationComputer architecture input output organization
Computer architecture input output organizationMazin Alwaaly
 
Computer function-and-interconnection 3
Computer function-and-interconnection 3Computer function-and-interconnection 3
Computer function-and-interconnection 3Mujaheed Sulantingan
 
Computer function-and-interconnection 3
Computer function-and-interconnection 3Computer function-and-interconnection 3
Computer function-and-interconnection 3Mujaheed Sulantingan
 
Chapter 5 IO Unit.pptx we are electrical
Chapter 5 IO Unit.pptx we are electricalChapter 5 IO Unit.pptx we are electrical
Chapter 5 IO Unit.pptx we are electricalbayisabayecha51
 
chapter7-input-output-COMPUTER organization.pdf
chapter7-input-output-COMPUTER organization.pdfchapter7-input-output-COMPUTER organization.pdf
chapter7-input-output-COMPUTER organization.pdfSangitaBose2
 
Input Output - Computer Architecture
Input Output - Computer ArchitectureInput Output - Computer Architecture
Input Output - Computer ArchitectureMaruf Abdullah (Rion)
 
Hardware I/O organization
Hardware  I/O organization Hardware  I/O organization
Hardware I/O organization faria_khan
 
discuss the drawbacks of programmed and interrupt driven io and des.pdf
discuss the drawbacks of programmed and interrupt driven io and des.pdfdiscuss the drawbacks of programmed and interrupt driven io and des.pdf
discuss the drawbacks of programmed and interrupt driven io and des.pdfinfo998421
 
Input_Output_Organization.pptx
Input_Output_Organization.pptxInput_Output_Organization.pptx
Input_Output_Organization.pptxSherinRappai
 
input output ports
input output portsinput output ports
input output portsaslamslides
 
Io techniques & its types
Io techniques & its typesIo techniques & its types
Io techniques & its typesNehal Naik
 

Semelhante a Input/Output Module Functions and Techniques (20)

Computer architecture input output organization
Computer architecture input output organizationComputer architecture input output organization
Computer architecture input output organization
 
IO_ORGANIZATION.pdf
IO_ORGANIZATION.pdfIO_ORGANIZATION.pdf
IO_ORGANIZATION.pdf
 
Input output module
Input output moduleInput output module
Input output module
 
Computer function-and-interconnection 3
Computer function-and-interconnection 3Computer function-and-interconnection 3
Computer function-and-interconnection 3
 
Computer function-and-interconnection 3
Computer function-and-interconnection 3Computer function-and-interconnection 3
Computer function-and-interconnection 3
 
Chapter 6
Chapter 6Chapter 6
Chapter 6
 
comporgppt.pptx
comporgppt.pptxcomporgppt.pptx
comporgppt.pptx
 
Chapter 5 IO Unit.pptx we are electrical
Chapter 5 IO Unit.pptx we are electricalChapter 5 IO Unit.pptx we are electrical
Chapter 5 IO Unit.pptx we are electrical
 
chapter7-input-output-COMPUTER organization.pdf
chapter7-input-output-COMPUTER organization.pdfchapter7-input-output-COMPUTER organization.pdf
chapter7-input-output-COMPUTER organization.pdf
 
Lecture 9.pptx
Lecture 9.pptxLecture 9.pptx
Lecture 9.pptx
 
Input Output - Computer Architecture
Input Output - Computer ArchitectureInput Output - Computer Architecture
Input Output - Computer Architecture
 
Counit2 2
Counit2 2Counit2 2
Counit2 2
 
Hardware I/O organization
Hardware  I/O organization Hardware  I/O organization
Hardware I/O organization
 
discuss the drawbacks of programmed and interrupt driven io and des.pdf
discuss the drawbacks of programmed and interrupt driven io and des.pdfdiscuss the drawbacks of programmed and interrupt driven io and des.pdf
discuss the drawbacks of programmed and interrupt driven io and des.pdf
 
Input_Output_Organization.pptx
Input_Output_Organization.pptxInput_Output_Organization.pptx
Input_Output_Organization.pptx
 
Unit 6
Unit 6Unit 6
Unit 6
 
input output ports
input output portsinput output ports
input output ports
 
Io techniques & its types
Io techniques & its typesIo techniques & its types
Io techniques & its types
 
07 Input Output
07  Input  Output07  Input  Output
07 Input Output
 
03 Buses
03 Buses03 Buses
03 Buses
 

Mais de Er. Nawaraj Bhandari

Data mining approaches and methods
Data mining approaches and methodsData mining approaches and methods
Data mining approaches and methodsEr. Nawaraj Bhandari
 
Research trends in data warehousing and data mining
Research trends in data warehousing and data miningResearch trends in data warehousing and data mining
Research trends in data warehousing and data miningEr. Nawaraj Bhandari
 
Mining Association Rules in Large Database
Mining Association Rules in Large DatabaseMining Association Rules in Large Database
Mining Association Rules in Large DatabaseEr. Nawaraj Bhandari
 
Introduction to data mining and data warehousing
Introduction to data mining and data warehousingIntroduction to data mining and data warehousing
Introduction to data mining and data warehousingEr. Nawaraj Bhandari
 
Classification and prediction in data mining
Classification and prediction in data miningClassification and prediction in data mining
Classification and prediction in data miningEr. Nawaraj Bhandari
 
Chapter 3: Simplification of Boolean Function
Chapter 3: Simplification of Boolean FunctionChapter 3: Simplification of Boolean Function
Chapter 3: Simplification of Boolean FunctionEr. Nawaraj Bhandari
 
Chapter 5: Cominational Logic with MSI and LSI
Chapter 5: Cominational Logic with MSI and LSIChapter 5: Cominational Logic with MSI and LSI
Chapter 5: Cominational Logic with MSI and LSIEr. Nawaraj Bhandari
 
Chapter 2: Boolean Algebra and Logic Gates
Chapter 2: Boolean Algebra and Logic GatesChapter 2: Boolean Algebra and Logic Gates
Chapter 2: Boolean Algebra and Logic GatesEr. Nawaraj Bhandari
 
Introduction to Electronic Commerce
Introduction to Electronic CommerceIntroduction to Electronic Commerce
Introduction to Electronic CommerceEr. Nawaraj Bhandari
 
Using macros in microsoft excel part 2
Using macros in microsoft excel   part 2Using macros in microsoft excel   part 2
Using macros in microsoft excel part 2Er. Nawaraj Bhandari
 
Using macros in microsoft excel part 1
Using macros in microsoft excel   part 1Using macros in microsoft excel   part 1
Using macros in microsoft excel part 1Er. Nawaraj Bhandari
 

Mais de Er. Nawaraj Bhandari (20)

Data mining approaches and methods
Data mining approaches and methodsData mining approaches and methods
Data mining approaches and methods
 
Research trends in data warehousing and data mining
Research trends in data warehousing and data miningResearch trends in data warehousing and data mining
Research trends in data warehousing and data mining
 
Mining Association Rules in Large Database
Mining Association Rules in Large DatabaseMining Association Rules in Large Database
Mining Association Rules in Large Database
 
Introduction to data mining and data warehousing
Introduction to data mining and data warehousingIntroduction to data mining and data warehousing
Introduction to data mining and data warehousing
 
Data warehouse testing
Data warehouse testingData warehouse testing
Data warehouse testing
 
Data warehouse physical design
Data warehouse physical designData warehouse physical design
Data warehouse physical design
 
Data warehouse logical design
Data warehouse logical designData warehouse logical design
Data warehouse logical design
 
Classification and prediction in data mining
Classification and prediction in data miningClassification and prediction in data mining
Classification and prediction in data mining
 
Chapter 3: Simplification of Boolean Function
Chapter 3: Simplification of Boolean FunctionChapter 3: Simplification of Boolean Function
Chapter 3: Simplification of Boolean Function
 
Chapter 6: Sequential Logic
Chapter 6: Sequential LogicChapter 6: Sequential Logic
Chapter 6: Sequential Logic
 
Chapter 5: Cominational Logic with MSI and LSI
Chapter 5: Cominational Logic with MSI and LSIChapter 5: Cominational Logic with MSI and LSI
Chapter 5: Cominational Logic with MSI and LSI
 
Chapter 4: Combinational Logic
Chapter 4: Combinational LogicChapter 4: Combinational Logic
Chapter 4: Combinational Logic
 
Chapter 2: Boolean Algebra and Logic Gates
Chapter 2: Boolean Algebra and Logic GatesChapter 2: Boolean Algebra and Logic Gates
Chapter 2: Boolean Algebra and Logic Gates
 
Chapter 1: Binary System
 Chapter 1: Binary System Chapter 1: Binary System
Chapter 1: Binary System
 
Introduction to Electronic Commerce
Introduction to Electronic CommerceIntroduction to Electronic Commerce
Introduction to Electronic Commerce
 
Evaluating software development
Evaluating software developmentEvaluating software development
Evaluating software development
 
Using macros in microsoft excel part 2
Using macros in microsoft excel   part 2Using macros in microsoft excel   part 2
Using macros in microsoft excel part 2
 
Using macros in microsoft excel part 1
Using macros in microsoft excel   part 1Using macros in microsoft excel   part 1
Using macros in microsoft excel part 1
 
Using macros in microsoft access
Using macros in microsoft accessUsing macros in microsoft access
Using macros in microsoft access
 
Testing software development
Testing software developmentTesting software development
Testing software development
 

Último

High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsRussian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxfenichawla
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdfankushspencer015
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 

Último (20)

High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsRussian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 

Input/Output Module Functions and Techniques

  • 1. Er. Nawaraj Bhandari Topic 4 Input/ Output Computer Architecture
  • 2. Input/Output Problems  Wide variety of peripherals  Delivering different amounts of data  At different speeds  In different formats  There are a wide variety of peripherals with various methods of operation. It would be impractical to incorporate the necessary logic within the processor to control a range of devices  The data transfer rate of peripherals is often much slower than that of the memory or processor. Thus, it is impractical to use the high-speed system bus to communicate directly with a peripheral
  • 3. Input/Output Problems  the data transfer rate of some peripherals is faster than that of the memory or processor. Again, the mismatch would lead to inefficiencies if not managed properly  Peripherals often use different data formats and word lengths than the computer to which they are attached
  • 4. Input/Output Module  Interface to CPU and Memory  Interface to one or more peripherals  Interface to the processor and memory via the system bus or central switch  Interface to one or more peripheral devices by tailored data links
  • 5. Generic Model of I/O Module
  • 6. External Devices  Human readable (human interface)  Monitor, printer, keyboard, mouse  Machine readable  Disk, tape, sensors  Communication  Modem  Network Interface Card (NIC)
  • 8. External Device  Control signals determine the function that the device will perform, such as send data to the I/O module (INPUT or READ), accept data from the I/O module (OUTPUT or WRITE), report status, or perform some control function particular to the device (e.g., position a disk head). • Status signals indicate the state of the device. Examples are READY/NOT-READY to show whether the device is ready for data transfer
  • 9. External Device • Control logic associated with the device controls the device’s operation in response to direction from the I/O module. • The transducer converts data from electrical to other forms of energy during output and from other forms to electrical during input. Typically, a buffer is associated with the transducer to temporarily hold data being transferred between the I/O module and the external environment; a buffer size of 8 to 16 bits is common.
  • 10. I/O Module Function The major functions or requirements for an I/O module fall into the following categories:  Control & Timing  CPU (Processor) Communication  Device Communication  Data Buffering  Error Detection (e.g., extra parity bit)
  • 11. I/O Module Function  During any period of time, the processor may communicate with one or more external devices in unpredictable patterns, depending on the program’s need for I/O.  The internal resources, such as main memory and the system bus, must be shared among a number of activities, including data I/O.  Thus, the I/O function includes a control and timing requirement, to coordinate the flow of traffic between internal resources and external devices.  For example, the control of the transfer of data from an external device to the processor might involve the following sequence of steps:
  • 12. I/O Module Function  The processor interrogates the I/O module to check the status of the attached device.  The I/O module returns the device status.  If the device is operational and ready to transmit, the processor requests the  transfer of data, by means of a command to the I/O module.  The I/O module obtains a unit of data (e.g., 8 or 16 bits) from the external device.  The data are transferred from the I/O module to the processor.
  • 13. Processor/device Communications  Command decoding: The I/O module accepts commands from the processor, typically sent as signals on the control bus. For example, an I/O module for a disk drive might accept the following commands: READ SECTOR, WRITE SECTOR, SEEK track number, and SCAN record ID  Data: Data are exchanged between the processor and the I/O module over the data bus.
  • 14. Processor/device Communications  Status reporting: Because peripherals are so slow, it is important to know the status of the I/O module. For example, if an I/O module is asked to send data to the processor (read), it may not be ready to do so because it is still working on the previous I/O command. This fact can be reported with a status signal Common status signals are BUSY and READY. There may also be signals to report various error conditions  Address recognition: Just as each word of memory has an address, so does each I/O device. Thus, an I/O module must recognize one unique address for each peripheral it controls.
  • 15. Data Buffering:  An essential task of an I/O module is data buffering.  Whereas the transfer rate into and out of main memory or the processor is quite high, the rate is orders of magnitude lower for many peripheral devices and covers a wide range.  Data coming from main memory are sent to an I/O module in a rapid burst. The data are buffered in the I/O module and then sent to the peripheral device at its data rate.  In the opposite direction, data are buffered so as not to tie up the memory in a slow transfer operation. Thus, the I/O module must be able to operate at both device and memory speeds.  Similarly, if the I/O device operates at a rate higher than the memory access rate, then the I/O module performs the needed buffering operation.
  • 16. Need for Data Buffering: Typical I/O Data Rates
  • 17. Error detection: • Finally, an I/O module is often responsible for error detection and for subsequently reporting errors to the processor. • One class of errors includes mechanical and electrical malfunctions reported by the device (e.g., paper jam, bad disk track). • Another class consists of unintentional changes to the bit pattern as it is transmitted from device to I/O module. • Some form of error-detecting code is often used to detect transmission errors
  • 19. I/O Module Diagram The module connects to the rest of the computer through a set of signal lines (e.g., system bus lines). Data transferred to and from the module are buffered in one or more data registers. There may also be one or more status registers that provide current status information. A status register may also function as a control register, to accept detailed control information from the processor. The logic within the module interacts with the processor via a set of control lines. The processor uses the control lines to issue commands to the I/O module. Some of the control lines may be used by the I/O module (e.g., for arbitration and status signals). The module must also be able to recognize and generate addresses associated with the devices it controls. Each I/O module has a unique address or, if it controls more than one external device, a unique set of addresses.
  • 20. 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
  • 21. Input Output Techniques  Programmed  Interrupt driven  Direct Memory Access (DMA)
  • 23. 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
  • 25. 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
  • 26. 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
  • 27. 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)
  • 28. 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
  • 30. Interrupt Driven I/O  Overcomes CPU waiting  No repeated CPU checking of device  I/O module interrupts when ready
  • 32. Interrupt Driven I/O Basic Operation  CPU issues read command  I/O module gets data from peripheral whilst CPU does other work  I/O module interrupts CPU  CPU requests data  I/O module transfers data
  • 33. 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
  • 34. 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
  • 35. DMA Function  Additional Module (hardware) on bus  DMA controller takes over from CPU for I/O
  • 37. DMA Operation  CPU tells DMA controller:-  Read/Write  Device address  Starting address of memory block for data  Amount of data to be transferred  CPU carries on with other work  DMA controller deals with transfer  DMA controller sends interrupt when finished
  • 38. DMA Configurations (1)  Single Bus, Detached DMA controller  Each transfer uses bus twice  I/O to DMA then DMA to memory  CPU is suspended twice
  • 39. I/O Channels  The I/O module is enhanced to become a processor in its own right, with a specialized instruction set tailored for I/O.  The CPU directs the I/O processor to execute an I/O program in memory.  The I/O processor fetches and executes these instructions without CPU intervention.  This allows the CPU to specify a sequence of I/O activities and to be interrupted only when the entire sequence has been performed.  The I/O module has a local memory of its own and is, in fact, a computer in its own right.  With this architecture, a large set of I/O devices can be controlled, with minimal CPU involvement.
  • 40. I/O Channels  I/O devices getting more sophisticated  e.g. 3D graphics cards  CPU instructs I/O controller to do transfer  I/O controller does entire transfer  Improves speed  Takes load off CPU  Dedicated processor is faster
  • 42. Interfacing  Connecting devices together  Bit of wire?  Dedicated processor/memory/buses?  E.g. FireWire, InfiniBand
  • 43. IEEE 1394 FireWire  High performance serial bus  Fast  Low cost  Easy to implement  Also being used in digital cameras, VCRs and TV
  • 44. FireWire Configuration  Daisy chain  Up to 63 devices on single port  Really 64 of which one is the interface itself  Up to 1022 buses can be connected with bridges  Automatic configuration  No bus terminators  May be tree structure
  • 46. InfiniBand  I/O specification aimed at high end servers  Merger of Future I/O (Cisco, HP, Compaq, IBM) and Next Generation I/O (Intel)  Version 1 released early 2001  Architecture and spec. for data flow between processor and intelligent I/O devices  Intended to replace PCI in servers  Increased capacity, expandability, flexibility
  • 47. InfiniBand Architecture  Remote storage, networking and connection between servers  Attach servers, remote storage, network devices to central fabric of switches and links  Greater server density  Scalable data centre  Independent nodes added as required  I/O distance from server up to  17m using copper  300m multimode fibre optic  10km single mode fibre  Up to 30Gbps