PCI Express, guía para entender el bus y sus variantes

PCI Express es un estándar de comunicación para computadoras pensado como bus local de Entrada/Salida. Lo verás abreviado como “PCI-E” o “PCIe” y se utiliza tanto para conexión interna en los circuitos integrados de las placas base como para conectar tarjetas externas pinchadas en los slots correspondientes.

La norma PCI Express es responsabilidad del “Grupo de Interés Especial de PCI” (PCI-SIG) y el objetivo de su desarrollo era que reemplazara por completo como estándar único a buses anteriores como ISA, AGP o el mismo PCI en el que está basado. PCIe ofrece una ventaja fundamental frente a PCI al estar estructurado como carriles punto a punto, full-duplex, trabajando en serie. Básicamente, cada puerto PCIe individual y sus tarjetas instaladas pueden obtener el máximo rendimiento del bus, frente al PCI más lento y saturado cuando el equipo monta múltiples conectores.

Obviamente se trata de un estándar fundamental en la estructura actual de las computadoras, porque es utilizado para comunicación de las tarjetas gráficas y puede usarse para otro tipo de tarjetas de expansión, de red, sonido, edición de vídeo y en los últimos tiempos para conectar las SSD más rápidas del mercado. Aún es pronto porque el mercado no está maduro y la “guerra de las memorias” han cortado la bajada de precio de soluciones de estado sólido, pero es probable que PCI Express termine acabando también en un futuro con los puertos SATA que utilizamos para discos duros o SATA, imponiéndose como interfaz única.

Versiones PCI Express

La versión más utilizada actualmente es la v3.0. Una mejora sobre la PCI 1.0 original que cuadriplica su velocidad de transferencia hasta 8 GT/s; su ancho de banda total hasta 126 Gbit/s (15,8 GB/s) y su ancho de banda por carril hasta 15,8 Gbit/s (1969,2 MB/s).

Recientemente, el consorcio PCI-SIG, ha anunciado las especificaciones finales de la próxima generación PCI Express Gen 4.0. Una versión que ofrecerá un mayor rendimiento que el actual PCIe 3.0, aumentando el número de canales por el que pasa la señal para duplicar el ancho de banda hasta 16 Gigatransferencias por segundo.

También ofrecerá menor latencia, capacidades superiores RAS, mejora de la virtualización de E / S, para acometer el aumento de necesidades de la industria especialmente en el mercado gráfico con videojuegos realmente fotorrealistas, pero también en aplicaciones profesionales con grandes cargas de trabajo y ancho de banda como las tecnologías relacionadas con inteligencia artificial. Otra de las mejoras llegará del menor tamaño físico del bus, lo que permitirá tarjetas más pequeñas y no en los monstruosos tamaños que podemos encontrar -por ejemplo- en las gráficas dedicadas de gama alta actuales.

Los primeros productos bajo PCI-Express Gen 4.0 estarían disponibles en 2019. El consorcio responsable también están trabajando en la siguiente versión de la norma, PCI Express Gen 5.0, otro gran avance sobre las anteriores versiones del estándar con un aumento de rendimiento sustancial, usando una frecuencia de 32 GHz hasta alcanzar un ancho de banda de 128 GB/s en full duplex, duplicando el de PCI Express 4.0 y a su vez cuadriplicando la de PCI Express 3.0.

PCIe Gen 5.0 llegará con cierto retraso sobre lo previsto. La organización lo achaca “al estancamiento del mercado PC”. Tengamos en cuenta que la actual PCI Express 3.0 está disponible desde 2010 y desde entonces las necesidades de la industria han aumentando especialmente en el mercado gráfico, pero también en otras aplicaciones con grandes cargas de trabajo y ancho de banda como las tecnologías relacionadas con inteligencia artificial.

Tipos PCI Express

PCIe ha pasado por varias revisiones como hemos visto, pero todas tienen un denominador común, usan las mismas conexiones físicas que verás en cuatro tamaños primarios: x1, x4, x8 y x16. También existen puertos x32, pero son extremadamente raros y por lo general no se ven en hardware de consumo.

Los diferentes tamaños físicos permiten mover diferentes cantidades de conexiones y datos simultáneos a la placa base. Cuanto mayor sea el puerto, mayor será su capacidad máxima. Estas conexiones se conocen coloquialmente como “líneas” o “carriles”, donde cada carril PCI-E está compuesta de dos pares de señalización, uno para el envío de datos y el otro para la recepción. En la práctica, el mayor número de carriles permiten ganar en rendimiento y capacidad y los datos podrán fluir más rápidos entre el periférico y el resto del sistema informático.

En la versión 3.0 de PCI Express (la más usada actualmente), el rendimiento máximo teórico por línea es de 8 GT/s que en la práctica se traduce a algo menos de 1 Gbyte por segundo por carril. No todos los dispositivos necesitan la misma capacidad y aunque no hay directrices establecidas sobre qué tipo de slot utilizar, podemos señalar algunos ejemplos prácticos de su uso.

Para una tarjeta de sonido común o una Wi-Fi es suficiente con una PCI-E x1, mientras que una tarjeta de red de gama alta, controladores RAID o expansores de USB 3, utilizan las x4 o x8. Las tarjetas gráficas suelen utilizar x16 para disponer de la máxima capacidad de transferencia. Las SSD en formato M.2 para PCIe se suelen conectar a puertos x4, pero todo indica que se le va a quedar pequeño en próximas generaciones.

