Ya sabes qué es PCI Express, pero ¿conoces todas sus velocidades?

Ya sabes qué es PCI Express, pero ¿conoces todas sus velocidades?

Javier López

Desde el año pasado hemos visto mucha movilidad por parte de PCI SIG, y es que no quieren que se repitan los problemas y retrasos sufridos como con PCIe 4.0, así que han decidido pisar el acelerador. Ya terminado el estándar PCIe 5.0, están trabajando en los últimos detalles de PCIe 6.0, así que es un gran momento para ver y entender lo que supone en cuanto a velocidad, ancho de banda y carriles cada una de las versiones de PCI Express.

La realidad es que tanto en escritorio como en servidor, PCI Express se torna como la mejor opción para el rendimiento más puntero. AMD acaba de introducir PCIe 4.0 y el año que viene llegará su quinta versión a servidores para albergar nuevos dispositivos, algoritmos y enlaces.

La velocidad y latencia se están tornando vitales en sectores como HPC o IA, por lo que las características y versiones no van a dejar de sucederse en los respectivos años venideros.

Velocidad del PCI Express desde la versión 1.0 hasta la 5.0

PCI-SIG-LOGO

PCI Express tiene la única finalidad de ser usado como un bus local. La mayoría de desempeños en la actualidad se reducen a varios escenarios muy concretos:

  • Tarjetas gráficas.
  • FPGAs.
  • SSD de alta velocidad.
  • Extensores de SSD.
  • Tarjetas de sonido

Aunque tiene más usos, terminan por ser residuales y menos representativos, así que para saber que versión y velocidad necesitamos, vamos a conocer todas las versiones ya finalizadas hasta el momento de este bus.

Velocidades-PCIe

Como podemos ver, el gran salto se produjo de la versión 2.0 o 2.1 a la versión 3.0, donde la codificación se multiplicó por 13 y los gigatransfer casi se duplicaron,

Igualmente, los anchos de banda hicieron lo propio por cada carril, dejando una serie de velocidades distintas por cada versión:

  • PCIe 1.0 -> 2 Gbit/s (250 MB/s) por carril.
  • PCIe 2.0 -> 4 Gbit/s (500 MB/s) por carril.
  • PCIe 3.0 -> 7,9 Gbit/s (984 MB/s) por carril.
  • PCIe 4.0 -> 15,8 Gbit/s (1969,2 MB/s) por carril.
  • PCIe 5.0 -> 31,5 Gbit/s (3938,4 MB/s) por carril.

Cómo calcular manualmente la velocidad de cada línea PCIe

BW_Table

Aunque todos los datos están correctamente representados en este artículo, siempre viene bien conocer cómo los ingenieros calculan los anchos de banda para cada versión y línea. En realidad es bastante sencillo si tenemos los datos correctos, ya que todo se reduce a escoger una línea donde queremos saber su rendimiento, seleccionar sus Gigatransfer y multiplicarlo por la codificación de su correspondiente versión.

Esto nos dará el llamado pair o diferential pair, el cual viene expresado en MB/s. Ahora solo tendremos que multiplicar esta cifra por el número de líneas totales que queramos calcular, donde el dato que obtendremos será en GB/s y unidireccional.

Si queremos saber la bidireccionalidad del bus en concreto, multiplicaremos por dos el valor, ya que es síncrono. Falta por conocer la especificación final de PCIe 6.0, pero los primeros datos ya que vimos nos hacen pensar que duplicará de nuevo todos los valores manteniendo la codificación y donde será necesaria una nueva reestructuración de la parte eléctrica, al igual que ha pasado con PCIe 3.0 vs PCIe 4.0.

PCI-SIG-DevCon-2019_Briefing-Presentation_final_06 PCIe 6.0

Por lo tanto, la compatibilidad está asegurada, pero podríamos encontrarnos con el hecho de que los fabricantes no ofrezcan PCIe 6.0 en placas nativas con PCIe 5.0, y de paso hacernos pasar por caja una vez más.

Esto no está confirmado, de hecho este año tendrán las últimas reuniones para fijar detalles como estos, pero por lo filtrado, parece que el escenario será de nuevas placas base y no un upgrade por BIOS/UEFI a las que haya con PCIe 5.0.