2. DMA Definition
• DMA stands for Direct memory access and is a
method of transferring data from the computers
RAM to another part of the computer
without processing it using the CPU.
• Direct memory access (DMA) is a feature of
computer systems that allows certain hardware
subsystems to access main system memory.
• DMA normally occur between an I/O device and
memory.
12/11/2017 2
3. Functions of DMA
• DMA read transfers data from the memory to
the I/O device
• A DMA write transfers data from an I/O
device to memory
• Memory & I/O are controlled simultaneously.
• DMA can save processing time and it is a more
efficient way to move data from the
computer's memory to other devices.
12/11/2017 3
4. WORKING OF DMA
• In order to transfer data ,each type of port on a
computer has a set of DMA channels that can be
assigned to each connected device.
• For example, a PCI controller and a hard drive
controller each have their own set of DMA channels.
• PCI stands for Peripheral Component Interconnect
and is an industry standard bus for attaching
peripheral devices to a computer
12/11/2017 4
5. 12/11/2017 5
The HOLD pin is an input used to request a DMA action.
The HLDA pin is an output that acknowledges the DMA action •
6. 1. DMA controller send HOLD signal to microprocessor
2. microprocessor Send HLDA to DMA Controller& DMA
Takes charge of system bus.
3. DMA give DMA ACK(back) signal to I/O devices
4.now, DMA controller places memory address on address
bus and data bytes from memory transfer to I/O .
5.DMA Controller updates memory address register and
word count register.
6. when internal count = 0 then DMA Controller sets
HOLD=0
7. now processor regain the charge od the system bus
which continues the normal operation.
7. • The DMA Controller has several options available for
the transfer of data
1. Cycle steal.
2. Burst transfer Hidden.
Cycle Stealing
In this method, system allows DMA
controller to use system bus to transfer one word, after
which it should return back control of bus to CPU.
This method reduces maximum I/O transfer rates.
It also reduces interference of DMA controller in CPU
memory access
7
8. Burst transfer
• The DMA controller keeps control of the bus until all
the data buffered by the requesting device has been
transferred to memory (or when the output device
buffer is full, if writing to a peripheral).
8
9. ADVANTAGES OF DMA
• DMA enables more efficient use of interrupts.
• High transfer rates.
• Increases data throughput
• Potentially reduces hardware costs by eliminating the
need for peripheral-specific FIFO buffers.
• DMA are designed for low power consumption.
• DMA supports faster CPUs than those devices
without DMA support.
• DMA-capable device can communicate directly with
memory.
9
10. DISADVANTAGES OF DMA
• DMA hardware is complicated.
• Memory conflict between CPU and DMA.
• DMA transfer require a DMA controller to
carry out operation hence cost of system
increase.
12/11/2017 10