Input/Output (I/O) Organization of Computer System
1. Introduction:
The Input/Output (I/O) organization of a computer system defines how data is transferred between
the CPU, memory,
and peripheral devices (such as keyboards, monitors, printers, and storage devices). It manages the
interaction
between hardware and software for efficient data processing.
2. Components of I/O Organization:
A. Input Devices:
These devices allow users to enter data into the system.
Examples: Keyboard, Mouse, Scanner, Microphone.
B. Output Devices:
These devices display or output data from the computer.
Examples: Monitor, Printer, Speaker.
C. I/O Interface (Controller):
Acts as a bridge between the CPU and peripheral devices. It consists of:
- Control Register: Manages device operations.
- Data Register: Temporarily holds data for transfer.
- Status Register: Indicates device readiness.
D. System Bus:
Transfers data between CPU, memory, and I/O devices. It includes:
- Data Bus: Transfers actual data.
- Address Bus: Specifies memory or device addresses.
- Control Bus: Sends control signals (e.g., Read/Write).
3. Types of I/O Communication Techniques:
1. Programmed I/O:
- The CPU directly controls the I/O device.
- The CPU continuously checks (polls) the device until it is ready.
- Disadvantage: Wastes CPU time while waiting.
2. Interrupt-Driven I/O:
- The CPU sends a request and continues other tasks.
- The device sends an interrupt when ready.
- Advantage: CPU is free for other tasks.
3. Direct Memory Access (DMA):
- DMA controller transfers data directly between memory and I/O devices without CPU intervention.
- Advantage: Faster data transfer, reduces CPU workload.
- Used in: Hard drives, graphics cards, network adapters.
4. I/O Addressing Techniques:
A. Memory-Mapped I/O:
- I/O devices share the same address space as memory.
- CPU can use normal memory instructions for I/O.
- Example: Embedded systems.
B. Isolated I/O (Port-Mapped I/O):
- I/O devices have a separate address space from memory.
- Special IN and OUT instructions are used.
- Example: x86 architecture.
5. I/O Processor (IOP):
- A dedicated processor that manages I/O operations.
- Works independently from the CPU.
- Used in high-speed data processing.
6. Conclusion:
The I/O organization is crucial for efficient data transfer between the CPU and peripherals.
Techniques like
Interrupts and DMA improve performance by reducing CPU involvement, making systems faster and
more responsive.