Architecture

DMA (Direct Memory Access)

A mechanism allowing peripherals to transfer data directly to/from memory without processor intervention.

Detailed Explanation

DMA offloads data movement from the CPU. The processor programs the DMA controller with source address, destination address, and transfer size. The DMA engine then autonomously performs the transfer, generating bus transactions and signaling completion via interrupt.

DMA is essential for high-bandwidth peripherals—a CPU reading bytes individually would waste cycles on each transfer. Scatter-gather DMA handles non-contiguous buffers using descriptor chains.