Está en la página 1de 15

CONCEPTOS SOBRE EL BUS PCI

RICARDO DIAZGRANADOS BOSSIO

RONALD VILLALBA YEPES

JHERSON ARROYO HERRERA

ING. ALEX JIMENEZ DE LA CRUZ

FUNDACIÓN UNIVERSITARIA TECNOLÓGICO COMFENALCO

VIII SEMESTRE

INGENIERIA DE SISTEMAS

CARTAGENA DE INDIAS

2011
CONTENIDO

Introducción

1. Definición básica de bus PCI

2. Características del bus PCI

3. Versiones (actualizaciones) del bus PCI

4. Ancho de bus y de banda del bus PCI

5. Tipos de bus

6. Reloj (Frecuencia)

7. Estructura (Señales opcionales / Señales necesarias)

8. Arbitraje del bus

9. Temporización

10. Transferencia de datos

Conclusión

Referencias informativas o bibliográficas


INTRODUCCIÓN

La tecnología ha evolucionado con el paso del tiempo convirtiéndose en un


elemento indispensable en el desarrollo de la vida humana.

El nacimiento del computador se constituye en la piedra angular, en el fruto final


de todo este proceso evolutivo y ha traído un gran progreso y un sinfín de
beneficios para la humanidad, pero más allá de ver al computador como uno solo,
hay que recordar que este no deja de ser un sistema, compuesto de otros
elementos físicos más pequeños que hacen posible el funcionamiento de este.
Estos elementos físicos en conjunto y que trabajan en armonía, se les conoce
como hardware.

En el presente trabajo, nos enfocaremos en uno de estos elementos, los buses. La


función principal de los buses es la de trasferir datos entre todos los componentes
del computador. Particularmente, estudiaremos todo lo relacionado con el bus PCI,
el cual es un bus de alta “performance” de 32 o 64 bits con líneas de dirección y
de datos multiplexadas. Su uso se orienta como mecanismo de interconexión
entre controladores de periféricos altamente integrados, placas periféricas de
expansión y sistemas procesador/memoria.
DESARROLLO DE LA ACTIVIDAD

1. Definición básica de bus PCI.

