Implementaciones de microprocesadores celulares - Cell microprocessor implementations
El primer microprocesador Cell comercial , el Cell BE, fue diseñado para Sony PlayStation 3. IBM diseñó el PowerXCell 8i para su uso en la supercomputadora Roadrunner .
Implementación
Celda de la primera edición en CMOS de 90 nm
IBM ha publicado información sobre dos versiones diferentes de Cell en este proceso, una muestra de ingeniería temprana designada DD1 y una versión mejorada designada DD2 destinada a producción.
| Designacion | Muere área | Primero revelado | Mejora |
|---|---|---|---|
| DD1 | 221 mm 2 | ISSCC 2005 | |
| DD2 | 235 mm 2 | Cool Chips Abril de 2005 | Núcleo de PPE mejorado |
La principal mejora en DD2 fue un pequeño alargamiento de la matriz para acomodar un núcleo de PPE más grande, que se informa que "contiene más recursos de ejecución SIMD / vector". Alguna información preliminar publicada por IBM hace referencia a la variante DD1. Como resultado, algunas versiones periodísticas tempranas de las capacidades de Cell ahora difieren del hardware de producción.
Plano de la celda
El material de Powerpoint que acompaña a una presentación de STI dada por el Dr. Peter Hofstee], incluye una fotografía del dado de la celda DD2 sobredimensionado con límites de unidades funcionales que también están subtituladas por su nombre, que revela el desglose del área de silicio por unidad de función de la siguiente manera:
| Unidad de función celular | Zona (%) | Descripción |
|---|---|---|
| Interfaz XDR | 5.7 | Interfaz a la memoria del sistema Rambus |
| controlador de memoria | 4.4 | Administra la memoria externa y la caché L2 |
| Caché de 512 KiB L2 | 10,3 | Memoria caché para el PPE |
| Núcleo del PPE | 11,1 | Procesador PowerPC |
| prueba | 2.0 | "Lógica de prueba y decodificación" no especificada |
| BEI | 3.1 | Procesadores de enlace de bus de interconexión de elementos |
| SPE (cada uno) × 8 | 6.2 | Elemento de coprocesamiento sinérgico |
| Controlador de E / S | 6.6 | Lógica de E / S externa |
| Rambus FlexIO | 5.7 | Señalización externa para pines de E / S |
Plano de planta SPE
Los ingenieros de IBM, incluido Peter Hofstee , el arquitecto jefe de IBM del elemento de procesamiento sinérgico, han revelado detalles adicionales sobre la implementación de SPE interna , en una publicación académica de IEEE.
Este documento incluye una fotografía del SPE de 2,54 × 5,81 mm, implementado en SOI de 90 nm . En esta tecnología, el SPE contiene 21 millones de transistores de los cuales 14 millones están contenidos en matrices (un término que presumiblemente designa los archivos de registro y la tienda local) y 7 millones de transistores son lógicos. Esta fotografía está sobredibujada con los límites de las unidades funcionales, que también están subtituladas por su nombre, lo que revela el desglose del área de silicio por unidad de función de la siguiente manera:
| Unidad de función SPU | Zona (%) | Descripción | Tubo |
|---|---|---|---|
| precisión simple | 10.0 | unidad de ejecución FP de precisión simple | incluso |
| Precisión doble | 4.4 | unidad de ejecución FP de doble precisión | incluso |
| simple fijo | 3,25 | unidad de ejecución de punto fijo | incluso |
| control de problemas | 2.5 | alimenta unidades de ejecución | |
| macro hacia adelante | 3,75 | alimenta unidades de ejecución | |
| GPR | 6.25 | archivo de registro de propósito general | |
| permutar | 3,25 | permutar unidad de ejecución | impar |
| rama | 2.5 | unidad de ejecución de rama | impar |
| canal | 6,75 | interfaz de canal (tres bloques discretos) | impar |
| LS0 – LS3 | 30,0 | cuatro bloques de 64 KiB de tienda local | impar |
| MMU | 4,75 | unidad de gestión de memoria | |
| DMA | 7.5 | unidad de acceso directo a memoria | |
| BIU | 9.0 | unidad de interfaz de bus | |
| RTB | 2.5 | bloque de prueba integrado de matriz (ABIST) | |
| ATO | 1,6 | unidad atómica para actualizaciones atómicas de DMA | |
| media pensión | 0,5 | oscuro |
Comprender las canalizaciones de despacho es importante para escribir código eficiente. En la arquitectura de SPU, dos instrucciones pueden ser enviados (iniciado) en cada ciclo de reloj usando tubos de despacho designadas incluso y impar . Los dos tubos proporcionan diferentes unidades de ejecución, como se muestra en la tabla anterior. Cuando IBM particionó esto, la mayoría de las instrucciones aritméticas se ejecutan en la tubería par , mientras que la mayoría de las instrucciones de memoria se ejecutan en la tubería impar . La unidad de permutación está estrechamente asociada con las instrucciones de memoria, ya que sirve para empaquetar y descomprimir estructuras de datos ubicadas en la memoria en el formato de múltiples operandos SIMD en el que la SPU calcula de manera más eficiente.
A diferencia de otros diseños de procesador que proporcionan distintos conductos de ejecución, cada instrucción SPU solo se puede enviar en un conducto designado. En diseños de la competencia, se podría diseñar más de una tubería para manejar instrucciones extremadamente comunes como agregar , lo que permite que más de dos o más de estas instrucciones se ejecuten simultáneamente, lo que puede servir para aumentar la eficiencia en flujos de trabajo desequilibrados. De acuerdo con la filosofía de diseño extremadamente espartana, para la SPU no hay unidades de ejecución con aprovisionamiento múltiple.
Comprender las limitaciones del diseño restrictivo de dos conductos es uno de los conceptos clave que un programador debe comprender para escribir código SPU eficiente en el nivel más bajo de abstracción. Para los programadores que trabajan en niveles más altos de abstracción, un buen compilador equilibrará automáticamente la concurrencia de la canalización siempre que sea posible.
Potencia y rendimiento SPE
Según lo probado por IBM bajo una gran carga de trabajo de transformación e iluminación [IPC promedio de 1.4], el perfil de rendimiento de esta implementación para un solo procesador SPU se califica de la siguiente manera:
| Voltaje (v) | Frecuencia (GHz) | Potencia (W) | Die temp. (° C) |
|---|---|---|---|
| 0,9 | 2.0 | 1 | 25 |
| 0,9 | 3,0 | 2 | 27 |
| 1.0 | 3.8 | 3 | 31 |
| 1.1 | 4.0 | 4 | 38 |
| 1.2 | 4.4 | 7 | 47 |
| 1.3 | 5,0 | 11 | 63 |
La entrada para el funcionamiento a 2,0 GHz a 0,9 V representa una configuración de baja potencia. Otras entradas muestran la frecuencia de funcionamiento estable máxima alcanzada con cada incremento de voltaje. Como regla general en los circuitos CMOS, la disipación de potencia aumenta en una relación aproximada a V 2 F, el cuadrado del voltaje multiplicado por la frecuencia de operación.
Aunque las mediciones de potencia proporcionadas por los autores de IBM carecen de precisión, transmiten un buen sentido de la tendencia general. Estas cifras muestran que la pieza es capaz de funcionar por encima de 5 GHz en condiciones de laboratorio de pruebas, aunque a una temperatura de la matriz demasiado alta para las configuraciones comerciales estándar. IBM calificó los primeros procesadores Cell disponibles comercialmente para funcionar a 3,2 GHz, una velocidad de funcionamiento en la que este gráfico sugiere una temperatura de matriz de SPU en una cómoda proximidad de 30 grados.
Tenga en cuenta que una sola SPU representa el 6% del área de la matriz del procesador Cell. Las cifras de energía que se muestran en la tabla anterior representan solo una pequeña parte del presupuesto total de energía.
IBM ha anunciado públicamente su intención de implementar Cell en una tecnología futura por debajo del nodo de 90 nm para mejorar el consumo de energía. La reducción del consumo de energía podría potencialmente permitir que el diseño existente se incremente a 5 GHz o más sin exceder las limitaciones térmicas de los productos existentes.
Celda a 65 nm
El primer encogimiento de Cell fue en el nodo de 65 nm. La reducción a 65 nm redujo la matriz de 230 mm 2 existente basada en el proceso de 90 nm a la mitad de su tamaño actual, aproximadamente 120 mm 2 , lo que también redujo en gran medida el costo de fabricación de IBM.
El 12 de marzo de 2007, IBM anunció que comenzó a producir células de 65 nm en su fábrica de East Fishkill. Los chips producidos allí aparentemente son solo para los servidores blade Cell de IBM , que fueron los primeros en obtener las Cell de 65 nm. Sony presentó la tercera generación de la PS3 en noviembre de 2007, el modelo de 40 GB sin compatibilidad con PS2 que se confirmó para usar la celda de 65 nm. Gracias a la celda encogida, el consumo de energía se redujo de 200 W a 135 W.
Al principio, solo se sabía que las celdas de 65 nm registran hasta 6 GHz y funcionan con un voltaje de núcleo de 1.3 V, como se demostró en el ISSCC 2007. Esto le habría dado al chip un rendimiento máximo teórico de 384 GFLOPS en un cuarto de precisión del FP8 ( 48 GFLOP en FP64 de precisión dual), una mejora significativa con respecto al pico de 204,8 GFLOPS (25,6 GFLOP de FP64 de precisión dual) que una celda de 90 nm y 3,2 GHz podría proporcionar con 8 SPU activas. IBM anunció además que implementó nuevas funciones de ahorro de energía y una fuente de alimentación dual para la matriz SRAM. Esta versión aún no era la "Cell +" que se rumoreaba desde hacía mucho tiempo con un rendimiento mejorado de punto flotante de doble precisión, que vio la luz por primera vez a mediados de 2008 en la supercomputadora Roadrunner en forma de blades QS22 PowerXCell. Aunque IBM habló antes e incluso mostró Celdas de mayor frecuencia, la velocidad de reloj se ha mantenido constante en 3.2 GHz, incluso para la doble precisión habilitada "Celda +" del Roadrunner. Al mantener constante la velocidad del reloj, IBM ha optado por reducir el consumo de energía. PowerXCell agrupa incluso los mejores clústeres IBM Blue Gene (371 MFLOPS / vatio), que ya son mucho más eficientes energéticamente que los clústeres formados por CPU convencionales (265 MFLOPS / vatio y menos).
Ediciones futuras en CMOS
Perspectivas a 45 nm
En ISSCC 2008, IBM anunció Cell en el nodo de 45 nm. IBM dijo que requeriría un 40 por ciento menos de energía a la misma velocidad de reloj que su predecesor de 65 nm y que el área de la matriz se reduciría en un 34 por ciento. La celda de 45 nm requiere menos enfriamiento y permite una producción más barata, también mediante el uso de un disipador de calor mucho más pequeño. La producción en masa se programó inicialmente para comenzar a fines de 2008, pero se trasladó a principios de 2009 .
Perspectivas más allá de 45 nm
Sony, IBM y Toshiba anunciaron que comenzarían a trabajar en un Cell tan pequeño como 32 nm en enero de 2006, pero dado que los procesos de reducción en las fábricas generalmente ocurren a una escala de chip global y no individual, esto fue simplemente como un compromiso público para llevar Cell a 32 nm.