Articulo de referencia

Interconexión Intel QuickPath

La interconexión Intel QuickPath ( QPI ) [ 1 ] [ 2 ] es una interconexión de procesador escalable desarrollada por Intel que reemplazó el bus frontal (FSB) en Xeon , Itanium y c...

La interconexión Intel QuickPath ( QPI ) [ 1 ] [ 2 ] es una interconexión de procesador escalable desarrollada por Intel que reemplazó el bus frontal (FSB) en Xeon , Itanium y ciertas plataformas de escritorio a partir de 2008. Aumentó la escalabilidad y el ancho de banda disponible. Antes del anuncio del nombre, Intel se refería a ella como Interfaz de Sistema Común ( CSI ). [ 3 ] Las versiones anteriores se conocían como Yet Another Protocol (YAP) y YAP+.

QPI 1.1 es una versión significativamente renovada introducida con Sandy Bridge-EP ( plataforma Romley ). [ 4 ]

QPI fue reemplazado por Intel Ultra Path Interconnect (UPI) en los procesadores Skylake -SP Xeon basados ​​en el socket LGA 3647. [ 5 ]

Fondo

Aunque a veces se le llama "bus", QPI es una estructura de interconexión escalable con capacidades de enrutamiento dinámico. Fue diseñada para competir con HyperTransport , que Advanced Micro Devices (AMD) había estado utilizando desde alrededor de 2003. [ 6 ] [ 7 ] Intel desarrolló QPI en su Centro de Diseño de Microprocesadores de Massachusetts (MMDC) por miembros de lo que había sido el Grupo de Desarrollo Alpha , que Intel había adquirido de Compaq y HP y que a su vez provenía originalmente de Digital Equipment Corporation (DEC). [ 8 ] Su desarrollo se había reportado ya en 2004. [ 9 ]

Intel lo implementó por primera vez en procesadores de escritorio en noviembre de 2008 en el Intel Core i7-9xx y el chipset X58 . Se lanzó en procesadores Xeon con nombre en clave Nehalem en marzo de 2009 y en procesadores Itanium en febrero de 2010 (nombre en clave Tukwila). [ 10 ]

Fue reemplazado por Intel Ultra Path Interconnect a partir de 2017 en las plataformas Xeon Skylake-SP . [ 11 ]

Implementación

QPI es un componente no central de la microarquitectura Nehalem de Intel .

El QPI es un elemento de una arquitectura de sistema que Intel denomina arquitectura QuickPath , la cual implementa lo que Intel llama tecnología QuickPath . [ 12 ] En su forma más simple, en una placa base de un solo procesador, se utiliza un único QPI para conectar el procesador al concentrador de E/S (por ejemplo, para conectar un Intel Core i7 a un X58 ). En instancias más complejas de la arquitectura, pares de enlaces QPI separados conectan uno o más procesadores y uno o más concentradores de E/S o concentradores de enrutamiento en una red en la placa base, lo que permite que todos los componentes accedan a otros componentes a través de la red. Al igual que HyperTransport, la arquitectura QuickPath asume que los procesadores tendrán controladores de memoria integrados y permite una arquitectura de acceso a memoria no uniforme (NUMA).

Cada QPI consta de dos enlaces de datos punto a punto de 20 carriles, uno en cada dirección ( dúplex completo ), con un par de reloj independiente en cada dirección, para un total de 42 señales. Cada señal es un par diferencial , por lo que el número total de pines es 84. Los 20 carriles de datos se dividen en cuatro "cuadrantes" de 5 carriles cada uno. La unidad básica de transferencia es el flit de 80 bits , que tiene 8 bits para la detección de errores, 8 bits para la cabecera de la capa de enlace y 64 bits para los datos. Un flit de 80 bits se transfiere en dos ciclos de reloj (cuatro transferencias de 20 bits, dos por ciclo de reloj). Los anchos de banda de QPI se anuncian calculando la transferencia de 64 bits (8 bytes) de datos cada dos ciclos de reloj en cada dirección. [ 8 ]

