Figure 6:
Evolution of the I/O Function
|
- Processor directly controls a peripheral device. Example: CPU controls a flip-flop to implement a serial line
- Controller or I/O module is added
- Processor uses programmed I/O without interrupts
- Processor does not need to handle details of external devices
- Example: A Universal Asynchronous Receiver Transmitter
- CPU simply reads and writes bytes to I/O controller
- I/O controller responsible for managing the signalling
- Controller or I/O module with interrupts. Processor does not spend time waiting for an I/O operation to be performed
- Direct Memory Access
- Blocks of data are moved into memory without involving the processor
- Processor involved at beginning and end only
- I/O module has a separate processor. Example: SCSI controller, controller CPU executes SCSI program code out of main memory
- I/O processor
- I/O module has its own local memory, internal bus, etc.
- It is a computer in its own right.
- Example: Myrinet Multi-gigabit Network Controller
2004-05-02