The Input and Output Techniques
The Input and Output Techniques
In this unit, we will analyze which devices allow us to free or offload the processor.
the different tasks that need to be done in this process and we will distinguish the basic techniques
of the following I/O:
Scheduled E/S.
I/O by interrupts.
I/O Channels.
SCHEDULED I/O: To perform the I/O operation between the processor and the I/O module, the
processor executes a program that controls all I/O operations (programming,
data transfer and completion.
I/O WITH INTERRUPTIONS: In this section we will see I/O through interruptions. This technique of
E/S aims to prevent the processor from having to be idle or doing unproductive work.
while waiting for the peripheral to be ready to perform a new I/O operation and
I can take advantage of this time to run other programs. Using the I/O technique of
interruptions are downloaded to the I/O module responsible for carrying out the
synchronization between the peripheral and the processor. To use this I/O technique in a
computer, it is necessary to consider both software and hardware aspects.
E/S WITH DIRECT MEMORY ACCESS: In this section, we will describe a technique much more
efficient for transferring data blocks, direct memory access DMA. In this technique the
processor programs the transfer of a block of data between the peripheral and memory
charging a new element connected to the system bus to carry out the entire transfer. A
once finished, this new element notifies the processor. In this way, the processor can
dedicate all the time that the block transfer lasts to other tasks. This new element
who manages all the data transfer between the peripheral and the main memory
we call it a DMA module or controller, or in more advanced versions, a channel or
I/O processor. Using the DMA I/O technique, the processor is relieved of the
responsibility for carrying out the synchronization and data exchange between the peripheral and the
memory. On the other hand, a new problem appears on the computer, as there are two
devices, the processor and the DMA controller that must access in a way
concurrent to the memory and a mechanism needs to be established to resolve this conflict.
I/O CHANNELS: I/O channels are an enhancement of DMA controllers. They can
execute instructions that read directly from memory. This allows for better management
autonomy the I/O operations and in this way multiple operations can be controlled
I/O with devices with minimal processor intervention.
These channels can still be made more complex by adding their own local memory that
turns them into specific I/O processors.
When the I/O operation is finished, the I/O channel informs the processor that it is complete.
the transfer and possible errors through memory. It can also indicate the end of the
transfer by interruptions.
DMA IMPLEMENTATION: two new signals are added to communicate between the CPU and MOD
about the use of buses. The BUSREQ and BUSACK signals mean request and grant
respectively. Once granted, the CPU cannot use them and must stop, which generates
a waste of time.
INTERRUPT-DRIVEN IMPLEMENTATION: with a single line whose case determines the address
From the jump, the survey system can be used (question by programming to all and each)
one of the peripherals has been the product of said interruption) or vectorized (each peripheral
when it generates an interrupt and delivers the vector address through the corresponding bus
interrupted in such a way that the CPU receives the interrupt notice or immediately picks up from
but the interrupted vector.
A single set of input and output instructions (No difference between memory and I/O).
2tpos:
BURST MODE: the bus is not released until the data transfer is complete.
It occurs when the CPU has cache memory (so it can continue working without the need for the bus).
CYCLE ROBOT MODE: the bus is released after transferring each word; it requests
constantly on. It is used when the CPU does not have cache. It takes longer, but the CPU can
continue processing instructions.
Scheduled Entry/Exit
Network adapter
The CPU:
There are two ways in which the CPU sends instructions to the devices.
Memory mapping
Isolated
The devices access the memory (through the DMA controller) without having to go through the
processor.
Devices with multiple speeds can communicate without needing to subject the CPU to a
heavy load of instructions
In this way, the CPU can work on other activities and at greater speed.
The DMA sets to regulate so that it does not occupy the bus completely.
Memory mapping
Scheduled Entry/Exit
Input/Output by interruptions
Input/Output Techniques
The CPU starts the information transfer and continues carrying out its prior process.
This allows the CPU to execute other instructions while the data is being passed.
receive.
Synchronous I/O: at the end of the transfer, control is returned to the process that requested it.
transfer. The 'wait' instruction (or a loop) is initiated, waiting for an I/O module to do
An interruption to the CPU. Only one I/O request is made at a time.
Asynchronous I/O: multiple I/O requests can be made through a table in the system
of operations where there is an entry for each peripheral (Device Status Table).
While I/O is being carried out, the CPU can process other information and manage other processes.
E/S.
Scheduled Entry/Exit
Device speeds
Devices of
ATA storage
The CPU has a set of special instructions to access I/O ports (in, out, outb,
outw, outl).