Aunque las implementaciones iniciales usan enlaces de cuatro cuadrantes únicos, la especificación QPI permite otras implementaciones. Cada cuadrante puede usarse de forma independiente. En servidores de alta confiabilidad, un enlace QPI puede operar en un modo degradado. Si una o más de las 20+1 señales fallan, la interfaz operará usando 10+1 o incluso 5+1 señales restantes, incluso reasignando el reloj a una señal de datos si el reloj falla. [ 8 ] La implementación inicial de Nehalem usó una interfaz completa de cuatro cuadrantes para lograr 25,6  GB/s (6,4 GT/s × 1 byte × 4), lo que proporciona exactamente el doble del ancho de banda teórico del FSB de 1600 MHz de Intel  usado en el chipset X48.

Aunque algunos procesadores Core i7 de gama alta exponen QPI, otros procesadores Nehalem "convencionales" para ordenadores de sobremesa y móviles, destinados a placas de un solo zócalo (por ejemplo, los procesadores LGA 1156 Core i3, Core i5 y otros procesadores Core i7 de las familias Lynnfield / Clarksfield y sucesoras), no exponen QPI externamente, porque estos procesadores no están diseñados para participar en sistemas de múltiples zócalos.

Sin embargo, QPI se utiliza internamente en estos chips para comunicarse con el " uncore ", que es parte del chip que contiene controladores de memoria, PCI Express del lado de la CPU y GPU, si está presente; el uncore puede o no estar en el mismo chip que el núcleo de la CPU, por ejemplo, está en un chip separado en el Clarkdale / Arrandale basado en Westmere . [ 13 ] [ 14 ] [ 15 ] [ 16 ] : 3

En los chips de un solo zócalo posteriores a 2009, comenzando con Lynnfield, Clarksfield, Clarkdale y Arrandale, las funciones tradicionales del puente norte están integradas en estos procesadores, que por lo tanto se comunican externamente a través de las interfaces más lentas DMI y PCI Express.

Por lo tanto, no es necesario incurrir en el gasto de exponer la interfaz del bus frontal (anterior) a través del zócalo del procesador. [ 17 ]

Aunque el enlace QPI núcleo-no núcleo no está presente en los procesadores Sandy Bridge de escritorio y móviles (como sí lo estaba en Clarkdale, por ejemplo), la interconexión de anillo interna entre los núcleos en el chip también se basa en los principios de QPI, al menos en lo que respecta a la coherencia de la caché . [ 16 ] : 10

Especificaciones de frecuencia

Al ser un circuito síncrono, el QPI opera a una frecuencia de reloj de 2,4  GHz, 2,93  GHz, 3,2  GHz, 3,6  GHz, 4,0  GHz o 4,8  GHz (las frecuencias de 3,6  GHz y 4,0  GHz se introdujeron con la plataforma Sandy Bridge-E/EP y la de 4,8  GHz con la plataforma Haswell-E/EP). La frecuencia de reloj para un enlace específico depende de las capacidades de los componentes en cada extremo del enlace y de las características de la señal en la placa de circuito impreso. Los procesadores Core i7 9xx estándar están limitados a una  frecuencia de 2,4 GHz con los relojes de referencia estándar.

Las transferencias de bits se producen tanto en el flanco ascendente como en el descendente del reloj, por lo que la velocidad de transferencia es el doble de la velocidad del reloj.

Intel describe el rendimiento de datos (en GB/s) contabilizando únicamente la carga útil de datos de 64 bits en cada flit de 80 bits. Sin embargo, Intel duplica el resultado porque el par de enlaces de envío y recepción unidireccionales puede estar activo simultáneamente. Así, Intel describe un par de enlaces QPI de 20 carriles (envío y recepción) con una  frecuencia de reloj de 3,2 GHz con una velocidad de datos de 25,6  GB/s. Una frecuencia de reloj de 2,4  GHz produce una velocidad de datos de 19,2  GB/s. En términos más generales, según esta definición, un QPI de 20 carriles con dos enlaces transfiere ocho bytes por ciclo de reloj, cuatro en cada dirección.

