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

Make an instruction execution feasible, Q. Make an instruction execution fe...

Q. Make an instruction execution feasible? What are the functions that a control unit performs to make an instruction execution feasible? Instruction execution is achieved by e

Application of Theory of computation in DBMS, Sir/Mam, I want to know the a...

Sir/Mam, I want to know the application of Theory of computation in DBMS

Explain the working of static ram - computer memory, Explain the working of...

Explain the working of Static RAM - Computer Memory? SRAM devices tender extremely fast access times (approximately four times faster than DRAM) but are much more expensive to

Efficiency of vector processing over scalar processing, Efficiency of Vecto...

Efficiency of Vector Processing over Scalar Processing: We know that, a sequential computer processes scalar operands one at a time. Thus, if we have to process a vector of len

Illustrate programming based on message passing, Q. Illustrate Programming ...

Q. Illustrate Programming Based on Message Passing? Since we know programming model based on message passing employs high level programming languages such as C/C++ along with a

Tag do you use to add a hyperlink column to the DataGrid, What tag do you u...

What tag do you use to add a hyperlink column to the DataGrid?   Anchor tag is used to add a hyperlink column to the data grid

Internal structure of agents - artificial intelligence, Internal Structure ...

Internal Structure of Agents: We have looked at agents in terms of their external influences and behaviors: they put in from the surroundings and perform rational actions to a

Implementation of a simple arithmetic, Q. Implementation of a Simple Arithm...

Q. Implementation of a Simple Arithmetic? So, by now we have concerned how logic and arithmetic micro-operations can be applied individually. If we combine these 2 circuits alo

Two parallel fetch-implement, Take a CPU that shows two parallel fetch-impl...

Take a CPU that shows two parallel fetch-implement pipelines for superscalar processing. Determine the performance improvement over scalar pipeline processing and no-pipeline proce

What is expansion swap, What is Expansion swap? At the time when any pr...

What is Expansion swap? At the time when any process needs more memory than it is currently allocated, the Kernel performs Expansion swap. To do this Kernel reserves enough spa

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