Direct_memory_access Direct_memory_access

Direct memory access - Definition and Overview

Related Words: Ciceronian, Spartan, Address, Administer, Advocate, Aim, Ascetic, Bald, Bare, Beam, Bend, Bluff

Direct memory access (DMA) allows certain hardware subsystems within a computer to access system memory for reading and/or writing independently of the main CPU. Many hardware systems use DMA including disk drive controllers, graphics cards, and sound cards.

DMA is an essential feature of all modern computers, as it allows devices of different speeds to communicate without subjecting the CPU to a massive interrupt load.

A DMA transfer essentially copies a block of memory from one device to another. While the CPU initiates the transfer, the transfer itself is performed by the DMA Controller. A typical example is moving a block of memory from external memory to faster, internal (on-chip) memory. Such an operation does not stall the processor and as a result it can be scheduled to perform other tasks. DMA transfers are essential to high performance embedded algorithms and skillful application outperforms cache.

"Scatter-gather" DMA allows the transfer of data to multiple memory areas in a single DMA transaction. It is equivalent to the chaining together of multiple simple DMA requests. Again, the motivation is to off-load multiple I/O interrupt and data copy tasks from the CPU.

DRQ stands for DMA request; DACK for DMA acknowledge.

See also

External links

  • mmap() and DMA (http://www.xml.com/ldd/chapter/book/ch13.html), from Linux Device Drivers, 2nd Edition, Alessandro Rubini & Jonathan Corbet


Copyright 2009 WordIQ.com - Privacy Policy  :: Terms of Use  :: Contact Us  :: About Us
This article is licensed under the GNU Free Documentation License. It uses material from the this Wikipedia article.