La tasa se calcula de la siguiente manera:

3,2 GHz
× 2 bits/Hz (doble velocidad de datos)
× 16(20) (bits de datos/ancho del enlace QPI)
× 2 (envío y recepción unidireccionales que funcionan simultáneamente)
÷ 8 (bits/byte)
= 25,6 GB/s

capas de protocolo

QPI se especifica como una arquitectura de cinco capas , con capas separadas de física, enlace, enrutamiento, transporte y protocolo. [ 1 ] En dispositivos destinados únicamente al uso de QPI punto a punto sin reenvío, como los procesadores Core i7-9xx y Xeon DP, la capa de transporte no está presente y la capa de enrutamiento es mínima.

capa física
La capa física comprende el cableado propiamente dicho y los transmisores y receptores diferenciales, además de la lógica de nivel más bajo que transmite y recibe la unidad de la capa física. La unidad de la capa física es el "phit" de 20 bits. La capa física transmite un "phit" de 20 bits mediante un único flanco de reloj en 20 carriles cuando todos están disponibles, o en 10 o 5 carriles cuando el QPI se reconfigura debido a un fallo. Cabe destacar que, además de las señales de datos, se envía una señal de reloj del transmisor al receptor (lo que simplifica la recuperación del reloj a costa de pines adicionales).
Capa de enlace
La capa de enlace se encarga de enviar y recibir flits de 80 bits. Cada flit se envía a la capa física como cuatro phits de 20 bits. Cada flit contiene un CRC de 8 bits generado por el transmisor de la capa de enlace y una carga útil de 72 bits. Si el receptor de la capa de enlace detecta un error de CRC, notifica al transmisor mediante un flit en el enlace de retorno del par, y el transmisor reenvía el flit. La capa de enlace implementa el control de flujo mediante un esquema de crédito/débito para evitar el desbordamiento del búfer del receptor. La capa de enlace admite seis clases diferentes de mensajes para permitir que las capas superiores distingan los flits de datos de los mensajes que no son de datos, principalmente para mantener la coherencia de la caché. En implementaciones complejas de la arquitectura QuickPath, la capa de enlace se puede configurar para mantener flujos y control de flujo separados para las diferentes clases. No está claro si esto es necesario o si se implementa para implementaciones de un solo procesador y de doble procesador.
Capa de enrutamiento
La capa de enrutamiento envía una unidad de 72 bits compuesta por una cabecera de 8 bits y una carga útil de 64 bits. La cabecera contiene el destino y el tipo de mensaje. Al recibir la unidad, la capa de enrutamiento consulta sus tablas de enrutamiento para determinar si ha llegado a su destino. En caso afirmativo, se entrega a la siguiente capa superior. De lo contrario, se envía a través del QPI de salida correcto. En dispositivos con un solo QPI, la capa de enrutamiento es mínima. En implementaciones más complejas, las tablas de enrutamiento de la capa de enrutamiento son más complejas y se modifican dinámicamente para evitar fallos en los enlaces QPI.
capa de transporte
La capa de transporte no es necesaria ni está presente en dispositivos diseñados exclusivamente para conexiones punto a punto. Esto incluye el Core i7. La capa de transporte envía y recibe datos a través de la red QPI desde sus pares en otros dispositivos que pueden no estar conectados directamente (es decir, los datos pueden haber sido enrutados a través de un dispositivo intermedio). La capa de transporte verifica que los datos estén completos y, de no ser así, solicita la retransmisión a su par.
capa de protocolo
La capa de protocolo envía y recibe paquetes en nombre del dispositivo. Un paquete típico es una fila de la caché de memoria. La capa de protocolo también participa en el mantenimiento de la coherencia de la caché mediante el envío y la recepción de mensajes relevantes.

Véase también

