Breve introducción a PCI Express...

 

 

 

 

A principios de los 90 Intel desarrolla el estándar PCI logrando incrementar el rendimiento de la arquitectura de bus de la epoca y soporte multiprocesador. Posteriormente fue adaptado por la industria como un estándar administrado por el PCI SIG (PCI Special Interest Group).

 

PCI pronto reemplazó los buses anteriores como EISA, VL y Micro Channel y fue la tecnología de interconexión local durante la última decada. Con un ancho de banda de 32/64-bits y una frecuencia de bus de 33/64 MHz. Hoy en día se puede lograr una tasa de transferencia de 133 MB/s a 512 MB/s.

 

Con el aumento de necesidad de ancho de banda  de los dispositivos de E/S, la limitación del PCI era inevitable y se ha llegado a un punto donde el incrementar la performance en una arquitectura de bus paralelo acarreaba demasiadas desventajas (ruido en el bus, costo, delay skew...)

 

PCI Express (PCIe) , desarrollado tambien por Intel, utiliza una arquitectura de canales serie punto a punto.


En el mundo de PCI Express, el recurso compartido deja de serlo el bus para pasar a serlo el switch. Cada dispositivo en el sistema tiene un acceso directo y exclusivo al switch, la conexión de cada dispositivo con el switch se denomina enlace (link).

 

 



PCI

PCI Express

 

 

Cada enlace está compuesto de uno o mas lanes donde cada lane es capaz de transferir en ambas direcciones simultáneamente.

Esta comunicación full duplex es posible debido a que cada lane utiliza un par de señales de recepción y otro par de transmisión (cuatro hilos) ambos de tensión diferencial.

 

 

 

 

Una de las caracteristicas de PCIe  es que se pueden integrar multiples lanes (es decir, ampliar el ancho de banda) para formar un unico enlace.

 

Las tarjetas y ranuras PCI Express se definen por su número de lanes que forman el enlace, normalmente uno, cuatro, ocho o dieciséis lanes dando lugar a configuraciones llamadas x1, x2, x4, x8, x12, x16. La notación x1, x2, x4  se refiere al número de lanes disponibles o ancho del bus.


 

 

Un simple lane en PCI-Express ofrecerá inicialmente una velocidad de 2,5 Gbits/s en cada dirección.

Cada enlace puede tener un maximo de 32 lanes obteniendo en este caso un ancho de banda con una tasa de transferencia de 8 GB/s.

Esto representa una considerable mejora de la tasa de transferencia del actual PCI

 

 

 

 

En PCIe cada dispositivo esta conectado al switch. Este recurso compartido rutea el tráfico del bus y establece conexiones punto a punto entre cualquier par de dispositivos en el sistema. Esta comunicación está dividida en paquetes discretos de datos que el switch rutea. La CPU puede comunicarse con cualquier dispositivo PCIe estableciendo un enlace de comunicación a traves del switch.

A diferencia de las antiguas tecnologías de arquitectura de buses paralelos, PCI Express garantiza a cada dispositivo su propio ancho de banda y al centralizar el ruteo de tráfico y la gestion de recursos en el switch, se pueden priorizar paquetes de manera que las aplicaciones en tiempo real pueden obtener un acceso inmediato al switch.

 Otras caracteristicas de PCI Express:

- Permite conexión en caliente (hot-plug)
- Permite cambio en caliente (hot-swap)
- Gestión integrada de errores.
- Implementa funciones de ahorro de energía.

Aunque no hay compatibilidad hacia atrás respecto al hardware, se mantiene una compatibilidad con PCI en relacion al software.

El sistema operativo puede bootear y utilizar los dispositivos PCIe sin realizar modificaciones en los mismos.

 

Para utlizar las caracteristicas inherentes al estandar PCI Express, como gestion de errores o funciones de ahorro de energia, el sistema operativo debe ser capaz de hacerlo directamente.  Si esto no es así, se reconocen las interrupciones PCI existenes y los drivers permanecen sin alteraciones. Los primeros 256 bytes de espacio de  configuración son idénticos a los registros PCI actuales, y debido a que el sistema operativo ve al switch PCI express como un bridge PCI virtual incluso viejos sistemas operativos pueden configurar dispositivos PCI express.

Sin embargo la BIOS si debe contar con soporte para PCI Express, ya que estos dispositivos requieren un espacio de configuración relativamente grande.

 

La velocidad superior del PCI-Express permitirá reemplazar casi todos los demás buses, AGP y PCI incluidos. La idea de Intel es tener en un futuro un solo controlador PCI-Express comunicándose con todos los dispositivos.

El bus PCI Express está todavía en su infancia (2006) y el PCI aún se mantendrá un tiempo, mientras tanto podremos ver al PCI Express coexistir con el PCI

 

TGA Ingeniería y Electrónica