Acceso directo a memoria (DMA)

En algunos casos, es deseable permitir que los intercambios de E/S se produzcan directamente con la memoria. En ese caso, el procesador cede a un módulo de E/S la autoridad para leer de o escribir en memoria, para que así la transferencia E/S-memoria pueda producirse sin la intervención del procesador. Durante esas transferencias, el módulo de E/S proporciona a la memoria las órdenes de lectura o escritura, liberando al procesador de cualquier responsabilidad en el intercambio. Esta operación se conoce con el nombre de acceso directo a memoria (DMA, Direct Memory Access), y se profundizará en los siguientes temas.

Controlador de DMA (DMA Controller)

Programable para mover bloques entre MP y E/S o entre zonas de memoria, toma el control de los buses cuando CPU se lo concede ty notifica a CPU con una interrupción cuando termina

Funcionamiento con DMA

Untitled

  1. SiLa CPU programa el controlador de DMA
  2. La CPU continúa el procesamiento
  3. Cuando está listo para comenzar, el controlador de DMA solicita los buses (interrupción) (señal BR: Bus request)
  4. La CPU cede los buses (señal BG: Bus granted) y sigue procesando (hasta donde pueda)
  5. Cuando el controlador termina, notifica a la CPU (IRQ)

Las técnicas de manejo de E/S con DMA

Existen dos técnicas para el manejo de E/S con DMA:

  1. Detención de CPU: Es una transmisión de secuencia de bloques en “ráfagas”
  2. Robo de ciclos: Transmite una o más palabras usando los semi-ciclos de reloj que no utiliza la CPU

Norma 232

Untitled

Protocolo 485

Untitled