Acceso directo a memoria dma

Solo disponible en BuenasTareas
  • Páginas : 6 (1324 palabras )
  • Descarga(s) : 0
  • Publicado : 13 de junio de 2011
Leer documento completo
Vista previa del texto
ACCESO DIRECTO A MEMORIA DMA
Ramírez Coronel Hugo Enrique; Sinche Cueva Luis Darío
Heramirez@utpl.edu.ec ldsinche@utpl.edu.ec

Resumen
La E/S con interrupciones, aunque más eficiente que la E/S programada, también requiere la intervención del CPU para transferir datos entre la memoria y el módulo de E/S.
Cuando se va a leer una línea desde un terminal, el primer carácter escrito es enviadoal computador. Cuando el carácter es recibido por el controlador, éste interrumpe al CPU. El CPU le da servicio a la interrupción y luego continua con el proceso que estaba ejecutando. Esto es posible cuando el dispositivo es muy lento comparado con el CPU. Entre un carácter y otro el CPU lleva a cabo gran cantidad de procesamiento. Pero ¿qué sucede cuando estamos trabajando con dispositivos deE/S más veloces? Tendríamos interrupciones muy seguidas y se estaría desperdiciando mucho tiempo.
Introducción
El acceso directo a memoria permite a cierto tipo de componentes de ordenador acceder a la memoria del sistema para leer o escribir independientemente de la CPU principal. Muchos sistemas hardware utilizan DMA, incluyendo controladores de unidades de disco, tarjetas gráficas y tarjetasde 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.

Acceso Directo a Memoria
El acceso directo a memoria es una característica de las computadoras y microprocesadores modernos que permite que ciertos subsistemas de hardware dentro de lacomputadora 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.
Una transferencia DMA consiste principalmente en copiar un bloque de memoria de un dispositivo a otro.En lugar de que la CPU inicie la transferencia, la transferencia se lleva a cabo por el controlador DMA. Un ejemplo típico es mover un bloque de memoria desde una memoria externa a una interna más rápida. Tal operación no ocupa el procesador y como resultado puede ser planificado para efectuar otras tareas. Las transferencias DMA son esenciales para aumentar el rendimiento de aplicaciones querequieran muchos recursos.
Cabe destacar que aunque no se necesite a la CPU para la transacción de datos, sí se necesita el bus del sistema, tanto bus de datos como bus de direcciones, por lo que existen diferentes estrategias para regular su uso, permitiendo así que no quede totalmente acaparado por el controlador DMA.
Estrategias de transferencia por DMA
Las diferentes técnicas para realizar latransferencia de datos. El uso de cada una de ellas dependerá de las características que se deseen primar en un sistema.
* DMA por robo de ciclo: se basa en usar uno o más ciclos de CPU por cada instrucción que se ejecuta (de ahí el nombre). De esta forma se consigue una alta disponibilidad del bus del sistema para la CPU, aunque, en consecuencia, la transferencia de los datos seráconsiderablemente lenta. Este método es el que se usa habitualmente ya que la interferencia con la CPU es muy baja.
* DMA por ráfagas: consiste en enviar el bloque de datos solicitado mediante una ráfaga, ocupando el bus del sistema hasta finalizar la transmisión. Así se consigue la máxima velocidad, sin embargo la CPU no podrá usar el bus durante todo ese tiempo, por lo que permanecería inactiva.
*DMA transparente: se trata de usar el bus del sistema cuando se tiene certeza de que la CPU no lo necesita, como por ejemplo en aquellas fases del proceso de ejecución de las instrucciones donde nunca se usa ya que la CPU realiza tareas internas (v. g. fase de decodificación de la instrucción). De esta manera, como su nombre indica, la DMA permanecerá transparente para la CPU y la transferencia se...
tracking img