El Peripheral Component Interconnect (PCI, "Interconexión de Componentes


Periféricos") consiste en un bus de ordenador estándar para conectar dispositivos
periféricos directamente a su placa base. Fue desarrollado por Intel el 22 de junio
de 1992. Estos dispositivos pueden ser circuitos integrados ajustados en ésta (los
llamados "dispositivos planares" en la especificación PCI) o tarjetas de expansión
que se ajustan en conectores. Es común en PC, donde ha desplazado
al ISA como bus estándar, pero también se emplea en otro tipo de ordenadores.

A diferencia de los buses ISA, el bus PCI permite configuración dinámica de un


dispositivo periférico. En el tiempo de arranque del sistema, las tarjetas PCI y el
BIOS interactúan y negocian los recursos solicitados por la tarjeta PCI. Esto
permite asignación de IRQs (interrupciones) y direcciones del puerto por medio de
un proceso dinámico diferente del bus ISA, donde las IRQs tienen que ser
configuradas manualmente usando jumpers externos. Las últimas revisiones de
ISA y el bus MCA de IBM ya incorporaron tecnologías que automatizaban todo el
proceso de configuración de las tarjetas, pero el bus PCI demostró una mayor
eficacia en tecnología "plug and play". Aparte de esto, el bus PCI proporciona una
descripción detallada de todos los dispositivos PCI conectados a través del
espacio de configuración PCI.
2. Características del bus PCI.

Entre algunas de las características más importantes podemos encontrar:

 Bus de 64 bits (64 líneas de datos), frecuentemente implementado como bus de 32


bits.

 Reloj: 33 o 66 MHz.

 Independiente de la CPU

 256 bytes de espacio de configuración.

 3,3 V o 5 V, dependiendo del dispositivo

 Multiplataforma e independiente de la arquitectura del procesador.

 De diseño sencillo (pocos circuitos integrados) y económico, permite la


interconexión de otros buses (como ISA) y es fácilmente ampliable.

 Espacio de dirección de 32 bits (4 GB)

 Frente al bus ISA tradicional incorpora mejoras como:

− Permite la compartición de líneas de petición de interrupción (IRQS).

− Importantes mejoras en cuanto a bus mastering, que permite la introducción de


DMAs (accesos directo a memoria) en los propios módulos de E/S.

3. Versiones (actualizaciones) del bus PCI.


La versión original del bus PCI (1.0) es de 32 bits de ancho y su velocidad de reloj
es de 33 MHz, lo que en teoría permite un rendimiento de 132 Mb/s a 32 bits. En
las arquitecturas de 64 bits, el bus funciona a 64 bits y su rendimiento teórico es
de 264 Mb/s.

Con el fin de actualizar el estándar PCI, se formó un grupo de interés compuesto


por un gran número de fabricantes, apodado PCI-SIG (Grupo de interés especial
de PCI). Se publicaron actualizaciones del bus. La versión 2.0 del 30 de abril de
1993 definió la forma de los conectores y las tarjetas adicionales, y le confirió una
velocidad de reloj de 66 MHz, en contraste con los 33 MHz de la versión 1.0. De
esta manera se logró duplicar el rendimiento teórico hasta alcanzar los 266 MHz a
32 bits.
El 1 de junio de 1995, la revisión 2.1 del bus PCI mejoró su uso hasta 66 MHz. En
ese momento, los ingenieros anticiparon un movimiento progresivo desde un
voltaje señalizado de 5 V hasta 3,3 V.

La versión 2.2 del bus PCI, que apareció el 18 de diciembre de 1998, incorporó la
capacidad de conectar los periféricos directamente (conexión en caliente).
La revisión 2.3, editada el 29 de marzo de 2002, eliminó la posibilidad de utilizar
tarjetas de 5 V adicionales, pero incorporó el uso de tarjetas que admiten ambos
voltajes con el fin de garantizar la compatibilidad descendente. La revisión 3.0 del
estándar PCI eliminó por completo el uso de tarjetas de 5 V compatibles.

En septiembre de 1999, tuvo lugar un cambio importante en el bus PCI, cambio


que fue conocido como PCI-X. El bus PCI-X 1.0 admite frecuencias de 66, 100 y
133 MHz. Dicho bus es completamente compatible con el formato PCI, y las
ranuras PCI-X admiten tarjetas de formato PCI y viceversa.
La revisión 2.0 del bus PCI-X admite frecuencias de 66, 100, 133, 266 y 533
MHz, y permite un rendimiento de 4,27 Gb/s a 64 bits.
El siguiente cuadro resume las diferentes versiones del bus PCI:

4. Ancho de bus y de banda del bus PCI.


El ancho de bus PCI puede ser de 32 bits o 64 bits. Con el bus de 32 bits, se
alcanza una tasa de transferencia (ancho de banda) máxima de 133 MB por
segundo (33,33 MHz × 32 bits ÷ 8 bits/byte = 133 MB/s), mientras que con el bus
de 64 bits se alcanza una tasa de transferencia (ancho de banda) máxima de 266
MB por segundo (MB/s).

Las nuevas versiones PCI-X también trabajan con un ancho de bus de 32 o 64


bits, pero disponen de un ancho de banda más grande que las versiones iniciales
(PCI 1.0, 2.0 y 3.0), teniendo una tasa de transferencia máxima de hasta de 4GB/s
a 64 bits. Nota: Observar el cuadro de las versiones.

5. Tipos de bus.

Existen dos tipos de buses:

- Dedicados:
Ofrecen un gran desempeño, ya que ofrece líneas de datos y direcciones
independientes y por lo tanto se evita el “cuello de botella” (saturación de
datos)
- Multiplexados:
Son de menor rendimiento, ya que el canal es compartido y se generan
problemas por el “cuello de botella”

6. Reloj (frecuencias).

Los buses PCI manejan distintos tipos de frecuencia de reloj. Las versiones
iniciales y las comúnmente usadas por los usuarios finales manejan velocidades
de 33 MHz, para los buses con ancho de bits de 32 y de 66 MHz para los buses
con ancho de bits de 64. Estas velocidades de reloj fueron ampliadas con la
llegada de la versión PCI-X, aumentando la velocidad desde 100 MHz hasta los
133 MHz en la versión PCI-X 1.0. En la versión PCI-X 2.0, se amplían aún más las
velocidades de reloj, llegado estas hasta los 533 MHz.
7. Estructura (Señales opcionales / Señales necesarias).

A continuación se mostrarán las distintas señales opcionales y necesarias


(obligatorias), clasificadas según su funcionalidad.

- 49 líneas de señal obligatorias: (# indica señal activa a nivel bajo)


 Sistema: reloj y reinicio (CLK y RST#)
 Direcciones y datos
 32 líneas multiplexadas para datos y direcciones (AD [31:0]).
 PCI es little endian
 4 líneas de control multiplexadas (C/BE [3:0] #):
 Órdenes durante la fase de direccionamiento
 Indicador de validez de los datos (byte enables) durante la
fase de datos
 Línea de control de paridad (PAR)
 Control de interfaz: temporización y coordinación de las transferencias (6
líneas)
 Indicación de comienzo y duración de transferencia por maestro
(FRAME#)
 Maestro preparado (IRDY#, Initiator Ready)
 Esclavo preparado (TRDY#, Target Ready)
 Esclavo desea que maestro pare transacción actual (STOP#)
 Respuesta del dispositivo esclavo seleccionado cuando reconoce su
dirección (DEVSEL#)
 Selección de un dispositivo durante la fase de inicialización del bus
(IDSEL)

 Arbitraje (2 líneas punto-a-punto)


 Solicitud de bus (REQ#)
 Concesión de bus (GNT#)
 Señales de error (2 líneas)
 Error de paridad (PARR#)
 Error del sistema (SERR#)

- 51 señales opcionales:
 Interrupción
 Soporte caché
 Ampliación del bus a 64 bits
 Test

8. Arbitraje del bus.

Previamente, cuando definimos la estructura del bus PCI, vimos que el arbitraje
del bus PCI consta de 2 líneas o señales y que se aplican en Bus Masters
solamente, las cuales son:

- Solicitud de bus (REQ#): línea tri-state. Esta línea le indica al árbitro que este
agente desea hacer uso del bus. Es una señal punto a punto. Cada master tiene
su propia línea REQ#, la que debe ser llevada a tri-state mientras RST# es
activada.

- Concesión de bus (GNT#): línea tri-state. Grant le indica al agente que el acceso
al bus le fue concedido. Es una señal punto a punto. Cada master tiene su propia
línea GNT#, la que debe ser llevada a tri-state mientras RST# es activada.
Mientras RST# está activa, el árbitro debe ignorar todas las señales REQ# dado
que están en tri-state y no implican requerimientos válidos. El árbitro solo puede
arbitrar después de que RST# se desactive. Un master debe ignorar a GNT#
entonces mientras RST# está activa.

Existen 4 tipos de arbitrajes, estos son:


 Arbitraje en serie
 Arbitraje paralelo centralizado
 Arbitraje distribuido por autoselección
 Arbitraje distribuido por detección de colisión

9. Temporización.

Existen dos tipos de temporización, Síncrona y Asíncrona:

Temporización síncrona: Entre sus líneas de control se incluye una señal de reloj. El
protocolo para la comunicación es fijo y está gobernado por la señal de reloj (se asume que
los envíos llegan correctamente).

Ventajas: Puede funcionar a gran velocidad y se puede implementar con un sistema


secuencial sencillo.

Inconvenientes: No es adecuado para mezclar dispositivos con grandes diferencias de


velocidad. Su diseño tiene que ser muy cuidadoso. Problema del sesgo del reloj (clock
skew).

Los buses de memoria suelen ser síncronos.


Temporización asíncrona: Sin reloj. Las transmisiones de datos se coordinan
con un protocolo de handshaking entre emisor y receptor: un evento origina el
siguiente, y así sucesivamente.

Ventajas: Permite la conexión de dispositivos de un amplio rango de velocidades


diferentes. Escalan mejor tanto con el número de dispositivos como con los
cambios tecnológicos en los mismos. No hay problemas de sesgo de reloj, por lo
que permite distancias más largas.

Inconvenientes: Es más lento, debido a la sobrecarga introducida para sincronizar


a emisor y receptor. Puede necesitar un cierto número de líneas de control
adicionales para implementar el protocolo. Es más difícil predecir el tiempo que va
a llevar una determinada transacción.

Los buses de E/S son habitualmente asíncronos.

10. Transferencia de datos.

 Cada transferencia de datos en el bus PCI es una transacción única.


 Transacción PCI: 1 fase de direccionamiento + 1 o más fases de datos.
 Todos los eventos se sincronizan en transiciones de bajada del reloj (mitad
de ciclo de reloj).
 Los dispositivos del bus interpretan las líneas del bus en los flancos de
subida (comienzo del ciclo del bus).

 Fase de direccionamiento
1. Maestro de bus identifica dispositivo destino (esclavo) y tipo de
transacción
2. Maestro de bus activa la señal FRAME#
3. Cada dispositivo conectado al bus PCI decodifica la dirección para
determinar si pertenece a su espacio de direcciones. El dispositivo al que
pertenece la dirección activa la señal DEV SEL#

 Fase de datos
1. Las señales C/BE# determinan el número de bytes habilitados para la
transmisión en el bus de datos
2. Las señales IRDY # y TRDY # controlan la transferencia. Los datos son
transmitidos solo cuando ambas señales están activadas.

 Duración y finalización de la transacción


1. El maestro de bus mantiene la señal FRAME# activada desde el
comienzo de la transacción hasta que está preparado para finalizar la fase
de datos.
2. La finalización de la transacción se indica mediante la desactivación de
FRAME# junto con la activación de IRDY #
3. Cuando el último dato ha sido transferido se libera el bus mediante la
desactivación de IRDY #
CONCLUSION

PCI lleva montándose en los PCs de todo el mundo durante más de una década.
Durante este tiempo ha sufrido evoluciones bastante reducidas por lo menos a
nivel del usuario doméstico. Ahora parece que los principales fabricantes han
decidido darle una vuelta a esta tecnología y eliminar el parche que supuso el
AGP. AGP no es otra cosa que una salida tecnológica que a día de hoy no es
necesaria. La mayor parte de las tarjetas AGP en la actualidad tiene una cantidad
tal de memoria local que el uso del AGP se convierte en algo anecdótico y muy
esporádico. Es el momento de que las tarjetas gráficas vuelvan a compartir el
mismo interfaz que utilizan el resto de tarjetas y si es con más capacidad y más
velocidad que mejor. Parece que este año 2003 se presenta realmente
revolucionario. Si todo sucede como se espera tendremos renovación del interfaz
de datos mediante Serial ATA, renovación del bus de periféricos con PCI-Express
y la aún más interesante revolución de los procesadores de 64 bits a nivel
doméstico
REFERENCIAS INFORMATIVAS O BIBLIOGRAFICAS

 Organización y arquitectura de computadores: William Stallings. Prentice

Hall.

 www.hardware12v.com/, Conocimientos PC, Tipos de buses: N/A; 2007,

10/03/2011

 es.kioskea.net/, Bus PCI: N/A; 2008, 10/03/2011

 es.wikipedia.org/, Peripheral Component Interconnect: N/A; 2004,

10/03/2011

 www.mailxmail.com/, Arquitectura de ordenadores, PCI: Fernando

Guerrero; 2004, 10/03/2011

 ael.110mb.com/informática/PCI1.doc/, Bus local PCI: N/A; 2005, 10/03/2011

También podría gustarte