Acceso directo a memoria (DMA):
El controlador DMA es un dispositivo de hardware que permite que los dispositivos de E/S accedan directamente a la memoria con menos participación del procesador. El controlador DMA necesita los mismos circuitos antiguos de una interfaz para comunicarse con la CPU y los dispositivos de entrada/salida.
La figura 1 a continuación muestra el diagrama de bloques del controlador DMA. La unidad se comunica con la CPU a través de bus de datos y líneas de control. Mediante el uso del bus de direcciones y permitiendo que el registro DMA y RS seleccione entradas, la CPU elige el registro dentro del DMA. RD y WR son entradas de dos vías. Cuando la entrada BG (concesión de bus) es 0, la CPU puede comunicarse con los registros DMA. Cuando la entrada BG (concesión de bus) es 1, la CPU ha renunciado a los buses y DMA puede comunicarse directamente con la memoria.
Registros del controlador DMA :
El controlador DMA tiene tres registros de la siguiente manera.
- Registro de direcciones: contiene la dirección para especificar la ubicación deseada en la memoria.
- Registro de conteo de palabras: contiene el número de palabras que se transferirán.
- Registro de control – Especifica el modo de transferencia.
Nota –
Todos los registros en el DMA aparecen en la CPU como registros de interfaz de E/S. Por lo tanto, la CPU puede leer y escribir en los registros DMA bajo el control del programa a través del bus de datos.
Explicación :
La CPU inicializa el DMA enviando la información dada a través del bus de datos .
- La dirección de inicio del bloque de memoria donde están disponibles los datos (para leer) o donde se almacenarán los datos (para escribir).
- También envía el recuento de palabras, que es el número de palabras en el bloque de memoria para leer o escribir.
- Control para definir el modo de transferencia como lectura o escritura.
- Un control para comenzar la transferencia DMA.
Publicación traducida automáticamente
Artículo escrito por tarunsinghwap7 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA