El Alpha 21364 , cuyo nombre en código es "Marvel", también conocido como EV7, es un microprocesador desarrollado por Digital Equipment Corporation (DEC), más tarde Compaq Computer Corporation , que implementó la arquitectura de conjunto de instrucciones Alpha (ISA).
Historia
El Alpha 21364 fue presentado en octubre de 1998 por Compaq en el XI Foro Anual de Microprocesadores, donde se describió como un Alpha 21264 con una caché secundaria on-die asociativa de conjuntos de 6 vías de 1,5 MB, un controlador de memoria DRAM Direct Rambus integrado y un controlador de red integrado para conectarse a otros microprocesadores. Los cambios en el núcleo Alpha 21264 incluyeron un búfer de víctimas más grande, cuya capacidad se cuadruplicó a 32 entradas, 16 para Dcache y 16 para Scache. El Microprocessor Report informó que Compaq consideró implementar cambios menores en el predictor de rama para mejorar la precisión de la predicción de rama y duplicar el búfer de fallas en capacidad a 16 entradas en lugar de 8 en el Alpha 21264. [1]
Se espera que sea grabada de salida a finales de 1999, con muestras disponibles a principios de 2000 y los envíos de volumen a finales de 2000. Sin embargo, el programa original se retrasó, con la cinta de salida en abril de 2001 en lugar de finales de 1999. [2] La Alpha 21364 se introdujo el 20 de enero de 2002 cuando debutaron los sistemas que utilizan el microprocesador. Funcionaba a 1,25 GHz, pero los modelos de producción en AlphaServer ES47, ES80 y GS1280 funcionaban a 1,0 GHz o 1,15 GHz. A diferencia de los microprocesadores Alpha anteriores, el Alpha 21364 no se vendió en el mercado abierto. [ cita requerida ]
Originalmente, el Alpha 21364 estaba destinado a ser reemplazado por el Alpha 21464 , con nombre en código EV8, una nueva implementación del Alpha ISA con subprocesos múltiples simultáneos de cuatro vías (SMT). [3] Se presentó por primera vez en octubre de 1999 en el 12º Foro Anual de Microprocesadores, [3] pero se canceló el 25 de junio de 2001 en una etapa tardía de desarrollo. [4]
Desarrollo
El desarrollo de Alpha 21364 se centró principalmente en funciones que mejorarían el rendimiento de la memoria y la escalabilidad de multiprocesador. El enfoque en el rendimiento de la memoria fue el resultado de un artículo prospectivo publicado en Microprocessor Report titulado "¡Es la memoria, estúpido!" escrito por Richard L. Sites, quien codirigió la definición de la arquitectura Alpha. [5] El artículo concluyó que, "Durante la próxima década, el diseño del subsistema de memoria será el único tema de diseño importante para los microprocesadores".
Descripción
El Alpha 21364 era un Alpha 21264 con un caché secundario integrado de 1,75 MB, dos controladores de memoria integrados y un controlador de red integrado.
Centro
El núcleo del Alpha 21364 se basa en el EV68CB, un derivado del Alpha 21264 . La única modificación fue un búfer de víctimas más grande, ahora cuadriplicado su capacidad a 32 entradas. Las 32 entradas del búfer de la víctima se dividen igualmente en 16 entradas cada una para Dcache y Scache. Aunque el Alpha 21364 es una implementación de cuarta generación de la Arquitectura Alpha, aparte de esta modificación, el núcleo es idéntico al derivado EV68CB del Alpha 21264. [6]
Scache
La caché secundaria (denominada "Scache") es una caché unificada con una capacidad de 1,75 MB. Es un conjunto asociativo de 7 vías , utiliza un tamaño de línea de 64 bytes y tiene una política de reescritura. La caché está protegida por un código de corrección de errores (ECC) de corrección de errores de un solo bit, detección de errores de doble bit (SECDED). Está conectado al controlador de caché mediante una ruta de datos de 128 bits. El acceso a la caché está completamente canalizado, lo que produce un ancho de banda sostenible de 16 GB / sa 1.0 GHz.
El tiempo requerido para que los datos solicitados de la caché hasta que se puedan usar es de 12 ciclos. [7] Observadores, como el Informe del microprocesador , consideraron significativa la latencia de 12 ciclos . La latencia de Scache no se redujo más ya que no habría mejorado el rendimiento. El núcleo Alpha 21264 en el que se basó el Alpha 21364 fue diseñado para usar un caché externo construido a partir de SRAM básico, que tiene una latencia significativamente más alta que el Scache en la matriz del Alpha 21364. Por lo tanto, solo podía aceptar datos en un tarifa limitada. Una vez que la mejora de la latencia no vio más ganancias, los diseñadores se enfocaron en reducir la energía consumida por Scache. [8] Compaq no estaba dispuesto a remediar esta deficiencia, ya que habría requerido que el núcleo Alpha 21264 se modificara significativamente. [9] La alta latencia del Scache permitió que las etiquetas de caché se buscaran primero para determinar si el Scache contenía los datos solicitados y en qué banco estaba ubicado antes de encender el banco Scache y acceder a él. Esto evitó accesos Scache improductivos, reduciendo el consumo de energía.
El almacén de etiquetas constaba de 5,75 millones de transistores y el almacén de datos de 108 millones de transistores. [8]
Controlador de memoria
El Alpha 21364 tiene dos controladores de memoria integrados que admiten Rambus DRAM (RDRAM) que funcionan a dos tercios de la frecuencia de reloj del microprocesador, u 800 MHz a 1,2 GHz. Compaq diseñó controladores de memoria personalizados para Alpha 21364, dándoles capacidades que no se encuentran en los controladores de memoria RDRAM estándar, como tener todas las 128 páginas abiertas, lo que reduce la latencia de acceso a esas páginas; y características patentadas de tolerancia a fallas.
Cada controlador de memoria proporciona cinco canales RDRAM que admiten módulos de memoria en línea (RIMM) PC800 Rambus . Cuatro de los canales se utilizan para proporcionar memoria, mientras que el quinto se utiliza para proporcionar una redundancia similar a RAID . [7] Cada canal tiene 16 bits de ancho, opera a 400 MHz y transfiere datos en los bordes ascendente y descendente de la señal de reloj ( velocidad de datos doble ) para una tasa de transferencia de 800 MT / s, lo que produce 1,6 GB / s de ancho de banda. . El ancho de banda de memoria total de los ocho canales es de 12,8 GB / s.
La coherencia de la caché la proporcionan los controladores de memoria. Cada controlador de memoria tiene un motor de coherencia de caché. El Alpha 21364 usa un esquema de coherencia de caché de directorio donde parte de la memoria se usa para almacenar datos de coherencia modificados, exclusivos, compartidos, no válidos (MESI).
Caja R
El R-box contiene el enrutador de red. El enrutador de red conectó el microprocesador a otros microprocesadores utilizando cuatro puertos denominados Norte, Sur, Este y Oeste. Cada puerto constaba de dos enlaces unidireccionales de 39 bits que operaban a 800 MHz. 32 bits eran para datos y 7 bits para ECC. El enrutador de red también tiene un quinto puerto, que se utiliza para E / S. Este puerto se conecta a un circuito integrado específico de la aplicación IO7 (ASIC), que era un puente a un canal AGP 4x y dos buses PCI-X . El puerto de E / S constaba de dos enlaces unidireccionales de 32 bits que operaban a 200 MHz, lo que arrojaba un ancho de banda máximo de 3,2 GB / s. El enlace del puerto de E / S funcionaba a un cuarto de la frecuencia de reloj para simplificar el diseño del ASIC de E / S.
El Alpha 21364 puede conectarse a otros 127 microprocesadores utilizando dos topologías de red: shuffle y torus 2D. La topología aleatoria tenía rutas más directas a otros microprocesadores, lo que reduce la latencia y, por lo tanto, mejora el rendimiento, pero se limita a conectar hasta ocho microprocesadores como resultado de su naturaleza. La topología de toro 2D permitió que la red presentara hasta 128 microprocesadores.
En los sistemas de multiprocesamiento , cada microprocesador es un nodo con su propia memoria. Es posible acceder a la memoria de otros nodos, pero con una latencia. La latencia aumenta con la distancia, por lo que Alpha 21364 implementa multiprocesamiento de acceso a memoria no uniforme (NUMA). La E / S también se distribuye de manera idéntica. Un microprocesador Alpha 21364 en un sistema de multiprocesamiento no tenía que tener sus ranuras RIMM ocupadas con memoria o su puerto de E / S con dispositivos. Podría usar la memoria y E / S de otro microprocesador.
Tolerancia a fallos
El Alpha 21364 podría funcionar en paso de bloqueo para computadoras tolerantes a fallas. [10] Esta característica fue el resultado de la decisión de Compaq de migrar los servidores tolerantes a fallas Himalaya de Tandem de la arquitectura MIPS a Alpha. Sin embargo, las máquinas nunca usaron el microprocesador, ya que la decisión de eliminar el Alpha en favor del Itanium se tomó antes de la disponibilidad del Alpha 21364.
Fabricación
El Alpha 21364 contenía 152 millones de transistores. La matriz mide 21,1 mm por 18,8 mm para un área de 397 mm². Fue fabricado por International Business Machines (IBM) en su proceso de semiconductor de óxido de metal complementario de cobre de siete niveles (CMOS) de 0,18 µm . Estaba empaquetado en una matriz de rejilla terrestre (LGA) de chip invertido de 1.443 tierras . [2] Utilizaba una fuente de alimentación de 1,65 V y una interfaz externa de 1,5 V para una disipación de potencia máxima de 155 W a 1,25 GHz.
Alpha 21364A
El Alfa 21364A , cuyo nombre en código EV79 , previamente EV78 , fue un desarrollo adicional de la alfa 21364. Se pretende que sea el último microprocesador Alfa desarrollado. Programado para ser introducido en 2004, fue cancelado el 23 de octubre de 2003, y HP citó problemas de rendimiento y programación como motivos. Un reemplazo, el EV7z, se anunció el mismo día.
Hewlett-Packard presentó un prototipo del microprocesador en la Conferencia Internacional de Circuitos de Estado Sólido en febrero de 2003. Funcionaba a 1,45 GHz, tenía un área de matriz de 251 mm², utilizaba una fuente de alimentación de 1,2 V y disipaba 100 W (estimado) . [11]
El Alpha 21364A debía haber mejorado el Alpha 21364 al presentar frecuencias de reloj más altas en el rango de ~ 1.6 a ~ 1.7 GHz y soporte para memoria RDRAM de 1066 Mbit / s. IBM iba a fabricarlo en su proceso de silicio sobre aislante (SOI) de 0,13 µm . Como resultado del proceso más avanzado, hubo reducciones en el tamaño de la matriz, el voltaje de la fuente de alimentación (1,2 V en comparación con 1,65 V) y en el consumo y disipación de energía.
EV7z
El EV7z fue un desarrollo posterior del Alpha 21364. Fue el último microprocesador Alpha desarrollado e introducido. El EV7z se dio a conocer el 23 de octubre de 2003 cuando HP anunció que había cancelado el Alpha 21364A y lo reemplazaría por el EV7z. [12] El EV7z se introdujo el 16 de agosto de 2004 cuando se presentó la única computadora que usaba el microprocesador, AlphaServer GS1280 . Se suspendió el 27 de abril de 2007 cuando se suspendió la computadora en la que aparecía. Funcionaba a 1,3 GHz, admitía RIMM PC1066 y se fabricaba en el mismo proceso de 0,18 µm que el Alpha 21364. En comparación con el Alpha 21364, el EV7z era entre un 14 y un 16% más rápido, pero seguía siendo más lento que el Alpha 21364A que reemplazó se estimó que superaba al Alpha 21364 en un 25 por ciento a 1,5 GHz.
Notas
- ^ "Alpha 21364 para aliviar el cuello de botella de la memoria", p. 2.
- ↑ a b "Alpha 21364 (EV7)", pág. 2.
- ^ a b "Compaq elige SMT para Alpha"
- ^ "Diseño de compensaciones para el predictor de rama condicional Alpha EV8", p. 1.
- ^ Sitios, Richard (5 de agosto de 1996). "¡Es el Recuerdo, Estúpido!". Informe del microprocesador . 10 (10). S2CID 6293956 .
- ^ Guía del escritor del compilador para 21264/21364 , p. 1-4.
- ^ a b Guía del escritor del compilador para 21264/21364 , p. 1-5
- ^ a b "Consideraciones de energía y CAD para la caché L2 de 1,75 Mbyte, 1,2 GHz en la CPU Alpha 21364"
- ^ "Alpha 21364 para aliviar el cuello de botella de la memoria", p. 3.
- ^ "Alfa 21364 (EV7)"
- ^ "Moore, Moore y más en ISSCC", p. 3.
- ^ "HP tiene un retraso en su hoja de ruta del procesador Alpha y del sistema operativo HP-UX"
Referencias
- "EV7 AlphaServers desatado como línea de chips se dirige hacia la puesta del sol" . (21 de enero de 2003). El registro .
- Bannon, Peter (4 de enero de 2002). "Alpha 21364 (EV7)".
- Compaq Computer Corporation . Compiler Writer's Guide for the 21264/21364 , revisión 2.0, enero de 2002.
- Diefendorff, Keith (6 de diciembre de 1999). "Compaq elige SMT para Alpha". Informe del microprocesador , volumen 13, número 16.
- Glaskowsky, Peter N. (24 de marzo de 2003). "Moore, Moore y más en ISSCC". Informe del microprocesador .
- Grodstein, Joel; et al. (2002). "Consideraciones de energía y CAD para la caché L2 de 1,75 Mbyte, 1,2 GHz en la CPU Alpha 21364". GLVLSI '02 .
- Gwenapp, Linley (26 de octubre de 1998). "Alpha 21364 para aliviar el cuello de botella de la memoria". Informe del microprocesador .
- Hewlett-Packard Development Company, LP (20 de enero de 2004). HP presenta la generación más potente de sistemas AlphaServer . Comunicado de prensa .
- Hewlett-Packard Development Company, LP (16 de agosto de 2004). HP amplía las carteras de servidores UNIX y StorageWorks para ofrecer a los clientes mayor valor y flexibilidad en plataformas basadas en estándares . Comunicado de prensa .
- Jain, A. y col. (2001). "Un microprocesador Alpha de 1,2 GHz con un ancho de banda de pin de chip de 44,8 GB / s". Recopilación de artículos técnicos de la ISSCC .
- Krewell, Kevin (24 de marzo de 2003). "EV7 destaca el ancho de banda de la memoria". Informe del microprocesador .
- Mukherjee, Shubhendu S .; Bannon, Peter; Lang, Steve; Spink, Aaron; Webb, David (2002). "La arquitectura de red Alpha 21364". IEEE Micro . págs. 26–35.
- Seznec, Andre; et al. (25 a 29 de mayo de 2002). "Diseño de compensaciones para el predictor de rama condicional Alpha EV8". Actas del 29º Simposio Internacional IEEE-ACM sobre Arquitectura de Computadoras .
- Shannon, Terry (24 de octubre de 2003). "HP se ha retrasado en su hoja de ruta del procesador Alpha y del sistema operativo HP-UX". Shannon conoce HPC , volumen 10, número 51.
Otras lecturas
- Kowaleski, JA, Jr. et al. (2003). "Implementación de un microprocesador Alpha en SOI" . Recopilación de artículos técnicos de la ISSCC . págs. 248–249, 491.
- Tsuk, M. y col. (2001). "Modelado y medición del paquete Alpha 21364" . Rendimiento eléctrico de embalajes eléctricos . págs. 283–286.
- Xanthopoulos, T. et al. (2001). "El diseño y análisis de la red de distribución de relojes para un microprocesador Alpha de 1.2GHz" . Recopilación de artículos técnicos de la ISSCC . págs. 402–403.