You are on page 1of 5

ACCESO DIRECTO A MEMORIA (DMA, DEL INGLÉS DIRECT MEMORY ACCESS)

INTRODUCCIÓN

Un computador no puede estar formado sólo por la CPU y la memoria. „Para darle alguna
utilidad debe comunicarse con el mundo exterior (periféricos) a través del subsistema de
entrada/salida.

Consiste principalmente en copiar un bloque de memoria de un dispositivo a otro es decir la


salida de datos se producen en el orden en que llegan.

El DMA se utiliza para los periféricos de alta velocidad, el controlador del dispositivo transfiere
un bloque completo de Datos directamente de su propio buffer a la memoria (y viceversa) sin
necesidad de la intervención de la CPU.

El acceso directo a memoria (DMA, del inglés direct memory access) permite a cierto tipo de
componentes de una computadora acceder a la memoria del sistema para leer o escribir
independientemente de la unidad central de procesamiento (CPU) principal.

Muchos sistemas hardware utilizan DMA, incluyendo controladores de unidades de


disco, tarjetas gráficas y tarjetas de sonido. DMA es una característica esencial en todos los
ordenadores modernos, ya que permite a dispositivos de diferentes velocidades comunicarse
sin someter a la CPU a una carga masiva de interrupciones.

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.

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.

(Direct Memory Access o DMA). El acceso directo a memoria es una característica delas
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.

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.

VENTAJAS Y DESVENTAJAS

VENTAJAS DESVENTAJAS
 Es más eficiente que la E/S  La velocidad de transferencia de E/S
programada. está limitada por la velocidad.
 El módulo DMA Transfiere el bloque  El procesador debe dedicarse a la
completo de datos. gestión de la transferencia de E/S.
 El controlador de DMA activara Dack.
 El orden permite que el ordenador
cargue registro.
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.

ACTIVAR/DESACTIVAR EL ACCESO DIRECTO A MEMORIA

1. Ir al Panel de Control de Windows.

2. Clic en Sistema y seguridad - Sistema.

3. Clic en Administrador de dispositivos.

4. Hacer doble clic en Controladoras ATA/ATAPI IDE.

5. En Controladoras ATA/ATAPI IDE, para cada icono que contenga la palabra Canal como parte
de su etiqueta, hacer clic con el botón secundario del ratón en el icono y, luego, hacer clic en
Propiedades.

6. Hacer clic en Configuración avanzada.

7. En Propiedades de dispositivo, activar o desactivar el casillero "Habilitar DMA".

8. Aceptar.

CANALES Y PROCESADORES DE ENTRADA/SALIDA


A medida que los computadores han evolucionado, la complejidad y sofisticación de sus
componentes se ha incrementado. Se puede resumir esta evolución en las siguientes etapas:

 La CPU controla directamente al periférico.


 Se añade un controlador o módulo de E/S. La CPU utiliza la E/S programada sin
interrupciones.
 El módulo de E/S tiene acceso directo a través del DMA. Transferir bloques de datos a,
o desde, la memoria sin implicar a la CPU, excepto al comienzo y final de la transferencia.
 El módulo de E/S se mejora, haciendo que se comporte como un procesador en sí
mismo, con un repertorio especializado de interrupciones orientado a las E/S.

PROCESADOR (E/S)

En las entradas y salidas que se ejecutan desde el procesador entran tres conceptos que se
deben conocer:

1.- DMA

La mayoría de los computadores de hoy día tienen la posibilidad de interrupción y de DMA. Un


controlador de DMA posee un control parcial de la operación de E/S. La CPU puede liberarse
totalmente si se introduce en el computador un Procesador de E/S (PE/S) o canal. Análogamente
al DMA, el PE/S tiene acceso a la memoria principal y puede interrumpir a la CPU, sin embargo
puede emplear un repertorio de instrucciones diferentes del de la CPU (ya que está orientado a
operaciones de E/S).

2.- CANALES

El canal de E/S es una extensión del concepto de DMA. Un canal de E/S tiene la capacidad de
ejecutar instrucciones de E/S, lo que da un control total sobre las operaciones de E/S.

Las instrucciones de E/S se almacenan en la memoria principal y serán ejecutadas por un


procesador de propósito específico en el mismo canal de E/S.

EXISTEN DOS TIPOS DE CANALES:

Canal Selector: Es aquel canal que controla varios dispositivos de velocidad elevada, y en un
instante dado, se dedica a transferir datos a unos de esos dispositivos. Cada dispositivo o
pequeño grupo de dispositivos es manejado por un controlador, o módulo de E/S.
Canal multiplexor: El canal multiplexor es un canal que puede manejar las E/S de varios
dispositivos al mismo tiempo, entrelazando a la hora de transferir al mismo tiempo, bloques de
datos de los distintos dispositivos que están transfiriendo al mismo tiempo.

3.- LAS INSTRUCCIONES

Las instrucciones que se ejecutan en los procesadores, varia mucho de uno a otro, incluso en los
modelos variantes de cada uno de ellos, algunas instrucciones cambian, para mejorar (a veces
para empeorar) el rendimiento, o se añaden nuevas instrucciones.
Las instrucciones también se pueden clasificar por el tipo de operación que realiza, como por
ejemplo. El control de cadenas de caracteres, el control de la memoria cache, Instrucciones
aritméticas, instrucciones de transferencia de datos, instrucciones de comparación.

En forma general las instrucciones del procesador, le permiten realizar tareas, esto ejecutándose
a un tiempo una o varias de estas instrucciones, en algunos procesadores las instrucciones se
dividan de acuerdo al área del procesador en la cual tuvieran acción.

CONCLUSIONES

A medida que transcurre el tiempo, los dispositivos de almacenamiento externo, evolucionan


logrando mejoras para aquellos sujetos que requieran de un mayor espacio de almacenamiento.

La evolución de los dispositivos de almacenamiento externo, pasando por sus diversos modelos,
permiten una mayor rapidez, calidad, así como seguridad, en este gran avance del conocimiento.

A medida que la tecnología avanza, los productos se hacen mas asequibles a una mayor cantidad
de consumidores., disminuyendo así las limitaciones existentes tiempo atrás respecto al uso de
medios de almacenamiento.

BIBLIOGRAFÍA

 [PATTERSON] Estructura y diseño de computadores interficie circuitería/programación


David A. Patterson
 John L. Hennessy Editorial Reverté, 2000
 [STALLINGS] Organización y arquitectura de computadores William Stallings Pearson
Education – Prentice Hall, 2005 (7ª edición)

You might also like