PDA

View Full Version : DMA And Bus Mastering??


Beno
01-03-2002, 03:48 AM
Hi Board Members,

I am doing my A+ study and my book by Mike Meyers says that in relation to current devices using DMA, they use their own bus mastering circuitry that enables them to jump of the data bus when the CPU needs to use it.
Therefore this eliminates the device going through bus controlling support chips.

My question is that when say a Hard Disk controller uses DMA to put data straight in memory, does it use the motherboards chipset to assist it in putting the data in memory or can the hard disk controller put the data from its disks directly into RAM itself??

Thanks again

Beno

------------------
Have a nice day

Whyzman
01-03-2002, 12:18 PM
Hi Beno,

Here's what I found in my "The Complete PC Upgrade and Maintenance Guide...Seventh Edition."

"DMA can transfer data from a peripheral to RAM, or RAM to a peripheral, with neither transfer requiring the CPU's intervention. But DMA can't transfer data from a peripheral to a peripheral; such an operation would be two DMA operations, peripheral to RAM, followed by RAM to peripheral.

Many boards built for the EISA, MCA, or PCI buses can do bus master transfers, allowing them to not only bypass the CPU, but RAM as well, transferring data between peripherals at the maxismum speed the bus supports."

Copyright say 1996, so in computer time the information is light years old. However, if things have changed, it might help in understanding the progression of thought behind it all.

Hope this helps! http://www.PCGuide.com/ubb/wink.gif

------------------
May all your dealings in life be win/win!

Whyzman

geebee76
01-03-2002, 02:14 PM
Hi Beno, as far as I'm aware there are two types of Direct Memory Access.

Legacy (Standard) and Bus Mastering. I believe that Legacy DMA was used with old Hard Drives, which used the ISA bus. Bus Mastering DMA is used with modern Hard Drives, which use a PCI bus.

Legacy (Standard) DMA requires the drive to communicate with the DMA controller on the motherboard and let it take care of bus arbitration and data transfer.

Bus Mastering DMA, which is considerably faster allows the drive to communicate directly with memory.

In answer to your question When say a Hard Disk controller uses DMA to put data straight in memory, does it use the motherboards chipset to assist it in putting the data in memory or can the hard disk controller put the data from its disks directly into RAM itself??


It would depend on how old the drive is and whether it was using Legacy (Standard) DMA or Bus Mastering DMA.

Of course as Whyzman pointed out, lots of devices use DMA.

Hope this helps
http://www.PCGuide.com/ubb/smile.gif

------------------
You are making progress if each mistake is a new one!

Sig from Here (http://www.oneliners-and-proverbs.com/)

geebee76@hotmail.com

Whyzman
01-03-2002, 06:56 PM
Beno,

Here is some more information (http://www.damek.kth.se/docs/docs/busmaster.html) to have a look at.

And, also from our Mothership (http://www.pcguide.com/ref/mbsys/buses/func_Mastering.htm).

------------------
May all your dealings in life be win/win!

Whyzman