- I/O modules are the critical element of the computer system after CPU and memory. All computer systems must have efficient means to receive input and deliver output. Wide variety of peripherals in different amounts of data, at different speeds and in different formats, all are slower than CPU and RAM.
- Input-output module provides a method for transferring information between internal storage and external I/O devices.
- Peripherals connected to a computer need special communication links for interfacing them with the central processing unit.
- The requirements of the communication link are to resolve the differences that exist between the central computer and each peripheral.
The requirements are as follows:
- Peripherals are electromechanical and electromagnetic devices and their manner of operation is different from the operation of the CPU and memory, which are electronic devices. Therefore, a conversion of signal values may be required.
- The data transfer rate of peripherals is usually slower than the transfer rate of the CPU, and consequently, a synchronization mechanism may be needed.
- Data codes and formats in peripherals differ from the word format in the CPU and memory.
- The operating modes of peripherals are different from each other and each must be controlled so as not to disturb the operation of other peripherals connected to the CPU.
- A typical I/O module is shown in Figure 8:
- Device Communication - communicate with external devices
- Data Buffering - Temporarily hold data between being transferred between the I/O module and external devices.
- Processor communication -- this involves the following tasks: (a). exchange of data between processor and I/O module (b). command decoding - I/O module accepts commands sent from the processor. E.g., the I/O module for a disk drive may accept the following commands from the processor: READ SECTOR, WRITE SECTOR, SEEK track, etc. (c). status reporting – The device must be able to report its status to the processor, e.g., disk drive busy, ready etc. Status reporting may also involve reporting various errors. (d). Address recognition – Each I/O device has a unique address and the I/O module must recognize this address.
- Device communication – The I/O module must be able to perform device communication such as status reporting.
- Control & timing – The I/O module must be able to co-ordinate the flow of data between the internal resources (such as processor, memory) and external devices.
- Data buffering – This is necessary as there is a speed mismatch between speed of data transfer between processor and memory and external devices. Data coming from the main memory are sent to an I/O module in a rapid burst. The data is buffered in the I/O module and then sent to the peripheral device at its rate.
- Error detection – The I/O module must also be able to detect errors and report them to the processor. These errors may be mechanical errors (such as paper jam in a printer), or changes in the bit pattern of transmitted data. A common way of detecting such errors is by using parity bits.
Please log in to add an answer.