Referencias

  1. 1 2 "Introducción a la interconexión Intel QuickPath" (PDF) . Intel Corporation. 30 de enero de 2009. Consultado el 14 de junio de 2011 .
  2. Informe de DailyTech archivado el 17 de octubre de 2013 en Wayback Machine , consultado el 21 de agosto de 2007.
  3. Eva Glass (16 de mayo de 2007). "Se revela el nombre del CSI de Intel: Lento, lento, rápido, rápido, lento" . The Inquirer . Archivado del original el 10 de junio de 2012. Recuperado el 13 de septiembre de 2013 .
  4. David Kanter (2011-07-20). "La estrategia de Intel de rápido crecimiento ha evolucionado" . Realworldtech.com . Consultado el 21 de enero de 2014 .
  5. SoftPedia: Intel planea reemplazar Xeon con su nueva superplataforma "Purley" basada en Skylake.
  6. Gabriel Torres (25 de agosto de 2008). "Todo lo que necesitas saber sobre la interconexión QuickPath (QPI)" . Hardware Secrets . Consultado el 23 de enero de 2017 .
  7. Charlie Demerjian (13 de diciembre de 2005). "Intel se enfurece por Tanglewood" . The Inquirer . Archivado del original el 3 de septiembre de 2010. Consultado el 13 de septiembre de 2013 .
  8. 1 2 3 David Kanter (28 de agosto de 2007). "La interfaz de sistema común: la interconexión futura de Intel" . Real World Tech . Recuperado el 14 de agosto de 2014 .
  9. Eva Glass (12 de diciembre de 2004). "El procesador Whitefield de Intel adopta la forma IA-32 de cuatro núcleos" . The Inquirer . Archivado del original el 24 de mayo de 2009. Consultado el 13 de septiembre de 2013 .
  10. David Kanter (5 de mayo de 2006). "Se confirma que el Tukwila de Intel es de cuatro núcleos" . Real World Tech . Archivado del original el 10 de mayo de 2012. Consultado el 13 de septiembre de 2013 .
  11. "Descripción técnica general de la familia de procesadores Intel® Xeon® Scalable" .
  12. "Intel presenta el primer chip de 32 nm de la industria y la arquitectura de microprocesador Nehalem de próxima generación" . Archivado del original el 2 de enero de 2008. Consultado el 31 de diciembre de 2007 .
  13. Chris Angelini (7 de septiembre de 2009). "QPI, memoria integrada, PCI Express y LGA 1156: Intel Core i5 y Core i7: la obra maestra de Intel para el mercado general" . Tomshardware.com . Consultado el 21 de enero de 2014 .
  14. Publicado el 25 de enero de 2010 por Richard Swinburne (25-01-2010). "Característica: rendimiento de los gráficos Intel GMA HD" . bit-tech.net . Consultado el 21-01-2014 .{{cite web}}: CS1 maint: nombres numéricos: lista de autores ( enlace )
  15. "Pruebas comparativas (de nuevo) del chip CPU y GPU Intel Clarkdale de 32 nm - CPU - Artículo" . HEXUS.net. 25 de septiembre de 2009. Consultado el 21 de enero de 2014 .
  16. 1 2 Oded Lempel (28-07-2013). "Familia de procesadores Intel Core de segunda generación: Intel Core i7, i5 e i3" (PDF) . hotchips.org . Archivado del original (PDF) el 29-07-2020 . Recuperado el 21-01-2014 .
  17. Lily Looi, Stephan Jourdan, Transición de las microarquitecturas de próxima generación de Intel® (Nehalem y Westmere) al mercado general. Archivado el 2 de agosto de 2020 en Wayback Machine , Hot Chips 21, 24 de agosto de 2009.
  • Introducción a la interconexión Intel QuickPath
  • Descripción general de Intel QuickPath Interconnect (archivado el 2 de febrero de 2014 en Wayback Machine , PDF)
  • Lo que necesitas saber sobre la CPU Nehalem de Intel , Ars Technica , 9 de abril de 2008, por Jon Stokes
  • Primer vistazo a la microarquitectura de Nehalem: Bus QPI. Archivado el 14 de mayo de 2016 en Wayback Machine , 2 de noviembre de 2008, por Ilya Gavrichenkov.
  • Interfaz de sistema común: la interconexión futura de Intel , 28 de agosto de 2007, por David Kanter