dma
DESCRIPTION
DMA. Control de E/S. E/S Programada (Polling) E/S por interrupciones DMA …. Transferencia de datos. MIENTRAS True Incrementar contador_datos SI contador_datos> total_datos ENTONCES SALIR FINSI Colocar dato en buffer destino Levantar señal de dato listo REPETIR - PowerPoint PPT PresentationTRANSCRIPT
DMA
Control de E/S
• E/S Programada (Polling)
• E/S por interrupciones
• DMA …
Transferencia de datosMIENTRAS True Incrementar contador_datos SI contador_datos> total_datos ENTONCES SALIR FINSI
Colocar dato en buffer destino Levantar señal de dato listo
REPETIR ESPERAR HASTA QUE nuevo_dato_listo()?FINMIENTRAS
Computadora con DMA
DMAC
Memoria
CPU
ControladorLED
ControladorSensor
Humedad
bus
LED
SensorHumedad
Computadora con DMA
• DMAC y CPU comparten Bus de Memoria
• Generalmente, E/S tienen mayor prioridad de acceso al bus
• DMA crea ráfagas de tráfico en el bus
Protocolo DMA
1. El CPU configura el DMAC
2. El CPU arranca el DMAC y continúa con la próxima tarea
3. El DMAC realiza la transferencia de datos
4. Cuando finaliza la transferencia, el DMAC solicita interrupción al CPU
5. El CPU atiende la interrupción del DMAC
Computadora con DMA (2)
Computadora con DMA (2)
• Computadora con más de un bus entre componentes– Bus de Memoria (CPU, DMAC, Memoria)– Bus de E/S (DMAC, Controladoras)
• Posibilita paralelismo de transferencias de datos de dispositivos
Canal de E/S
• DMA con mayor inteligencia (responsabilidad) del lado del DMAC
• Se utilizan pequeños CPUs optimizados para E/S (IOPs)– Ejecutan instrucciones aritméticas y de saltos
• El IOP negocia protocolos, envía comandos al dispositivo de E/S
Computadora con Canales de E/S
Protocolo Canal E/S
1. El CPU coloca un programa de E/S en la memoria principal
2. El CPU indica la dirección de inicio del programa de E/S al IOP, y lo arranca
3. El IOP ejecuta el programa de E/S, cuando concluye el programa, emite interrupción al CPU
4. El CPU atiende la interrupción
Conclusiones