Dma-how dma works-microprocessor, Assembly Language

Assignment Help:

DMA

  • DMA stands for Direct Memory Access
    • It is uses same Address/Data lines on ISA bus
    • It controls the ISA bus instead of the processor ("bus master")
    • Floppy Drive (DRQ2)
    • Hard Drive (varies)
    • Sound Card (varies)

 

  • DMA vs. Programmed I/O
    • It need less processor load
    • It can continually transfer the same block (loop indefinitely)
    • The devices which are demand-based can be serviced more efficiently

     

  • DMA characteristics:
    • It is 16-bit or 8-bit transfers

 

HOW DMA WORKS to transfer data from memory to a peripheral:

1. The peripheral Device requests for DMA service by pulling DREQ line high

2. The DMA controller requests CPU go on hold by pulling CPU's HRQ line high

3. The CPU finished current bus cycle, then acknowledges with HLDA the CPU relinquishes ALL bus control now (3-state)

4. The DMA controller activates DACK line to acknowledge the DMA to the peripheral

5. The DMA start transferring data to the peripheral

 


Related Discussions:- Dma-how dma works-microprocessor

Program to move contents in memory-machine level programs, Example : Write...

Example : Write a program to move the contents of the memory location 0500H to BX and also to register CX. Add immediate byte 05H to the data residing in memory location, whose ad

Intel 8259 interrupt controller-microprocessor, Intel 8259 interrupt contro...

Intel 8259 interrupt controller :  The 8088 processor has only two interrupt control inputs, and interrupt request (INTR) and non mask able interrupt (NMI). NMI are interrupts t

Bitwise logical and shift operations, Part A: Bitwise Logical and Shift Op...

Part A: Bitwise Logical and Shift Operations Create a SPARC assembly language program that extracts a bit-field from the contents of register %l0. The position of the rightmos

8086 assembly language program, move a byte string ,16 bytes long from the ...

move a byte string ,16 bytes long from the offset 0200H to 0300H in the segment 7000H

Efficient assembly language program, (1) Write a program that will: (a) dis...

(1) Write a program that will: (a) display "Enter Your Name:" (b) convert the entered name to Capital letters (if small), If any other character is entered, the program wil

Develop an assembly language program, • To develop an assembly language pro...

• To develop an assembly language program to control a "simulated" intelligent domestic lighting system with the intention of deterring burglary. • To produce a schematic circuit d

Hand shaking-microprocessor, Hand shaking : Handshaking, or 2-way hand...

Hand shaking : Handshaking, or 2-way handshaking, is 1 type of strobe operation. It typically involves 2 handshaking lines: an output line to denote when the board is ready an

Shr-sar-logical instruction-microprocessor, SHR : Shift Logical Right: Thi...

SHR : Shift Logical Right: This instruction performs bit-wise right shifts on the operand word or byte that might be reside in  a memory location or a register, by the specified c

Program to accept the input from user, Write an assembly language program t...

Write an assembly language program that will: accept keyboard input of a positive integer value N; compute the sum S= 1+ 2 + 3 + ... + N; print (output) the computed su

Movsw/movsb-string manipulation instruction-microprocessor, MOVSW/MOVSB : ...

MOVSW/MOVSB : Move String Word or String Byte: Imagine a string of bytes, stored in a set  of consecutive memory locations is to be moved to another set of  the destination locati

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd