Data Transfer Mechanisms

I/O Data Transfer Mechanisms Summary
Mechanism Controller / Nature Latency CPU Eff. Transfer Rate / Modes Debugging
Polling CPU
SW-driven active check.
Very Fast
1–3 cycles.
Very Low
100% blocked.
Low
CPU fetches per byte.
Easy
Deterministic.
Interrupt CPU
HW trigger, SW exec.
Slower
Context switch.
High
Free until signaled.
Moderate
CPU still moves data.
Difficult
Asynchronous.
DMA DMAC
Pure HW controller.
Moderate
Bus arbitration.
Very High
CPU fully freed.
Maximum
Burst, Steal, Transparent.
Moderate
Silent RAM alters.

Data transfer can be initiated by the CPU or the DMAC.

Polling (Programmed I/O)

CPU polls a certain I/O port continuously (using software) for data or readiness of the port to perform a data transaction.
CPU uses 100% of its resource to do the polling. It cannot entertain any other requests.

Interrupt Triggered

image

Direct Memory Access (DMA)

DMAC is a Data Bus Controller module that performs data transfer independent of CPU.

image

3 modes of transfer: