La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Interconexión de procesadores con periféricos

Presentaciones similares


Presentación del tema: "Interconexión de procesadores con periféricos"— Transcripción de la presentación:

1 Interconexión de procesadores con periféricos
Un aspecto esencial de los sistemas empotrados de uso industrial. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

2 Qué es un dispositivo de e/s
Los computadores toman y producen datos desde/a el mundo exterior. Teclados, pantallas, operadores humanos, impresoras, discos duros, convertidores a/d, d/a, sensores, actuadores: dispositivos. e/s [entradas/salidas]: formatos, procesos y capacidades que permiten a un computador enviar y recibir información a sus periféricos. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

3 El rendimiento y las e/s
¿Cómo afectan las e/s al rendimiento de un computador? ¿Dónde encajan las e/s en la ecuación general del rendimiento? Es difícil medir el rendimiento de los sistemas de e/s. En el momento presente las e/s están siendo desarrolladas muy notablemente. ¿Por qué? La ley de Amdahl. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

4 El uso del computador y el rendimiento de e/s
Evaluamos el rendimiento de un sistema de e/s de acuerdo con la aplicación a la que se destina el computador. Latencia: tiempo transcurrido entre el inicio de una solicitud y el instante en que ésta solicitud es satisfecha por parte del sistema de e/s. Ancho de banda: cantidad de bytes que el computador es capaz de comunicar al sistema de e/s en cada segundo de tiempo. Tasa de e/s: Número de operaciones de e/s que es capaz de realizar el sistema de e/s en cada segundo de tiempo. Supercomputadores: throughput. Bases de datos: TPC. Rendimiento de los sistemas de ficheros (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

5 Tipos de dispositivos de e/s
El ratón (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

6 El disco duro: platos, pistas y sectores.
51 50 49 48 47 46 Número de Sector Pista Pista 0 . Platos Pistas concéntricas Movimiento circular Plato Sectores Platos L R Movimiento del disco Cabeza de lectura/escritura Movimiento radial (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

7 Lectura de un sector de un disco duro.
3º Transferir el sector a un buffer del controlador de disco Ttransf = f(Xfer size,Speed, density) El sector buscado 4º Transferir buffer a la memoria a través del bus de i/o 51 50 49 48 47 46 . 1º Seek: mover la cabeza radialmente hasta el número de pista adecuado. seek time: mínimo, máximo y promedio 2º Retardo rotacional: esperar a que el movimiento rotacional produzca el paso del sector buscado bajo la cabeza o 7200 rpm (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

8 La interfaz de red local
100VG Anylan (Hewlett-Packard), Fast Ethernet (Intel). Servicios de nivel 1 y 2: interfaz de red. TCP/IP: Servicios de nivel 3 y 4, red y transporte. Enrutamiento, control de errores y de flujo, servicios con conexiones virtuales, servicios de datagrama: Sistema operativo. Tarjeta de red local Ethernet (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

9 BUS de computador EL PROBLEMA [CPU, Memoria] / Dispositivos
El número de dispositivos a conectar puede ser muy grande La demanda de cada dispositivo sobre el sistema [CPU-Memoria] Disparidad de velocidades, anchos de banda, latencias y otras características. La conexión directa es inviable. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

10 BUS de computador ! ! ! ! ! ! ! ! ! UNA SOLUCION
Conjunto de líneas de transmisión compartidas con todos los dispositivos. Y un conjunto de especificaciones que arbitren el uso del bus: Mecánicas Eléctricas Operacionales: Protocolos de bus. ! ! ! ! ! ! ! ! ! (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

11 Intro. rendimiento de los buses (i)
Facetas del rendimiento de un bus: Tiempo de respuesta. El protocolo de bus tiene una gran influencia. Mejora si el protocolo es simple. Velocidad de datos. Entendida como productividad del bus: Bytes transferidos por unidad de tiempo. Formas de mejorarlo: Aumentar el ancho de palabra transmitida en cada transacción Aumentar el ancho de banda de la función de transferencia del bus. Limitaciones al rendimiento del bus: La tecnología electrónica empleada La longitud y características de las líneas de transmisión. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

12 Intro. rendimiento de los buses (ii)
Comentarios adicionales. Ancho de banda y latencia pueden resultar extremos irreconciliables Otros problemas en el diseño de buses: Gestión de dispositivos con velocidades muy dispares Señales de datos y direcciones multiplexadas en el tiempo (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

13 Ciclos de bus Secuencia de activaciones de señales del bus:
Escritura. Desde la memoria [procesador] al periférico Lectura. Transferencia de datos desde un periférico a la memoria [procesador] Transferencias síncronas: Una señal de reloj marca los instantes en los que los datos deben ser válidos Transferencias asíncronas: Los intercambios de información son válidos cuando alguna de las partes lo indica mediante la aserción de una señal [handshake]. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

14 Ciclo de bus de lectura de memoria
(C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

15 Ciclo de bus de escritura en memoria
(C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

16 Tres estructuras diferentes de buses
Backplane bus: Proc / Mem / Dispositivos Compromiso Demanda proc-mem Demanda mem-dispositivo Físicamente en el plano trasero del computador Reutilizable en diversos sistemas [estándar] Bus procesador-memoria: Longitudes muy cortas Alta velocidad Obtener el máximo rendimiento de la memoria [no cuello de botella] Específicos para cada procesador Buses de i/o [e/s]: Sin conexión directa a memoria Gran variedad de dispositivos y características Anchos de banda Longitudes muy largas Reutilizables en diversos sistemas [estándar] (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

17 Temporización de las transacciones en el bus
Buses síncronos. Datos válidos después de un número prefijado de flancos activos de reloj Ejemplo: Bus local del microprocesador 6502 Buses asíncronos. Datos válidos cuando se activan ciertas señales indicadoras (strobes) Ejemplo: SCSI, un bus de i/o para discos duros, típicamente. Buses de temporización/validación mixta: La indicación de datos válidos consiste en la activación de una señal (strobe) cuando se recibe el flanco activo de reloj Ejemplo: Bus local de los microprocesadores Pentium. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

18 Ejemplo de bus mixto Bus síncrono (2cm máx). Señal de reloj
El flujo de señales del protocolo de bus es relativo al reloj. Todos los dispositivos conectados al bus usan el mismo reloj. Posible dispersión de retardos de la señal de reloj Clock-skew Compromiso velocidad-longitud Efecto de línea de transmisión Inicio de ciclo: #ads Fin de ciclo: #ready Bus síncrono (2cm máx). Bus síncrono (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

19 Buses asíncronos No poseen reloj- metastabilidad.
La coordinación de las transferencias se efectúa mediante intercambios de señales: handshake. En cada paso del handshake, emisor y receptor usan dos señales diferentes para estar ambos en proceder al siguiente paso -cada uno posée su propia FSM (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

20 Ejemplo de bus mixto: Los procesadores x86
Nos referimos al bus local de la CPU x86 Síncrono mixto La señal de reloj que se entrega al procesador se denomina clk2 Protocolo básico de inicio/fin de ciclo de bus El procesador indica el comienzo de un nuevo ciclo de bus mediante la activación de la señal #ads En este instante, el temporizador de acceso a memoria inicia su cuenta atrás. En el momento en que ha transcurrido la cuenta atrás, el temporizador aserta la señal #ready Cuando el procesador recibe el flanco activo de la señal de reloj y, además, encuentra que #ready está asertada, se termina el ciclo de bus actual y, comienza el siguiente. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

21 ¿Cómo aumentar el ancho de banda del bus?
Incrementar el ancho de palabra del bus (8-->16-->32). Usar buses de datos y direcciones separados -no multiplexar datos y direcciones en el tiempo, de este modo datos y direcciones pueden ser enviados en un mismo ciclo de bus de escritura. Transferencias en bloque (burst): Permitir que el procesador pueda transferir varias words seguidas sin soltar el bus NI generando nuevas direcciones de memoria. Mejorar la tecnología subyacente para reducir la latencia, esto afectará al ancho de banda positivamente. Bus de transacciones divididas (split). Permitir que los dos elementos que se comunican liberen el bus mientras uno de ellos está resolviendo una transacción. Emplear alguna técnica de señalización multinivel como las empleadas en comunicaciones de datos (PCI Express). (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

22 Dos esquemas de bus: análisis de rendimiento.
Bus/memoria, bloques de 4 a 16 palabras de 32 bits. Bus síncrono de 64 bits de 200Mhz. 64 bits/ciclo + 1 ciclo/dirección Dos ciclos entre operaciones del bus. 200ns primer acceso, cada conjunto adicional de 4 palabras puede leerse en 20nS. Puede solaparse la transferencia de la word leída más recientemente y la solicitud de la siguiente word a leer. Calcular el ancho de banda sostenido y la latencia de una lectura de 256 words con bloques de 4 words y de 16 words. En cada caso, calcular también el número efectivo de transacciones por segundo realizadas Una transacción consiste en el tiempo que lleva generar la dirección seguido de los datos. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

23 Rendimiento del bus síncrono en modo ráfaga de 4 words.
Cada bloque de 4 words lleva: 1 ciclo de reloj para enviar la dirección a la memoria 200ns * 1ciclo/5ns = 40 ciclos de reloj la lectura de memoria(Tiempo de acceso) 1+1 ciclos para transferir las cuatro words a través de la ruta de 64 bits. 2 ciclos en que hay que detener el bus antes de iniciar la siguiente transacción. Total = 45 ciclos por cada bloque de 4 words Las 256 words llevan 256/4 = 64 transacciones 45 ciclos/transac x 64 transac = 2880 ciclos; Latencia = 2888 x 5ns = 14400ns Transacciones/s = 64 transac x 1/14400ns = 4.44 M transacciones/seg Ancho de banda = (256 words x 4 bytes/word) x 1seg/14400ns = 71.11Mb/seg (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

24 Control y arbitraje del bus -o caos.
En un bus con más de dos dispositivos susceptibles de solicitar el bus para comunicarse con otros dispositivos ¿Qué ocurre cuando dos de ellos solicitan el bus al mismo tiempo? Bus master: iniciar y controlar todas las solicitudes. La memoria suele ser un slave (dispositivo esclavo): simplemente responde a solicitudes(r/w), nunca inicia solicitudes. Sistemas con un único master. Sistemas con más de un master: arbitraje. Un master solicita el bus utilizando un protocolo, e.g., aserta la señal de petición de bus y espera a que el master actual aserte la señal de concesión del bus. A partir de ese momento usa el bus. Arbitraje: equidad, prioridades. En cadena Arbitraje paralelo, centralizado: PCI, emplea un circuito árbitro. Arbitraje distribuido: códigos de identificación por dispositivo. Arbitraje distribuido mediante colisiones: Ethernet. Normas industriales. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

25 Control de dispositivos.
¿Cómo puede un programa enviar un comando a un dispositivo? Existen dos métodos: e/s mapeadas en memoria (MIPS) Cada dispositivo está emplazado en un rango de direcciones de memoria: usamos sw y lw para enviar/recibir words al/del dispositivo. El instante, la secuencia precisa de comandos y su significado para un determinado dispositivo, depende exclusivamente de cada dispositivo en particular. e/s con instrucciones especiales (ia, IBM 360) La arquitectura incorpora instrucciones que permiten acceder a los dispositivos mediante algún identificador. Ia: Las instrucciones in y out acompañadas de un número de puerto y un registro. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

26 Operación de e/s finalizada
¿Cómo indica un dispositivo que sí ha ejecutado con éxito una determinada operación? Polling: El procesador periódicamente consulta al dispositivo a ver si ha terminado la operación o no. Interrupciones: El dispositivo, al terminar la operación, interrumpe al procesador. La rutina de servicio de la interrupción dialoga con el dispositivo: confirma que la operación ha terminado y por tanto hay datos nuevos que leer o bien el dispositivo está listo para transmitir más datos al exterior, por ejemplo. DMA: El procesador ha encargado a un controlador especial que se encargue de efectuar la operación de lectura o escritura memoria-dispositivo. Se suele emplear para transferencias muy largas. Mientras la operación e/s memoria-dispositivo está teniendo lugar, el procesador, puede trabajar con algún otro proceso en otras zonas de memoria. Cuando finaliza la transferencia DMA, el controlador, avisa al procesador mediante una interrupción. Cada controlador de i/o de un bus procesador-memoria puede contener su propio DMAC. (C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.

27 El estado del arte en e/s: los Procesadores de e/s
(C) Morgan-Kaufmann (Algunas figuras). (C) José M. Foces Morán, 2003 y 2005 Concepto y estructura.


Descargar ppt "Interconexión de procesadores con periféricos"

Presentaciones similares


Anuncios Google