You are on page 1of 7

DMA

Direct Memory Access


INTRODUCTION
 DMA is a method of transferring data from the
computer’s RAM to another part of the computer
without processing it using the CPU.
 While most data that is input or output from
your computer is processed by the CPU, some
data does not require processing, or can be
processed by another device.
 DMA can save processing time and is a more
efficient way to move data from the computer’s
memory to other devices.
NEED OF DMA
 A sound card may need to access data stored in
the computer’s RAM, but since it can process the
data itself, it may use DMA to bypass the CPU.
 Video cards that support DMA can also access
the system memory and process graphics without
needing the CPU.
WITHOUT DMA VS WITH DMA
 Without DMA, when the CPU is using
programmed input/output, it is typically fully
occupied for the entire duration of the read or
write operation, and is thus unavailable to
perform other work.
 With DMA the CPU initiates the transfer, does
other operation while the transfer is in progress,
and receives an interrupt from the DMA
controller when the operation is done.
TERMIINOLOGY
 DMA Channel:- System pathway used by a
device to transfer information directly to and
from memory. There are usually 8 in a computer
system.
 DMA Controller:- Dedicated hardware used for
controlling the DMA operation.
 Single cycle mode:- DMA data transfer is done
one byte at a time.
 Burst mode:- DMA transfer is finished when all
data has been removed.
ADVANTAGE
 DMA allows a peripheral device to read
from/write to memory without going through the
CPU.
 DMA allows for faster processing since the
processor can be working on something else while
the peripheral can be populating memory.
DISADVANTAGE
 DMA transfer requires a DMA controller to carry
out the operation, hence cost of the system
increases.
 Cache Coherence problems. Cache coherence
refers to the consistency of data stored in local
caches of a shared resource.

You might also like