Académique Documents
Professionnel Documents
Culture Documents
Sistemas de E/S
Introduccin
En 1946 John L. Von Neumann propuso la construccin y desarrollo de ordenadores con programa almacenado.
Instrucciones y datos se almacenan juntos en un medio uniforme: la memoria. CPU con presencia de registros internos CPU Memoria Elementos de E/S para comunicarse con el exterior Bus del Sistema Bus Buses de Sistema? 4to componente? E/S
Sistemas de E/S 2
Objetivo de diseo
Se colg la computadora Se rompi el disco?
Sistemas de E/S
Objetivo de diseo
Systema de E/S Fiabilidad Costo Compatibilidad/Diversida d de dispositivos Posibilidad de expansin Rendimiento
Latencia Throughput
Sistemas de E/S
Fiabilidad y disponibilidad
Fiabilidad es una medida de tiempo de servicio continuado, o el tiempo de servicio hasta una falla. Tiempo medio hasta una falla, MTTF (mean time to failure) Ejemplo: Disco Seagate 147 GB, 15k RPM: MTTF 1,4 M horas @ 25C.
Sistemas de E/S
La tasa de fallas anual, AFR (annual failure rate) es el porcentaje de dispositivos que se espera fallen en un ao dado un cierto MTTF. Mismo ejemplo: AFR 0,62%.
Fiabilidad y disponibilidad
Las interrupciones de servicio se miden en tiempo de reparacin medio, MTTR (mean time to repair). El tiempo medio entre fallas,
MTBF = MTTF + MTTR
La disponibilidad es una medida de cumplimiento de servicio relacionada con la alternancia entre el estado de cumplimiento y el de interrupcin de servicio:
Av = MTTF/(MTTF+MTTR) = = MTTF/MTBF
Sistemas de E/S
Fiabilidad y disponibilidad
Un fabricante de discos rgidos dice que el MTTF es 1.200.000 horas. Cundos aos es esto? Indagando se sabe que ese nmero se calcula en base a poner miles de discos a funcionar durante algunos meses. Se divide la cantidad de horas total por el nmero de discos que fallaron. Alguna objecin?
Sistemas de E/S 7
En muchos sistemas el tiempo de respuesta es la principal mtrica que puede ser una mezcla de la latencia y la velocidad de transferencia.
Sistemas de E/S 8
Resumiendo
1.
2.
3.
Los tres tipos de computadoras (desktop, server, embedded) cuidan la fiabilidad y costo de los sistemas de E/S. Las PCs y los embedded systems se enfocan en tiempo de respuesta y compatibilidad en lo que hace a E/S. Los servidores se enfocan en la productividad (throughput) y capacidad de expansin en sistemas de E/S.
Sistemas de E/S 10
Controladores de E/S
Conexin de dispositivos de E/S al ordenador
Los dispositivos perifricos se conectan al ordenador a travs de un CONTROLADOR de E/S (= Interfaz = Adaptador = Tarjeta de E/S). El controlador es el responsable del control de uno o ms dispositivos externos y del intercambio de datos entre dichos perifricos con la MP o con los registros de la CPU.
Sistemas de E/S
11
Qu es un bus?
A long motor vehicle for carrying passengers, usually along a fixed route
Processor
I/O Device
I/O Device
I/O Device
Memory
Un bus es un vnculo de comunicacin compartida. Se materializa en un conjunto de cables para comunicar mltiples subsistemas.
Sistemas de E/S 12
Economa
Las mismas conexiones compartidas por mltiples componentes
I/0 Device I/0 Device I/0 Device
Processor
Memory
Processor
I/0 Device
I/0 Device
I/0 Device
Memory
Tipos de buses
Buses de conexin Procesador-Memoria (generalmente a medida)
Cortos y de alta velocidad. A la medida del procesador y la memoria. Maximizan el ancho de banda. Optimizados para transferencias de bloques de cach.
Sistemas de E/S
15
Tipos de buses
CPU-Memory Bus
Diferentes tipos de buses (velocidad, ancho de datos, etc..), necesitan de adaptadores (bridges).
Cache
Bus Adapter
Main Memory
CPU
network
Sistemas de E/S 16
Buses de I/O que conectan con el bus principal del sistema (CPU memoria) a travs de adaptadores
Un bus de alta velocidad para conectar CPU, memoria y adaptadores a otros buses Buses de I/O a la medida de los perifricos
Memory
Bus Adaptor I/O Bus
17
I/O Bus
Sistemas con tres tipos de buses el bus de la CPU memoria del trfico y Se libera
carga de Entrada/Salida
Bus entre CPU, memoria y un slo adaptador Bus de entrada/salida de alta velocidad para conectar diferentes tipos de perifricos o adaptadores con buses de ms baja velocidad (Actualmente es el bus PCI) Diferentes bus de entrada/salida segn necesidades
Processor Memory Bus
Processor
Bus Adaptor Bus Adaptor Bus Adaptor
Memory
Sistemas de E/S
18
Processor/Memory Bus
PCI Bus
I/O Busses
Sistemas de E/S 19
Ejemplo: PC actual
Sistemas de E/S
20
Organizacin de un Bus
Lneas de control
Organizan las transferencias de datos entre los dispositivos conectados al bus Indicar qu tipo de informacin circula por el bus de datos
Lneas de datos
Llevan la informacin desde la fuente al destino. Datos y direcciones (bus de datos y bus de direcciones). Comandos complejos tambin por este canal
Control Lines
BUS
Data Lines
Sistemas de E/S
21
Transaccin de E/S
Sistema Maestro/esclavo Una transaccin de E/S es una secuencia de operaciones en el bus. Incluye dos partes: Peticin de operacin a travs de un comando (lleva asociada una direccin para indicar a qu dispositivo va dirigido). Transferencia del dato. El maestro es quien inicia la transaccin en el bus mandando el comando ( y la direccin si es necesario). El esclavo es el que responde al maestro enviando el dato al maestro o recibindolo del mismo. En los casos sencillos de entrada/salida el procesador es el maestro (El comando es simplemente la direccin, R/W y CS).
Master issues a command Bus Master Data can go either way
Sistemas de E/S
Bus Slave
22
Buses asncronos
No hay reloj (No hay problema de clock skew). Se puede acomodar a dispositivos de diferentes velocidades. Se necesita de un protocolo de handshaking. Maestro avisa a esclavo para realizar una operacin. Esclavo avisa a maestro que ha realizado la operacin. Ms lentos y complejos.
Sistemas de E/S 23
Bus Sncrono
Todo relativo al flanco de reloj
Sistemas de E/S
24
Bus Asncrono
Tpico ciclo de lectura asncrona
1. 2. 3. 4. 5. 6. 7.
Maestro enva ReadReq y pone la direccin Esclavo enva ack cuando captura la direccin Maestro baja ReadReq para indicar recibido el ack Esclavo enva DataRdy indicando que est el dato disponible Maestro sube ack indicando que ha recibido el dato Esclavo baja DataRdy al detectar el ack El maestro baja el ack cuando detecta que DataRdy se ha desactivado
ReadReq Data 2 Ack DataRdy
Sistemas de E/S
1 3 4 4 5 7
25
Bus Asncrono
Tanto el maestro como el esclavo de la transferencia deben poseer una mquina de estado para mantener la sincrona.
ReadReq ReadReq 1 Record from data lines and assert Ack ________ ReadReq ___ Ack 3, 4 Drop Ack; put memory data on data lines; assert DataRdy Ack 6 Release data lines and DataRdy New I/Orequest 26
________ DataRdy
DataRdy
8 cycles
Sistemas de E/S
28
Multiplexado
Primero se envan las direcciones y despus los datos Direcciones y datos comparten el mismo bus Menor coste Ms complejo
Sistemas de E/S 29
Serie
La informacin circula bit a bit entre dispositivos
Sistemas de E/S 30
Reflexin
Sistemas de E/S
Arbitraje (Arbitration)
Esquemas de arbitraje del Bus:
Un maestro del bus que quiere usar el bus impone un request Un maestro no puede usar el bus hasta que se le garantiza el request (bus grant). El maestro debe informar al arbitro (arbiter) cuando termina de utilizar el bus.
Sistemas de E/S
33
Arbitraje
Los esquemas de arbitraje se pueden clasificar en cuatro clases:
Arbitraje en serie (daisy chain): La lnea de grant pasa por todos los dispositivos. Centralizado, arbitraje paralelo. Arbitraje distribuido por autoseleccin: cada dispositivo que quiere el bus coloca un cdigo indicando que quiere utilizarlo. Arbitraje distribuido por deteccin de colisin: Como el caso de Ethernet.
Sistemas de E/S
34
Bus Arbiter
wired-OR
Sistemas de E/S 35
Req
Bus Arbiter
Sistemas de E/S
36
Un bus simple
Todos los componentes operan sncronamente Todas las fuentes y destinos a la misma velocidad
BusReq BusGrant R/W Addr Data
Cmd+Addr Data1 Data2
Sistemas de E/S
38
Sistemas de E/S
39
Bajo coste
Lneas de datos y direcciones multiplexadas Ancho mnimo (menos lneas: ms barato) 1 bit, 8 bits Dato a dato Uno Asncrono Serie
Sistemas de E/S
42
Sistemas de E/S
43
44
3.
El procesador escribe en el bus: Ej. Sw El sistema de memoria sabe que esas direcciones son para E/S e ignora la transaccin. Uno de los controladores de E/S sabe que esta direccin en el bus le corresponde.
1. 2.
Interrupciones
Cuando un dispositivo de E/S necesita atencin del procesador activa una seal conectada al procesador, una lnea de interrupcin. Similares a las excepciones. Tienen prioridades asociadas.
Sistemas de E/S 46
2.
3.
El controlador DMA gestiona la transferencia directamente con la memoria. Cuando se completa la transferencia el controlador DMA interrumpe al procesador.
Sistemas de E/S 49
Sistemas de E/S
50
Interfaz Hw/Sw
Tres caractersticas de los sistemas de E/S condicionan el diseo del SO:
1.
2.
3.
Mltiples programas usando el mismo procesador comparten el sistema de E/S. Uso de interrupciones: se pasa a modo kernel y las maneja el SO. El control a nivel Hw de los dispositivos es muy detallado.
Sistemas de E/S
51
Interfaz Hw/Sw
El SO debe proveer:
Proteccin: El SO garantiza que los programas de usuario accedan a un dispositivo slo si tiene los permisos. Abstraccin: El SO provee rutinas que implementan operaciones de bajo nivel. El SO maneja interrupciones de los dispositivos de E/S y llamadas al SO de los programas. Acceso equitativo y eficiente.
Sistemas de E/S 52