Input-output techniques, Computer Engineering

Assignment Help:

After going through details of device interfaces next point to be discussed is how the interface can be used to support I/O from devices. Binary information received from an external device is generally stored in memory for later processing. Information transferred from central computer in an external device initiates in memory unit. Data transfer between central computer and I/O devices can be handled in some modes. 3 techniques are possible for I/O operation. These are:

  • Programmed input/output
  • Interrupt driven input/output
  • Direct memory access

Figure below gives an general idea of these 3 techniques:

1004_INPUT-OUTPUT TECHNIQUES.png

Figure: Overview of the three Input/ Output

In programmed I/O, I/O operations are fully controlled by processor. The processor executes a program which initiates, directs and terminate an I/O operation. It needs a little special I/O hardware however is quite time consuming for processor as processor has to wait for slower I/O operations to finish. 

With interrupt driven I/O when interface decides that device is ready for data transfer it produces an interrupt request to the computer. Upon detecting external interrupt signal processor stops the task it was processing and branches to a service program to process I/O transfer and then returns to task it was initially performing that result in waiting time by the processor being reduced.

With both interrupt-driven and programmed I/O processor is responsible for extracting data from main memory for output and storing data in main memory during input. What about having a substitute where I/O device may directly store data or retrieve data from memory? This alternative is called direct memory access (DMA). In this mode I/O interface and main memory exchange data directly without involvement of processor.

2405_INPUT-OUTPUT TECHNIQUES1.png

Figure: Three techniques of I/O


Related Discussions:- Input-output techniques

Why dynamic RAMs require refreshing, Explain briefly, why dynamic RAMs requ...

Explain briefly, why dynamic RAMs require refreshing? Ans: Due to the charge's natural tendency to distribute itself in a lower energy-state configuration that is, the charg

Hill climbing - artificial intelligence, Hill Climbing - Artificial Intelli...

Hill Climbing - Artificial Intelligence: As we've seen, in some problems, finding the search path from primary to goal state is the point of the exercise. In other problems, t

What are the digital certificates of hardware computations, What are the Di...

What are the Digital certificates of hardware computations Digital certificates are highly dependent on hardware computations, it is essential that mechanisms are evolved to i

Why should i use cgi, CGI is significant whenever you require to retain sta...

CGI is significant whenever you require to retain state information about a user, or run an application which communicates with the server. Things like guestbook's, Chat clients, d

How can we pass selection and parameter data to a report, How can we pass s...

How can we pass selection and parameter data to a report? There are three options for passing selection and parameter data to the report. Using SUBMIT...WITH Using a rep

Bank prevent an infinite loop, a) Write a program that figures out how long...

a) Write a program that figures out how long it will take to pay off a credit card by making payments of $10 every month. Take care to avoid infinite loops. (How would a bank preve

Explain the parallel data storage - application of flip flop, Explain the P...

Explain the Parallel Data Storage - application of flip flops? In digital systems, data are usually stored in groups of bits that represent numbers, codes, or other information

What is rational robot, Rational Robot is a whole set of components for aut...

Rational Robot is a whole set of components for automating the testing of Microsoft Windows client/server and Internet applications. The major component of Robot lets you start

Implementation using 8 to 1 multiplexer, Implement the following function u...

Implement the following function using 8 to 1 multiplexer Y(A, B, C, D) = ∑(0,1,2,5,9,11,13,15) Ans. We will obtain three variables B,C and D at selection lines and also A as i

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd