pci[con ejercicio de clases]

32
PCI ESCUELA DE CIENCIAS DE LA COMPUTACION Arquitectura de Computadores Peripheral Component Interconnect

Upload: mariasusanasd

Post on 26-Jul-2015

1.392 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Pci[con ejercicio de clases]

PCI

ESCUELA DE CIENCIAS DE LA COMPUTACION

Arquitectura de Computadores

Peripheral Component Interconnect

Page 2: Pci[con ejercicio de clases]

2

Historia del PCI

Page 3: Pci[con ejercicio de clases]

3

El trabajo sobre los PCI empezó en el laboratorio Intel en 1990 situado en Atlacomulco, Mexico.

PCI fue inmediatamente puesto al uso de los servidores reemplazando MCA y EISA como opción al bus de expansión .

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.

Historia:

Page 4: Pci[con ejercicio de clases]

4

Descripción del Bus

Page 5: Pci[con ejercicio de clases]

5

Consiste en un bus de ordenador estándar para conectar dispositivos periféricos directamente a su placa base.

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

“El principal motivo de su gran desarrollo no se debió a las altas prestaciones, sino lo económico de su implementación.”

PCI (Peripheral Component Interconect)(Interconexión de Componente Periférico)

Page 6: Pci[con ejercicio de clases]

6

 Ancho de banda elevado (hasta 64 bits)

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.

Se puede usar como bus de periféricos o bus para una arquitectura de planta (arquitectura de altas prestaciones).

PCI

Características:

Page 7: Pci[con ejercicio de clases]

7

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.

– Temporización Síncrona: utiliza una línea de reloj para el ciclo de reloj o ciclo de bus.

– 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).

PCI

Utiliza:

Page 8: Pci[con ejercicio de clases]

8

 Elementos de diseño de bus:TEMPORIZACIÓN

SÍNCRONA ASÍNCRONAEstá 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)

Page 9: Pci[con ejercicio de clases]

9

PCI

Page 10: Pci[con ejercicio de clases]

10

Utilización del bus PCI

Bus PCI

Procesador

Adaptador/ControladorDe memoria

Caché

DRAM

AudioImágenes en movimiento

LAN SCSIAdaptadorDel bus deexpansión Dispositivos

E/S básicos

Gráficos

Bus de expansión

(a) Sistema monoprocesador.

Page 11: Pci[con ejercicio de clases]

11

Utilización del bus PCI

Bus de sistema

Procesador/caché

DRAMControlador de memoria

AdaptadorPCI/HOST

AdaptadorAl bus deexpansión

AdaptadorPCI/HOST

SCSI

Bus PCI

(b) Sistema multiprocesador

Bus PCI

Procesador/caché

AdaptadorAl bus deexpansión

SCSI LAN LAN

AdaptadorPCI 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.

Page 12: Pci[con ejercicio de clases]

12

PCI-EXPRESS:

Van acompañados de la velocidad a la que trabajan en el bus, las velocidades existen son (x1, x2, x3, x4, x8, x16, x32).

Page 13: Pci[con ejercicio de clases]

13

PCI-EXPRESS:

Page 14: Pci[con ejercicio de clases]

14

Estructura del Bus

Page 15: Pci[con ejercicio de clases]

15

Estructura del Bus:

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.

Page 16: Pci[con ejercicio de clases]

16

Zócalos PCI

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).

Page 17: Pci[con ejercicio de clases]

17

Tarjeta de video Tarjeta de sonido

Tarjeta de red

Tarjeta de tv

Tarjeta de modem

Tarjetas:

Page 18: Pci[con ejercicio de clases]

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:

•32 líneas para datos y direcciones multiplexadas (utilización de las mismas líneas para usos diferentes).•Otras líneas que se utilizan pata interpretar y validar las líneas de señal correspondientes a los datos y a las direcciones.

Terminales de control de interfaz:

•Controlan la temporización de las transferencias y proporcionan coordinación entre los que las inician y los destinatarios.

Terminales de arbitraje:

•A iferencia del resto estas no son compartidas, cada maestro del PCI tiene su par propio que lo conectan directamente al árbitro del bus

Page 19: Pci[con ejercicio de clases]

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.

Page 20: Pci[con ejercicio de clases]

20

Ordenes del PCI

Page 21: Pci[con ejercicio de clases]

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 destinosLectura 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.

Page 22: Pci[con ejercicio de clases]

22

Transferencia de datos

Page 23: Pci[con ejercicio de clases]

23

TRANSFERENCIA DE DATOS

a)Una vez 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 ADc) 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

Page 24: Pci[con ejercicio de clases]

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.

Page 25: Pci[con ejercicio de clases]

25

OPERACIÓN DE LECTURALos eventos se sincronizan en las transacciones de bajada del reloj (mitad de c/ciclo reloj)

CLK#

FRAME#

AD

C/BE#

IRDY#

TRDY#

DEVSEL#

1 2 3 4 5 6 7 8 9a

e

g

d

f

c

h

DATO-1DIRECION 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

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

b

Temporizacion de una operacion de lectura

Al ser liberadas lineas de direcc, el bus puede usar disp de lectura

i

Page 26: Pci[con ejercicio de clases]

26

Arbitraje

Page 27: Pci[con ejercicio de clases]

27

ARBITRAJEArbrito de bus PCI

Arbritode PCI Dispositivo

PCIDispositivo

PCIDispositivo

PCIDispositivo

PCI

•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.

•Puede usar procedimientos•Primero en llegar primero en atender•Cesión cíclica•Esquema de prioridad

•Ej. Decisión del dispositivo en el que cede el bus.CLK#

1 activa REQ, y B solicita uso del bus, activando REC GNT A accede al bus ASimult.

Page 28: Pci[con ejercicio de clases]

28

ARBITRAJE:

Page 29: Pci[con ejercicio de clases]

29

ARBITRAJE:

a) En algún momento anterior al ciclo de reloj 1, A ha activado su señal REQ.

b) Durante el ciclo de reloj 1, B solicita el uso del BUS activando REQ.

c) Al mismo tiempo, el arbitro activa GNT-A para ceder el paso el acceso al bus a A.

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.

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. 

Page 30: Pci[con ejercicio de clases]

30

ARBITRAJE:

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.

 

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.

La especificación PCI no indica un algoritmo particular de arbitraje.

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.

 

Page 31: Pci[con ejercicio de clases]

31

Ejemplo de Arbitraje, mediante prioridad.

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.

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:

– 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.

– Si los dispositivos son atendidos mediante la técnica FIFO de planificación del sistema operativo.

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

Page 32: Pci[con ejercicio de clases]

32