English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
All categories

2006-10-08 08:14:12 · 5 answers · asked by Jitendra K 1 in Computers & Internet Hardware Other - Hardware

5 answers

Direct Memory Access.

Some devices, like your hard drive controller, use DMA so that information can be transferred from your hard drive to your memory, without requiring processing cycles of the CPU.

I worked on a project once, where the team leader did not want to use DMA or interrupts for the hard drive or floppy drive access. The program and hard drive worked very very slowly. When we showed him the alternative, he finally relented and the drive and program worked great. It's alot like magic.

Yes, most Ethernet Adapters also use DMA.

2006-10-08 08:19:21 · answer #1 · answered by Anonymous · 0 0

Direct memory access (DMA) allows certain hardware subsystems within a computer to access system memory for reading and/or writing independently of the CPU. Many hardware systems use DMA including disk drive controllers, graphics cards, network cards, and sound cards. Computers that have DMA channels can transfer data to and from devices much more quickly than computers without a DMA channel. This is useful for real-time applications.

Principle
DMA is an essential feature of all modern computers, as it allows devices to transfer data without subjecting the CPU to a heavy overhead. Otherwise, the CPU would have to copy each piece of data from the source to the destination. This is typically slower than copying normal blocks of memory since access to I/O devices over a peripheral bus is generally slower than normal system RAM. During this time the CPU would be unavailable for any other tasks involving CPU bus access. But it can continue to work on any work which does not require bus access.

A DMA transfer essentially copies a block of memory from one device to another. While the CPU initiates the transfer, it does not execute the transfer itself. For so-called "third party" DMA, as is normally used with the ISA bus, the transfer is performed by a DMA controller which is typically part of the motherboard chipset. More advanced bus designs such as PCI typically use bus mastering DMA, where the device takes control of the bus and performs the transfer itself.

A typical usage of DMA is copying a block of memory from system RAM to or from a buffer on the device. Such an operation does not stall the processor, which as a result can be scheduled to perform other tasks. DMA transfers are essential to high performance embedded systems. It is also essential in providing so-called zero-copy implementations of peripheral device drivers as well as functionalities such as network packet routing, audio playback and streaming video.

2006-10-08 08:23:32 · answer #2 · answered by jmj 2 · 0 0

The DMA controller manages data transfers between DMA slaves and memory slaves. This type of transfer is often called a third-party DMA operation. See Direct Memory Access Controller and Direct Memory Access for more information. Slaves A slave is a device that is selected by a controlling master as either the source or the target for a transfer. A slave can also begin a service request, such as an interrupt. There are three types of slaves: memory, I/O, and DMA.

A channel controller is a simple CPU used to handle the task of moving data to and from the memory of a computer. Depending on the sophistication of the design, they can be referred to as peripheral processors or DMA controllers as well.


Direct memory access (DMA) allows certain hardware subsystems within a computer to access system memory for reading and/or writing independently of the CPU. Many hardware systems use DMA including disk drive controllers, graphics cards, network cards, and sound cards. Computers that have DMA channels can transfer data to and from devices much more quickly than computers without a DMA channel. This is useful for real-time applications.

Principle

DMA is an essential feature of all modern computers, as it allows devices to transfer data without subjecting the CPU to a heavy overhead. Otherwise, the CPU would have to copy each piece of data from the source to the destination. This is typically slower than copying normal blocks of memory since access to I/O devices over a peripheral bus is generally slower than normal system RAM. During this time the CPU would be unavailable for any other tasks involving CPU bus access. But it can continue to work on any work which does not require bus access.

A DMA transfer essentially copies a block of memory from one device to another. While the CPU initiates the transfer, it does not execute the transfer itself. For so-called "third party" DMA, as is normally used with the ISA bus, the transfer is performed by a DMA controller which is typically part of the motherboard chipset. More advanced bus designs such as PCI typically use bus mastering DMA, where the device takes control of the bus and performs the transfer itself.

A typical usage of DMA is copying a block of memory from system RAM to or from a buffer on the device. Such an operation does not stall the processor, which as a result can be scheduled to perform other tasks. DMA transfers are essential to high performance embedded systems. It is also essential in providing so-called zero-copy implementations of peripheral device drivers as well as functionalities such as network packet routing, audio playback and streaming video.

Examples

ISA
For example, a PC's ISA DMA controller has 16 DMA channels of which 7 are available for use by the PC's CPU. Each DMA channel has associated with it a 16-bit address register and a 16-bit count register. To initiate a data transfer the device driver sets up the DMA channel's address and count registers together with the direction of the data transfer, read or write. It then instructs the DMA hardware to begin the transfer. When the transfer is complete the device then interrupts the CPU.

"Scatter-gather" DMA allows the transfer of data to multiple memory areas in a single DMA transaction. It is equivalent to the chaining together of multiple simple DMA requests. Again, the motivation is to off-load multiple I/O interrupt and data copy tasks from the CPU.

DRQ stands for DMA request; DACK for DMA acknowledge. These symbols are generally seen on hardware schematics of computer systems with DMA functionality. They represent electronic signalling lines between the CPU and DMA controller.

2006-10-08 18:26:01 · answer #3 · answered by Angel for Baby 2 · 0 0

DMA Direct Memory Access it allows devices to directly access the system memory without asking the CPU for permission.
it reduces cpu load so it can crunch numbers and process data

2006-10-08 08:18:19 · answer #4 · answered by rsist34 5 · 0 0

As I pronounced the different time you asked this, the 8085 helps an exterior DMA controller with the carry and HLDA strains, whilst carry is declared the processor finishes the present education then stops and asserts HLDA. whilst the circulate is comprehensive the DMA controller eliminates carry and the processor eliminates HLDA and keeps the place it left off. that's smug and silly to declare that the 8085 exchange into on no account used with a floppy controller, I used one with a fiber optic hyperlink and a superb form of objective outfitted hardware i'm going to on no account feel free to talk approximately. The SOS version of the processor exchange into radiation challenging...

2016-12-16 04:20:57 · answer #5 · answered by ? 3 · 0 0

fedest.com, questions and answers