Canales de E/S Características de los Canales de E/S

Anuncio
Canales de E/S
Los dispositivos de E/S son cada vez más sofisticados
• Ej: tarjetas gráficas 3D.
• Evolución:
1. La CPU controla directamente los periféricos.
2. Se agrega un módulo de E/S o controlador.
3. Idem 2 más llamado de interrupción.
4. El módulo de E/S provee el acceso directo a memoria (DMA).
5. El módulo de E/S tiene su propio procesador con su pequeño
conjunto de instrucciones.
6. El módulo además tiene su memoria local o sea se convierte
en una computadora en sí mismo.
Características de los Canales
de E/S
• Los canales representan una extensión al concepto de DMA.
• Tienen la habilidad de ejecutar instrucciones de E/S.
• Completo control de la transferencia de datos por lo tanto la
CPU no ejecuta instrucciones de E/S.
• Instrucciones almacenadas en memoria principal que serán
ejecutadas por un procesador de propósito especial en el canal.
• La CPU inicia una transferencia de E/S instruyendo al canal para
ejecutar el programa que está en memoria.
• Este programa especifica dispositivos, áreas de memoria a usar,
prioridades y acciones ante errores.
• El canal siguiendo las instrucciones controla la transferencia de
datos.
Tipos de canales de E/S (1)
• Selector
• Controla varios dispositivos de alta velocidad y uno
por vez, por lo tanto el canal se dedica para la
transferencia de datos de ese dispositivo.
• El canal selecciona un dispositivo y efectúa la
transferencia.
• Los dispositivos son manejados por un controlador o
módulo de E/S
• Por lo tanto el canal de E/S ocupa el lugar de la CPU
en el control de esos controladores.
Selector
Datos y direcciones
canal a mem.ppal.
Selector de
canal
Señales de control
CPU.- Selector
Controlador
de E/S
Controlador
de E/S
Tipos de canales de E/S (2)
• Multiplexor
• Puede manejar E/S con varios dispositivos a la vez.
• Multiplexor de bytes:
• Acepta y transmite caracteres.
• Multiplexor de bloques:
• Intercala bloques de datos desde distintos dispositivos.
Multiplexor
Datos y direcciones
canal a mem.ppal.
Multiplexor
de canal
Señales de control
CPU.- Selector
Controlador
de E/S
Controlador
de E/S
Controlador
de E/S
Controlador
de E/S
La interfaz externa
• Provista para un periférico desde un módulo de E/S.
• ¿Serial ó paralelo?
• Paralela: tape, disco (dispositivo de alta velocidad).
• Serial: terminales, mouse.
• Existe un módulo que dialoga con el dispositivo. Los
pasos son:
• El módulo envía señal de control pidiendo permiso para enviar
datos al dispositivo.
• Este confirma el pedido.
• El módulo transfiere los datos.
• El periférico confirma la recepción de los mismos.
• Uso de buffers internos en el módulo para compensación
de velocidades.
Tipos de interfaces
• La conexión entre un módulo de E/S y los
dispositivos externos puede ser:
• Punto a punto: línea dedicada.
• Ej: teclado, impresora, modem ...etc.
• Multipunto: idem a un bus externo.
• Ej: dispositivos de almacenamiento en masa externos (discos
SCSI).
Interfaz SCSI
(Small Computer Systems Interface)
• Interfaz paralela.
•
•
•
•
•
•
8, 16 o 32 líneas de datos.
Dispositivos encadenados (daisy-chained).
Los dispositivos son independientes.
Los dispositivos pueden comunicarse entre sí.
Y trabajan sin involucrar al procesador.
Existen distintas versiones.
SCSI - 1
•
A principios de los 80
•
•
•
•
•
8 líneas de datos
Clock de 5 MHz
Velocidad de datos de 5 MBytes/s
Soporta hasta siete (7) dispositivos en cadenas
Ocho si incluímos a la interfaz del host
SCSI - 2
•
•
•
•
1991.
16 y 32 líneas de datos.
Clock de 10 MHz.
Velocidad de datos de 20 ó 40 MBytes/s.
Señales y fases del SCSI (1)
• Los intercambios en este tipo de bus son entre el
dispositivo iniciador y el seleccionado.
• Normalmente entre host y un dispositivo
• también puede ser entre dos dispositivos.
• Fases:
• ¿Está el bus libre? (similar a Ethernet)
• Arbitraje: un dispositivo toma el control del bus.
• Selección de objetivo para realizar una función.
• Re-selección: el objetivo se re-conecta con el iniciador
después de una suspensión de parte de éste.
Señal del SCSI (2)
• Solicitud de órdenes desde un objetivo al
iniciador.
• Solicitud de datos en ambos sentidos (IN/OUT).
• Solicitud de que la información de estado del
objetivo sea enviada al iniciador.
• Solicitud de mensajes en ambos sentidos.
Configuración de SCSI
• El bus debe finalizar en cada extremo.
• Normalmente un extremo corresponde al adaptador del
host.
• Conexión a un terminador o conmutador(es).
• Debe establecerse el ID de cada dispositivo SCSI.
• Jumpers o conmutadores.
• ID único en la cadena.
• El número mayor (7) goza de mayor prioridad en el
arbitraje.
IEEE 1394 FireWire
Bus en serie de alto rendimiento.
•
•
•
•
Rápido (entre 25 y 400 Mbits/s)
Costos reducidos.
Fácil de implementar.
También se emplea en cámaras digitales, VCR y
televisión.
Configuración del FireWire
• Dispositivos encadenados (daisy chain).
• 63 dispositivos en un solo puerto.
• En realidad 64, de los cuales uno es la interfaz.
• Pueden conectarse más de 1022 buses con
adaptadores.
• Configuración automática.
• No hay terminadores de bus.
• Puede tener estructura de árbol.
Comparación: SCSI y FireWire
Disco magnético
Escáner
ID= 6
CD ROM
ID= 2
CPU
ID= 7
ID= 3
Terminador
(puede ser interno)
(a) Ejemplo de configuración SCSI
Terminador
Interfaz
estéreo
CD-ROM
Disco magnético
CPU
Cámara digital
(b) Ejemplo de configuración FireWire
Escáner
Impresora
Descargar