Pci[con ejercicio de clases]

1,881 views

Published on

La especificación PCI cubre el tamaño físico del bus, características eléctricas, cronómetro del bus y sus protocolos.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,881
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
45
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • ocupa un lugar intermedio (de ahí el nombre mezzanine) entre el bus del procesador / memoria / cache y el bus estándar ISA.  El bus PCI se encuentra separado del bus local mediante un controlador que hace de pasarela. Cuando la UCP escribe datos en los periféricos PCI (por ejemplo un disco duro), el controlador/pasarela PCI los almacena en su buffer.  Esto permite que la UCP atienda la próxima operación en vez de tener que esperar a que se complete la transacción.  A continuación el buffer envía los datos al periférico de la forma más eficiente posible.
  • ocupa un lugar intermedio (de ahí el nombre mezzanine) entre el bus del procesador / memoria / cache y el bus estándar ISA.  El bus PCI se encuentra separado del bus local mediante un controlador que hace de pasarela. Cuando la UCP escribe datos en los periféricos PCI (por ejemplo un disco duro), el controlador/pasarela PCI los almacena en su buffer.  Esto permite que la UCP atienda la próxima operación en vez de tener que esperar a que se complete la transacción.  A continuación el buffer envía los datos al periférico de la forma más eficiente posible.
  • ocupa un lugar intermedio (de ahí el nombre mezzanine) entre el bus del procesador / memoria / cache y el bus estándar ISA.  El bus PCI se encuentra separado del bus local mediante un controlador que hace de pasarela. Cuando la UCP escribe datos en los periféricos PCI (por ejemplo un disco duro), el controlador/pasarela PCI los almacena en su buffer.  Esto permite que la UCP atienda la próxima operación en vez de tener que esperar a que se complete la transacción.  A continuación el buffer envía los datos al periférico de la forma más eficiente posible.
  • Pci[con ejercicio de clases]

    1. 1. PCI ESCUELA DE CIENCIAS DE LA COMPUTACION Arquitectura de Computadores Peripheral Component Interconnect
    2. 2. Historia del PCI
    3. 3. <ul><li>El trabajo sobre los PCI empezó en el laboratorio Intel en 1990 situado en Atlacomulco, Mexico. </li></ul><ul><li>PCI fue inmediatamente puesto al uso de los servidores reemplazando MCA y EISA como opción al bus de expansión . </li></ul><ul><li>En PC fue más lento en reemplazar al VESA Local Bus y no ganó la suficiente penetración en el mercado hasta después del 1994 con la segunda generación de los Pentium. </li></ul>Historia:
    4. 4. Descripción del Bus
    5. 5. <ul><li>Consiste en un bus de ordenador estándar para conectar dispositivos periféricos directamente a su placa base. </li></ul><ul><li>La especificación PCI cubre el tamaño físico del bus, características eléctricas, cronómetro del bus y sus protocolos. </li></ul><ul><li>“ El principal motivo de su gran desarrollo no se debió a las altas prestaciones, sino lo económico de su implementación.” </li></ul>PCI (Peripheral Component Interconect) (Interconexión de Componente Periférico)
    6. 6. <ul><li>  Ancho de banda elevado (hasta 64 bits) </li></ul><ul><li>Se instala con un controlador de bus PCI, que facilita el trabajo de los diseñadores de placas. Por ello es posible instalarlo en sistemas que no estén basados en el procesador Intel, por ejemplo, Alpha de DEC, Power Macintosh. </li></ul><ul><li>Se puede usar como bus de periféricos o bus para una arquitectura de planta (arquitectura de altas prestaciones). </li></ul>PCI Características:
    7. 7. <ul><ul><li>Proporciona buenas prestaciones para los subsistemas de E/S de alta velocidad (adaptadores gráficos, controladores de interfaz de red, controladores de disco, etc.), el estándar actual permite el uso de hasta 64 líneas de datos a 66Mhz, para una velocidad de transferencia de 528 Mbytes/s o 4,224 Gbps. </li></ul></ul><ul><ul><li>Temporización Síncrona: utiliza una línea de reloj para el ciclo de reloj o ciclo de bus. </li></ul></ul><ul><ul><li>Arbitraje Centralizado: existe un árbitro o controlador del bus que asigna los tiempos de uso del bus (es un hardware que puede estar en un módulo separado o en el procesador). </li></ul></ul>PCI Utiliza :
    8. 8.   Elementos de diseño de bus : TEMPORIZACIÓN SÍNCRONA ASÍNCRONA Está determinado por un reloj. El bus incluye una línea de reloj a través de la cual una señal de rejo secuencia y valida todas las transferencias (con misma duración de tiempo). Las señales de duración transfieren de 1 o 0. Cuando ocurre un único intervalo de 1 seguido a otro de 0, se lo llama ciclo de reloj. Éste intervalo llama al tiempo de unidad<<Time slot>>. Los eventos se prolongan durante un único ciclo reloj. EJEMPLO: La CPU activa una señal de lectura y sitúa una dirección de memoria en las líneas de dirección. Al mismo tiempo se activa una señal de inicio, que indica la presencia en el bus de dirección y de la información de control. El módulo de memoria reconoce la dirección y luego de un retardo de ciclo, sitúa el dato y la señal de reconocimiento en el bus. . No existe reloj. Se habla de un interbloqueo (se confirman las transferencias que se están llevando a cabo), donde se dispone de señales que validan interactivamente el envío y recogida de información. El bus puede ser compartido por una mezcla de dispositivos lentos y rápidos. EJEMPLO: El procesador sitúa las señales de dirección y lectura en el bus. Después de un breve intervalo, cuando las señales han sido estabilizadas, se activa la señal MSYN(Sincronización del maestro), que indica la presencia de las señales de dirección y control válidas. Luego de ello, el módulo de memoria responde proporcionando el dato y una señal SSYN(Sincronización del esclavo)
    9. 9. PCI
    10. 10. Utilización del bus PCI Bus PCI Bus de expansión (a) Sistema monoprocesador . Procesador Adaptador/ Controlador De memoria Caché DRAM Audio Imágenes en movimiento LAN SCSI Adaptador Del bus de expansión Dispositivos E/S básicos Gráficos
    11. 11. Utilización del bus PCI Bus de sistema Bus PCI (b) Sistema multiprocesador Bus PCI Procesador/caché DRAM Controlador de memoria Adaptador PCI/HOST Adaptador Al bus de expansión Adaptador PCI/HOST SCSI Procesador/caché Adaptador Al bus de expansión SCSI LAN LAN Adaptador PCI a PCI el uso de adaptadores mantiene al PCI independiente de la velocidad del procesador y proporciona la posibilidad de recibir y enviar datos rápidamente.
    12. 12. PCI-EXPRESS: <ul><li>Van acompañados de la velocidad a la que trabajan en el bus, las velocidades existen son (x1, x2, x3, x4, x8, x16, x32). </li></ul>
    13. 13. PCI-EXPRESS:
    14. 14. Estructura del Bus
    15. 15. Estructura del Bus: <ul><li>Puede configurarse como bus de 32 o 64 bits y hay definidas 49 líneas de señal obligatoria que se dividen en 9 grupos (terminales o pastillas). El bus PCI emplea un conector de 124 pines (188 en caso de una implementación de 64 bits) pero únicamente 47 de estas conexiones se emplean en una tarjeta de expansión (49 en caso de que se incorporen una línea de alimentación y otra de tierra). Cada una de las señales activas del bus PCI está bien junto o frente a una señal de alimentación o de tierra, una técnica que minimiza la radiación. </li></ul>
    16. 16. Zócalos PCI <ul><li>Zócalos PCI estándar (5V. 33 MHz y 32 bits), presentes en la mayoría de los PCs de hoy.  Los conectores PCI de 64 bits se han construido añadiendo un segundo zócalo a continuación del estándar (de 32 bits). </li></ul>
    17. 17. Tarjetas: Tarjeta de video Tarjeta de sonido Tarjeta de red Tarjeta de tv Tarjeta de modem
    18. 18.   Estructura del Bus : Líneas obligatorias (49) y líneas opcionales (51)del bus PCI Terminales de sistema: Terminal de reloj. Terminal de inicio (reset). Terminales de direcciones y datos: <ul><li>32 líneas para datos y direcciones multiplexadas (utilización de las mismas líneas para usos diferentes). </li></ul><ul><li>Otras líneas que se utilizan pata interpretar y validar las líneas de señal correspondientes a los datos y a las direcciones. </li></ul>Terminales de control de interfaz: <ul><li>Controlan la temporización de las transferencias y proporcionan coordinación entre los que las inician y los destinatarios. </li></ul>Terminales de arbitraje: <ul><li>A iferencia del resto estas no son compartidas, cada maestro del PCI tiene su par propio que lo conectan directamente al árbitro del bus </li></ul>
    19. 19.   Estructura del Bus : Líneas obligatorias (49) y líneas opcionales (51)del bus PCI Terminales de interrupción: Para los dispositivos PCI que deban generar peticiones de servicio. Son no compartidas (como las de arbitraje) ya que cada dispositivo tiene su propia línea (o líneas) de petición de interrupción a un controlador de interrupciones Terminales de soporte de cache: Necesarios para permitir memorias cache en el bus PCI asociadas a un procesador o a otro dispositivo. Terminales de ampliación a bus de 64 bits: Incluye 32 líneas multiplexadas en el tiempo de datos y direcciones, que combinadas con las 32 líneas obligatorias dan un bus de 64 líneas de datos y direcciones. Las otras líneas del grupo interpretan y validan las líneas de datos y direcciones. Como último, hay 2 líneas que permiten que 2 dispositivos PCI se pongan de acuerdo en el uso de los 64 bits. Terminales de test (JTAG/Boundary Scan*): Estas señales se ajustan al estándar IEEE 1149.1 para la definición de procedimientos test.
    20. 20. Ordenes del PCI
    21. 21. Órdenes del PCI: Las actividades del bus consiste en transferencias entre elementos conectados al bus, denominándose maestro al que inicia la transferencia. Reconocimiento de interrupci ó n: Es una orden proporcionada por el dispositivo que act ú a como controlador de interrupciones en el Bus PCI. Ciclo Especial : Se utiliza para iniciar la difusi ó n de un mensaje a uno o m á s destinos Lectura y Escritura de E/S: Se uilizan para intercambiar datos entre el m ó dulo que inicia la transferencia y un controlador de E/S. Lectura y Escritura en Memoria: Se utilizan para especificar la transferencia de una secuencia de datos utilizando uno o m á s ciclos de reloj. Lectura y Escritura de Configuraci ó n: permiten al dispositivo maestro lea y actualice los par á metros de configuraci ó n de un dispositivo conectado al bus PCI. Ciclo de Direcci ó n Dual: Se utiliza por el dispositivo que inicia la transferencia para indicar que est á utilizando direcciones de 64 bits.
    22. 22. Transferencia de datos
    23. 23. TRANSFERENCIA DE DATOS a) Una v ez que el Maestro del bus ha obtenido el control del bus, debe iniciarse la transacción activando FRAME. Esta línea permanece activa hasta que el maestro está dispuesto para terminar la última fase de datos. El maestro también sitúa la dirección de inicio en el bus de direcciones, y la orden de lectura en las líneas C/BE. b) Al comienzo del ciclo de reloj 2, el dispositivo del que se lee reconocerá su dirección en las líneas AD c) El maestro deja libres las líneas AD del Bus. En todas las líneas de señal que puedan ser activadas por más de un dispositivos, se necesita un ciclo de cambio para que la liberación de las líneas de dirección permita que el bus pueda ser utilizado por el dispositivo de lectura. El maestro cambia la información de las líneas C/BE para indicar cuales de las líneas AD se utilizan para transferir el dato direccionado (de 1 a 4 bytes). El maestro también activa IRDY para indicar que está preparado para recibir el primer dato. d) El dispositivo de lectura seleccionado activa DEVSEL para indicar que ha reconocido las direcciones y va a responder. Sitúa el dato solicitado en las líneas AD y activa TRDY para indicar que hay dato válido en el bus
    24. 24. TRANSFERENCIA DE DATOS e) El maestro lee el dato al comienzo del ciclo de reloj 4 y cambia las líneas de habilitación de byte según se necesite para la próxima lectura.   f) En este ejemplo, el dispositivo de lectura necesita algún tiempo para preparar el segundo bloque de datos para la transmisión. Por consiguiente, desactiva TRDY para señalar al maestro que no proporcionará un nuevo dato en el próximo ciclo. En consecuencia, el maestro no lee las líneas de datos al comienzo del quinto ciclo de reloj y no cambia la señal de habilitación de byte durante ese ciclo. El bloque da datos el leído al comienzo del ciclo de reloj 6.   g) Durante el ciclo 6, el dispositivo de lectura sitúa el tercer dato en el bus. No obstante en este ejemplo, el maestro todavía. Para indicarlo, desactiva IRDY. Esto hará que el dispositivo de lectura mantenga el tercer dato en el bus durante un ciclo de reloj extra. h) El maestro sabe que el tercer dato es el último a transferir, y por eso desactiva el FRAME para indicar al dispositivo de lectura que este es el último dato a transferir. Además activa IRDY para indicar que está listo para completar esa transferencia.   i) maestro desactiva IRDY, haciendo que el bus vuelva a estar libre, y el dispositivo de lectura desactivada TRDY y DEVSEL.
    25. 25. OPERACIÓN DE LECTURA Los eventos se sincronizan en las transacciones de bajada del reloj (mitad de c/ciclo reloj) CLK# FRAME# AD C/BE# IRDY# TRDY# DEVSEL# a e g d f c h DATO-1 DIRECION DATO-2 DATO-3 BUS CMD Byte activo Byte activo Byte activo Fase de dato Transacción del bus Fase de dato Estado de espera Estado de espera Estado de espera b Temporizacion de una operacion de lectura Al ser liberadas lineas de direcc, el bus puede usar disp de lectura i 1 2 3 4 5 6 7 8 9 temporización Comienzo y duración de la transición Líneas de señales de PCI Líneas múltiplexadas Para direcciones y datos Líneas para direcciones y datos Ordena bus Iniciador preparado Dispositivo preparado
    26. 26. Arbitraje
    27. 27. ARBITRAJE Arbrito de bus PCI Arbrito de PCI Dispositivo PCI Dispositivo PCI Dispositivo PCI Dispositivo PCI <ul><li>El bus PCI utiliza un esquema de arbitraje síncrono en el que cada maestro tiene una única señal de petición (REQ) y cesión (GNT). Estas líneas se conectan a un árbitro central. </li></ul><ul><li>Puede usar procedimientos </li></ul><ul><ul><li>Primero en llegar primero en atender </li></ul></ul><ul><ul><li>Cesión cíclica </li></ul></ul><ul><ul><li>Esquema de prioridad </li></ul></ul><ul><li>Ej. Decisión del dispositivo en el que cede el bus. </li></ul>CLK# 1 activa REQ, y B solicita uso del bus, activando REC GNT A accede al bus A Simult.
    28. 28. ARBITRAJE:
    29. 29. ARBITRAJE: <ul><li>a) En algún momento anterior al ciclo de reloj 1, A ha activado su señal REQ. </li></ul><ul><li>b) Durante el ciclo de reloj 1, B solicita el uso del BUS activando REQ. </li></ul><ul><li>c) Al mismo tiempo, el arbitro activa GNT-A para ceder el paso el acceso al bus a A. </li></ul><ul><li>d) El maestro del bus A muestra GNT-A al comienzo del ciclo de reloj 2 y conoce que se le ha cedido al acceso al bus. Además encuentra IRDY y TRDY desactivados, indicando que el bus está libre. En consecuencia, activa FRAME y coloca la información de dirección en el bus de direcciones, y la orden correspondiente en las líneas C/BE. Además activa REQ-A puesto que tiene que realizar otra transferencia después de la actual. </li></ul><ul><li>e) El árbitro del bus muestra todas las líneas GNT al comienzo del ciclo 3, y toma la decisión de ceder el bus a B para la siguiente transacción. Entonces activa GNT-B y desactiva GNT-A. B no podrá utilizar el bus hasta que este vuelva a estar libre.   </li></ul>
    30. 30. ARBITRAJE: <ul><li>f) A desactiva FRAME para indicar que la última (y la única) transferencia de dato está en marcha. Pone los datos en el bus de datos y se lo indica al dispositivo destino con IRDY. Es dispositivo lee el dato al comienzo del siguiente ciclo de reloj. </li></ul><ul><li>  </li></ul><ul><li>g) Al comienzo del ciclo 5, B encuentra IRDY y FRAME desactivados y, por consiguiente, puede tomar el control del bus activando FRAME. Además, desactiva su línea de RE, puesto que sólo deseaba realizar una transferencia. </li></ul><ul><li>La especificación PCI no indica un algoritmo particular de arbitraje. </li></ul><ul><li>Hay que resaltar que el arbitraje se produce al mismo tiempo que el maestro del bus actual está realizando su transferencia de datos. Por consiguiente, no se pierden ciclos de bus en realizar el arbitraje. </li></ul><ul><li>  </li></ul>
    31. 31. Ejemplo de Arbitraje, mediante prioridad. <ul><li>Un programa de usuario comienza a ejecutarse en un t =0. En t=10, la línea de comunicaciones produce una interrupción. En t=15, el disco necesita ser atendido produciendo una interrupción. En t=5 la tarjeta de video también requiere los servicios de ejecución y produce una interrupción. Es necesario considerar que el lápiz óptico ejecuta una interrupción de t=18. </li></ul><ul><li>Realizar un esquema donde nos muestre la línea normal de ejecución. Cada uno de los dispositivos tienen una dirección de: 10 tiempos para el lápiz óptico, 20 para el disco, 10 para la tarjeta de video y 12 para la línea de comunicaciones, respectivamente. En que tiempo es atendido el lápiz óptico si: </li></ul><ul><ul><li>Si los dispositivos de E/S: lápiz óptico, disco, tarjeta de video, línea de comunicaciones tienen una propiedad creciente 1,2,3,4 respectivamente. </li></ul></ul><ul><ul><li>Si los dispositivos son atendidos mediante la técnica FIFO de planificación del sistema operativo. </li></ul></ul>Dispositivo Entrada Duración Prioridad Línea de comunicación 10 12 4 Disco 15 20 2 Tarjeta de video 5 10 3 Lápiz óptico 18 10 1

    ×