Píldora TAI LXVI; Guía Visual sobre Entrada/Salida y DMA en Arquitectura de Computadores

🖥️ Entrada/Salida (E/S), Interrupciones y DMA: ¡Entiéndelo con claridad!
En el mundo de la arquitectura de computadores, la gestión eficiente de los periféricos es clave. Hoy te explico de forma visual y sencilla cómo funciona la Entrada/Salida (E/S), los distintos tipos de interrupciones, y el rol esencial del DMA para lograr una comunicación efectiva entre CPU y dispositivos.

📦 Tipos de Dispositivos
🔹 Dispositivos orientados a bloque
Acceden por bloques completos (ej. discos duros, memorias, discos ópticos, unidades de cinta).

Permiten posicionamiento y direccionamiento.

🔹 Dispositivos orientados a carácter
Trabajan byte a byte, sin dirección específica (ej. teclado, pantalla, impresora).

⚙️ ¿Cómo la CPU gestiona la E/S?
📘 Programación E/S
La CPU gestiona directamente el periférico, inspeccionando su estado.

Interrumpe su ejecución para realizar la operación de E/S.

📥 Canal de E/S
Un programa de canal describe qué se hará con el periférico.

Incluye comandos como:

Transferencia de datos

Comprobación de estado

Rebobinado, carga de cinta, etc.

🔄 Mecanismos de Sincronización CPU-Periférico
🕵️‍♂️ Sondeo / Polling
La CPU verifica constantemente el estado del dispositivo.

Consume tiempo y recursos.

🚨 Interrupciones
El periférico avisa a la CPU cuando está listo.

Se ejecuta una Rutina de Tratamiento de Interrupción (RTI).

🧠 Secuencia típica:

Periférico lanza señal de interrupción.

CPU detiene ejecución actual.

CPU ejecuta la rutina RTI.

Se reanuda el programa original.

💡 Existen interrupciones:

Enmascarables: pueden ignorarse.

No enmascarables: siempre atendidas.

🔌 Acceso Directo a Memoria (DMA)
El DMA permite que un periférico transfiera datos a memoria sin intervención directa de la CPU.

📉 Problemas si no se usa correctamente:
Puede degradar el rendimiento si bloquea el bus mientras la CPU también lo necesita.

🛠️ Tipos de transferencia DMA
Tipo de DMA Descripción Pros Contras
🔄 Modo ráfaga El DMA bloquea el bus hasta terminar un bloque completo Rápido CPU bloqueada
🔁 Robo de ciclo DMA transfiere palabra a palabra, cediendo el bus frecuentemente CPU sigue operando Transferencia más lenta
👻 Transparente Solo usa el bus cuando la CPU no lo necesita Sin impacto en CPU Muy lento, poco práctico

📚 ¿Qué necesita el DMA?
Registros clave del DMAC (Controlador DMA):

Dirección de memoria inicial

Número de palabras a transferir

Sentido de la operación (lectura o escritura)

Señales de control:

DMA-REQ: Solicitud desde el periférico

DMA-ACK: Confirmación desde el DMA

R/W-IO: Dirección de transferencia

🧬 Modos de conexión del DMA
Modo Características principales
🎯 Bus único DMA independiente, requiere arbitraje
🧩 Bus único integrado DMA y E/S comparten bus en ciclos alternos
🌐 Bus E/S separado Arquitectura escalable, ideal para grandes sistemas

🧠 En resumen:
La E/S puede ser gestionada directamente por la CPU o mediante canales de E/S.

Las interrupciones son clave para mejorar la eficiencia del sistema.

El DMA permite liberar a la CPU de las transferencias, pero debe usarse correctamente.

Deja un comentario