Consideraciones sobre el tipo PCI-E y carriles

Una de las partes de la configuración PCI-E que pueden confundir a un consumidor es que un puerto de tamaño x16 puede no ofrecer el máximo de carriles que permite la norma. La explicación es que mientras PCI-E puede acomodar conexiones individuales en cantidades ilimitadas, existe un límite práctico en el rendimiento del chipset de la placa.

Ello nos lleva a una conclusión que seguro conoces: no todas las placas base son iguales. Las de gama económica pueden contar con slots x16 pero cuyo rendimiento equivale a x8 por ejemplo. Placas de gama alta para PCs dedicados a juegos o estaciones de trabajo profesionales, suelen tener varios slots x16 que además de tamaño aprovechan al máximo el rendimiento y ancho de banda que permite la norma.

Si colocas una gráfica de gama alta (especialmente en sistemas multigráfica SLI o Crossfire) en un slot que -aunque tenga un tamaño x16- no ofrezca el máximo de líneas, puedes tener un cuello de botella y no obtener su máximo rendimiento. Otro aspecto a considerar es que muchas placas con 2 slots x16 solo ofrecen el máximo de líneas si utilizas una de ellas, bajando a x8 si empleas las dos conjuntamente.

Comentar que tarjetas más pequeñas x1 y x4 pueden instalarse en las x8 y x16 (obviamente no al revés). Además, algunas x8 tienen un conjunto de pines diferentes y no pueden instalarse en ranuras x16.

En definitiva, detalles a tener en cuenta a la hora de comprar tu placa base, un componente fundamental al que hay que prestar atención más allá de conocer el socket y chipset, como hemos visto en este acercamiento al que se ha convertido en su bus local de Entrada/Salida más importante: PCI Express.

Fuente | muycomputer.com

8 Replies to “PCI Express, guía para entender el bus y sus variantes”

  1. Maikel

    los 2 asuntos importantes de los PCIe son
    el “X”, y las lineas
    ese chipset tiene 6 lineas para PCIe x16 gen 2, que supongo construyen las placas con un solo puerto PCIe

  2. Maikel

    Sin embargo, en buena parte de las aplicaciones, digase juegos, no hay mucha diferencia entre un PCIe gen2 y un gen3, si se tiene una tarjeta con suficietne memoria o el juego no usa mucha memoria grafica, pues el flujo de datos es menor.

      • Maikel

        Son dos cosas distintas el ancho de banda y la cantdad de memoria que se use.
        Puedes llenar la memoria y acceder luego pocos datos de vez en cuando
        O tener unos pocos datos (suficientes) y leerlos muy optimizadamente y de manera intensa
        Operaciones graficas que necesitan de buen ancho de banda es todo lo que tiene que ver cn texturas, filtrados anisotropicos, antialiasing de mucho multimuestreo, los motores que usan render diferido (la mayoria de los modernos). Esto del acho de banda y acceso a la memoria es lo que limita fundamentalmente a los graficos integrados, pues la memoria es la principal y el bus es el mismo que el del CPU y se tiene que fajar, ademas de ser mas “estrecho”. En los Iris Pro, INTEL ayuda un poco en con la memoria eDRAM dedicada que le incorpora.
        Cuanto ancho de banda de memoria grafica se esta usando en un momento dado, no conosco ningun soft de monitoreo que lo diga. A lo mas he visto algunas pruebas sinteticas que hacen una prueba y maximizan la operacion y te dan un resultado al final.
        En mis cosas de trabajo, programo usando OpenCL con las trajetas graficas, los softwares de desarrollo que dan AMD e NVIDIA, creo que el de INTEL no, cuando estoy en modo analisis de un codigo me dicen un estimado de cuanto ancho de banda usa al acceder a memoria, pues pude estimar cuantos kernels se pueden ejecutar simultaneamente y segu las operaciones de acceso a memoria que se hacen, multiplica y lo saca por ahi. Como acceder a memoria en una tarjeta graficas es “leento” (latencia elevada, bastante mayor incluso que la RAM, los datos demoran en accederse, pero por el gran ancho de banda cuando vienen los datos al GPU lo que llega es una gran cantidad de un solo viaje) se debe tener cuidado como se hace, o puuede obteners menos rendiminto del posible por esperas por los datos

        • Marshmello

          ok. te lo preguntaba porque mi H110 es gama económica y queria saber si la targeta estaba perdiendo rendimiento con mi board, nunca pense hacereme de una board de gama economica porque juego mucho, practicamente me la regalaron y como dice el dicho, “..a caballo regalado….

        • yo(el primero)

          @maikel… no lo has visto ni lo vas a ver, es que estás pensando en el ancho de banda como un volumen cuando realmente es un flujo
          no es una propiedad intrínseca como te lo ponen las publicidades, es una resultante, lo más que puede hacer algún software es a partir de un punto controlar la cantidad de datos de tráfico (medir el tamaño?) y después de un plazo, midiendo el tiempo darte el ancho de banda estimado en algún momento dentro de ese plazo, pero el actual, tendría que la tarjeta incorporar algún… registro? intermedio que no creo que lo vayan a implementar ya que se sumaría a latencia en la comunicación con el gpu

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *