50% found this document useful (4 votes)
4K views15 pages

Direct Memory Access (DMA)

This document discusses Direct Memory Access (DMA) and Input-Output Processors (IOPs). It contains the following key points: 1) DMA allows data transfers between memory and external devices to occur independently of the CPU, improving transfer speeds. A DMA controller includes registers to store transfer addresses and counts, and facilitates communication between memory, I/O devices, and the CPU. 2) An IOP directly communicates with I/O devices and has its own instructions to facilitate I/O transfers. It handles I/O processing details independently of the CPU using DMA. 3) The CPU and IOP communicate through status words in memory. The CPU sets up transfers by loading

Uploaded by

Prasanna Patnaik
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
50% found this document useful (4 votes)
4K views15 pages

Direct Memory Access (DMA)

This document discusses Direct Memory Access (DMA) and Input-Output Processors (IOPs). It contains the following key points: 1) DMA allows data transfers between memory and external devices to occur independently of the CPU, improving transfer speeds. A DMA controller includes registers to store transfer addresses and counts, and facilitates communication between memory, I/O devices, and the CPU. 2) An IOP directly communicates with I/O devices and has its own instructions to facilitate I/O transfers. It handles I/O processing details independently of the CPU using DMA. 3) The CPU and IOP communicate through status words in memory. The CPU sets up transfers by loading

Uploaded by

Prasanna Patnaik
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

A Presentation On

Direct Memory Access (DMA)


Department of Computer Engineering, M.S.P.V.L. Polytechnic College,

Introduction
The transfer of data between the memory and an external device without involving the micro processor improves the speed of transfer. This transfer technique is called DMA .

www.ustudy.in

DMA Controller
Address bus Data bus Data bus buffers Address bus buffers

Internal bus

DMA select Register select Read Write Bus request Bus grant Interrupt

CS RS RD WR BR BG Interrupt Control logic

Address register

Word count register

Control register

DMA request DMA Acknowledge to I/O device

www.ustudy.in

DMA Controller
DMA controller is used to transfer the data between the memory and i/o device. The DMA controller needs the usual circuits to communicate with the CPU and i/o device. In addition to this, it needs an address register and address bus buffer. The address register contains an address of the desired location in memory. The word count register holds the number of words to be transferred. The control register specifies the mode of transfer. The DMA communicates with the i/o devices through the DMA www.ustudy.in

Cont..,
The RD (Read) and WR (write) signals are bidirectional. When the BG (Bus Grant) signal are bidirectional.

When the BG (Bus Grant) signal is 0, the CPU can communicate with the DMA registers through the data bus. When BG is 1, the www.ustudy.in CPU has relinquished the

DMA Transfer (
Interrupt BG BR RD WR Address Data CPU

I/O to Memory

Random access memory (RAM)

RD Read control

WR

Address

Data

Write control Data bus Address bus

Address select

RD DS RS BR BG Interrupt

WR

Address

Data DMA acknowledge I/O Peripheral device DMA request

Direct memory access (DAM) controller

www.ustudy.in

Process of DMA Transfer


To initiate a DMA transfer, the CPU loads the address of the first memory location of the memory block (to be read or written from) into the DMA address register. It does his via an I/O output instruction, such as the OTPT instruction for the relatively simple CPU. It then writes the no. of bytes to be transferred into the DMA count register in the sane manner. Finally, it writes one or more commands to the
www.ustudy.in

Cont..,
These commands may specify transfer options such as the DMA transfer mode, but should always specify the direction of the transfer, either from I/O to memory or from memory to I/O. The last command causes the DMA controller to initiate the transfer. The controller then sets BR to 1 and, once BG becomes 1 , seizes control of the system buses.
www.ustudy.in

Input-Output Processor (IOP)

Central Processing unit (CPU)


Memory bus

Peripheral devices PD PD PD PD

Memory unit

Input-output processor (IOP)

I/O bus

www.ustudy.in

Introduction
IOP : Communicate directly with all I/O devices Fetch and execute its own instruction
IOP instructions are specifically designed to facilitate I/O transfer DMAC must be set up entirely by the CPU

Designed to handle the details of I/O processing


www.ustudy.in

Cont..,
Command Instruction that are read form memory by an IOP
Distinguish from instructions that are read by the CPU Commands are prepared by experienced
www.ustudy.in

CPU - IOP Communication


CPU operations IOP operations Send instruction to test IOP path Transfer status word to memory location If status OK. , send start I/O instruction to IOP

Access memory for IOP program

Message Center

CPU continues with another program

Conduct I/O transfer using DMA ; prepare status report

CPU Program
Request IOP status

IOP Program

I/O transfer completed interrupt CPU

Transfer status word to memory location Check status word for correct transfer

Continue

www.ustudy.in

CPU - IOP Communication


The communication between CPU and IOP may take different forms depending on the particular computer considered. The CPU sends a test I/O instruction to IOP to test the IOP path. The responds by inserting a status word in memory location. The CPU refers to the status word in memory. If everything is in order, the CPU sends the start I/O instruction to start the I/O transfer. The IOP accesses memory for IOP program.
www.ustudy.in

Cont..,
When the IOP terminates the execution of its program, it sends an interrupt request to the CPU. The CPU then issues a read I/O instruction to read the status from the IOP. The IOP transfers the status word to memory location. The status word indicates whether the transfer has been completed satisfactorily or if any error
www.ustudy.in has occurred during the transfer.

The End

Thank U

www.ustudy.in

You might also like