¿Por qué la interfaz PCIe se divide en diferentes carriles?

¿Por qué la interfaz PCIe se divide en diferentes carriles?

Rodrigo Alonso

La interfaz PCI-Express, también llamada PCIe o Peripheral Component Interconnect Express, puede ser una especificación bastante complicada. Cuando tu PC arranca, PCIe es lo que determina los dispositivos que están conectados a la placa base, identifica los enlaces entre cada uno de ellos creando un mapa de tráfico, y negocia el ancho de banda de cada enlace. Por este motivo existen los carriles PCIe, mediante un proceso llamado PCIe lane segmentation, y en este artículo te vamos a explicar por qué se ha diseñado de esta manera.

Una conexión PCIe consiste en uno o más carriles de transmisión de datos (hasta 16 en este momento) conectados en serie. Cada uno de los carriles consiste en dos pares de cables, una pareja para transmitir y otra para recibir los datos, y en un solo zócalo PCI-Express puede haber 1, 4, 8 o 16 carriles (por eso siempre se habla de PCIe x16, por ejemplo).

PCIe carriles

¿Cómo funcionan los carriles PCIe?

PCIe es un protocolo de varias capas: hay una capa de transacción, otra de enlace de datos y luego una capa física de conexión. La capa de enlace de datos se subdivide a su vez para incorporar otra capa más llamada MAC, que es la de control de acceso a los medios. Cada carril consta de dos pares diferenciales unidireccionales que funcionan a 2,5, 5, 8 o 16 Gbit/s según las capacidades negociadas, mientras que por otro lado la transmisión y la recepción de datos son pares diferenciales separados, lo que suma un total de cuatro cables de datos por carril.

Cada carril es una conexión independiente entre la controladora PCI del conjunto de chips del procesador (Southbridge) o el propio procesador (que casi siempre es la ranura de la tarjeta gráfica) y la tarjeta de expansión conectada. El ancho de banda se escala de manera lineal, por lo que una conexión de cuatro carriles tendrá el doble de ancho de banda que una de dos. Dependiendo de los requisitos de ancho de banda de la tarjeta de expansión conectada, es posible que la ranura deba dimensionarse en consecuencia, y por eso verás que hay placas base con diferentes tamaños en sus zócalos PCIe.

Carriles PCIe

Por lo tanto, un zócalo físico PCIe x16 puede funcionar con tarjetas de expansión que necesiten un ancho de banda x1, x4, x8 y x16, y de hecho puede hacer que una tarjeta de expansión conectada funcione a x16, x8, x4, y x1 según necesite. De la misma manera, si un zócalo es PCIe x8 no puede hacer funcionar una tarjeta de expansión que requiera PCIe x16. Para que todo esto sea todavía más confuso, la interfaz PCI-Express tiene diferentes versiones (actualmente solo PCIe 3.0 y PCIe 4.0).

Buses y ancho de banda teórico

En la siguiente tabla podéis ver qué ancho de banda máximo teórico tiene cada uno de los buses que podemos encontrar en un PC:

BUSAncho de banda
PCI1056 MBps
AGP 8x2.1 GBps
PCIe 1.0 / x41 GBps
PCIe 1.0 / x82 GBps
PCIe 1.0 / x164 GBps
PCIe 2.0 / x42 GBps
PCIe 2.0 / x84 GBps
PCIe 2.0 / x168 GBps
PCIe 3.0 / x11.97 GBps
PCIe 3.0 / x43.94 GBps
PCIe 3.0 / x87.88 GBps
PCIe 3.0 / x1615.75 GBps
PCIe 4.0 / x13.94 GBps
PCIe 4.0 / x47.88 GBps
PCIe 4.0 / x815.75 GBps
PCIe 4.0 / x1631.5 GBps
PCIe 5.0 / x1663 GBps
Firewire 400/800400/800 Mbps
USB 1.012 Mbps
USB 2.0480 Mbps
USB 3.04.8 Gbps
USB 3.110 Gbps​
Gigabit Ethernet1 Gbps
IDE (ATA 100)800 MBps
IDE (ATA 133)1064 MBps
SATA1.5 Gbps
SATA III3 Gbps
SATA 66 Gbps

¿Por qué importan los carriles PCIe y para qué se usan?

Como hemos visto, el ancho de banda de un zócalo PCI-Express de la placa base depende de su conexión física, ya que cada carril tiene cuatro pares de cables de transmisión de datos. Mediante el concepto de PCIe lane segmentation, esto sirve literalmente para que las controladoras puedan segmentar, organizar y en función de ello asignar ancho de banda a los dispositivos que conectamos al PC de una manera ya no solo ordenada, sino también adecuada.

Así, si conectamos al PC una tarjeta gráfica que utiliza una interfaz PCI-Express 3.0 x16, la controladora sabrá automáticamente qué ancho de banda y recursos tendrá que asignarle para que ese dispositivo funcione adecuadamente.

Algunos ejemplos que podemos poner son, por ejemplo, las funciones de carriles PCIe que gestiona el procesador: gráfica integrada, zócalo PCIe para la tarjeta gráfica, zócalos U.2 de dispositivos de almacenamiento o incluso la tarjeta de red en algunas placas base de categoría entusiasta. Por su parte, los carriles PCIe que gestiona el chipset de la placa base son los relacionados con los puertos SATA, tarjeta de sonido integrada, controladora RAID integrada, tarjeta de red integrada, todos los demás zócalos PCIe salvo el primero, puertos Thunderbolt, puertos USB, etc.