Está en la página 1de 1

(Direct Memory Access o DMA).

El acceso directo a memoria es una características de las computadoras y


microprocesadores modernos que permite que ciertos subsistemas de hardware dentro de la computadora puedan
acceder a la memoria del sistema para la lectura y/o escritura, independientemente de la unidad central de
procesamiento (CPU). De lo contrario, la CPU tendría que copiar cada porción de dato desde el origen hacia el
destino, haciendo que ésta no esté disponible para otras tareas.

Los subsistemas de hardware que utilizan DMA pueden ser: controladores de disco duro, tarjetas gráficas, tarjetas
de red, tarjetas de sonido y tarjetas aceleradoras. También es utilizado para la transferencia de datos dentro del chip
en procesadores con múltiples núcleos. DMA es esencial en los sistemas integrados.

Características generales del DMA

Aquellas computadoras que tienen canales DMA pueden transferir datos desde y hacia los dispositivos con menos
utilización de CPU que aquellas computadoras sin canales DMA. Básicamente una transferencia DMA consiste en
copiar un bloque de memoria de un dispositivo a otro. Esa transferencia se lleva a cabo por el controlador DMA, en
lugar del CPU. El controlador DMA es generalmente un chipset de la placa madre.

En computadoras sin DMA, el CPU generalmente se ocupa completo durante toda la operación de lectura o escritura
de la memoria y, por lo tanto, no está disponible para realizar otras tareas. Con DMA, el CPU puede iniciar la
transferencia, luego realizar otras operaciones mientras la transferencia está en progreso y luego recibir una
interrupción del controlador de DMA una vez que la transferencia termina.

Sin DMA se utiliza el modo PIO para la comunicación de periféricos con la memoria y de instrucciones de load/store
en el caso de chips con multinúcleos.

DMA es útil en aplicaciones en tiempo real y en el procesamiento de flujos de datos.

Tipos de transferencia DMA o Acceso directo a memoria

* DMA por robo de ciclo: es uno de los métodos más usados, ya que requiere poca utilización del CPU. Esta
estrategia utiliza uno o más ciclos de CPU para cada instrucción que se ejecuta. Esto permite alta disponibilidad del
bus del sistema para la CPU, aunque la transferencia de datos se hará más lentamente.

* DMA por ráfagas: esta estrategia consiste en enviar el bloque de datos solicitado mediante una ráfaga empleando
el bus del sistema hasta finalizar la transferencia. Permite una altísima velocidad, pero la CPU no podrá utilizar el
bus de sistema durante el tiempo de transferencia, por lo que permanece inactiva.

* DMA transparente: esta estrategia consiste en emplear el bus del sistema cuando la CPU no lo necesita. Esto
permite que la transferencia no impida que la CPU utilice el bus del sistema; pero la velocidad de transferencia es la
más baja posible.

* DMA Scatter-gather: esta estrategia permite transmitir datos a varias áreas de memoria en una transacción DMA
simple. Equivale al encadenamiento de múltiples peticiones DMA simples. Su objetivo es librar a la CPU la tarea de
la copia de datos e interrupciones de entrada/salida múltiples.

url = http://www.alegsa.com.ar/Dic/acceso%20directo%20a%20memoria.php

También podría gustarte