Add 'Direct Memory Access'

master
Dorothy Mairinger 1 month ago
parent
commit
3cf6ef4c22
  1. 5
      Direct-Memory-Access.md

5
Direct-Memory-Access.md

@ -0,0 +1,5 @@
<br>With out DMA, when the CPU is utilizing programmed input/output, [MemoryWave Official](http://203.245.29.238:8800/sharyl5717979/8001115/-/issues/26) it is often absolutely occupied for your complete duration of the read or write operation, and is thus unavailable to carry out other work. With DMA, the CPU first initiates the transfer, then it does other operations while the transfer is in progress, and it finally receives an interrupt from the DMA controller (DMAC) when the operation is completed. This function is beneficial at any time that the CPU can not sustain with the rate of data transfer, or when the CPU must perform work while ready for a relatively gradual I/O knowledge transfer. Many hardware techniques use DMA, including disk drive controllers, graphics cards, network playing cards and sound cards. DMA can be used for intra-chip data switch in some multi-core processors. Computer systems which have DMA channels can switch information to and from units with much less CPU overhead than computers with out DMA channels. Similarly, a processing circuitry inside a multi-core processor can switch knowledge to and from its local [Memory Wave](https://100trailsmagazine.be/ascension-de-la-pointe-de-la-rechasse-3212-m-ma-premiere-experience-dalpinisme/) with out occupying its processor time, allowing computation and knowledge transfer to proceed in parallel.<br>
<br>DMA can be used for "memory to memory" copying or moving of knowledge within memory. DMA can offload expensive memory operations, equivalent to large copies or scatter-gather operations, from the CPU to a devoted DMA engine. An implementation example is the I/O Acceleration Know-how. DMA is of curiosity in network-on-chip and in-memory computing architectures. Standard DMA, additionally called third-party DMA, uses a DMA controller. A DMA controller can generate memory addresses and initiate memory read or write cycles. It incorporates several hardware registers that can be written and read by the CPU. These include a memory handle register, a byte count register, and a number of management registers. Depending on what features the DMA controller offers, these control registers might specify some combination of the source, the vacation spot, the direction of the transfer (studying from the I/O machine or writing to the I/O system), the size of the switch unit, and/or the number of bytes to switch in a single burst.<br>
<br>To perform an input, output or memory-to-memory operation, the host processor initializes the DMA controller with a depend of the number of words to switch, and the memory handle to make use of. The CPU then commands the peripheral device to initiate an information transfer. The DMA controller then supplies addresses and [MemoryWave Official](https://bonusrot.com/index.php/Best_Memory_Foam_Mattresses) browse/write management lines to the system memory. Every time a byte of information is able to be transferred between the peripheral machine and memory, the DMA controller increments its internal deal with register until the complete block of information is transferred. Some examples of buses using third-social gathering DMA are PATA, USB (earlier than USB4), and SATA
Loading…
Cancel
Save