Samsung Austin R&D Center revela detalles de su microarquitectura de CPU Exynos M6 inédita

Samsung Austin R&D Center revela detalles de su microarquitectura de CPU Exynos M6 inédita

Samsung Austin R&D Center revela detalles de su microarquitectura de CPU Exynos M6 inédita

Sabemos que el proyecto de núcleo de CPU personalizado en el Centro de Investigación y Desarrollo de Austin (SARC) de Samsung llegó a su fin en octubre de 2019. Para un proyecto que se promovió con tanta fanfarria con el lanzamiento del Exynos M1 con Exynos 8890 en 2016, Fue un final triste. ¿Por qué SARC cerró el proyecto? El núcleo personalizado Exynos M5, incluido en el Exynos 990 SoC, es el último núcleo totalmente personalizado diseñado por Samsung para el futuro previsible y, en retrospectiva, es fácil ver por qué Samsung renunció a los núcleos personalizados, ya que simplemente no eran competitivos. suficiente. Ahora se sabe que el núcleo Exynos M5 tiene un déficit de eficiencia energética del 100% frente al Cortex-A77 de ARM, lo que dice mucho. Sin embargo, no tenía por qué resultar así. Los diseños de Exynos M1 y Exynos M2 mostraron cierta promesa, y el proyecto de núcleo de CPU personalizado se consideraba, en ese momento, importante por el bien de la competencia en el espacio de CPU móvil. El Exynos M3 fue una gran recesión a pesar del importante aumento de IPC, y el Exynos M4 y Exynos M5 no pudieron mantenerse al día con la IP de CPU estándar de ARM. ¿Cuáles fueron los cambios de microarquitectura en el próximo núcleo personalizado, el Exynos M6 cancelado?

Hasta ahora, se desconocía la respuesta a esa pregunta. Ahora, sin embargo, el equipo de desarrollo de CPU de SARC ha presentado un documento titulado “Evolución de la arquitectura de CPU de Samsung Exynos” (que llegamos a conocer a través de AnandTech) en el Simposio Internacional de Arquitectura de Computadoras (ISCA), que es una conferencia de IEEE. Revela muchos detalles sobre las CPU de la serie Exynos M anteriores, así como la arquitectura del Exynos M6 cancelado.

El documento presentado por el equipo de desarrollo de CPU de SARC detalla los esfuerzos del equipo durante sus ocho años de existencia, y también revela detalles clave de los núcleos ARM personalizados que van desde el Exynos M1 (Mongoose) al Exynos M5 de la generación actual (Lion), e incluso la CPU Exynos M6 inédita, que, antes de la cancelación, se esperaba que apareciera en el sucesor del SoC 2021 del Exynos 990.

El equipo de CPU SARC de Samsung se estableció en 2011 para desarrollar núcleos de CPU personalizados, que luego se incluyeron en los SoC Exynos de Samsung Systems LSI. El primer Exynos SoC en usar un núcleo personalizado fue el Exynos 8890, que apareció en el Samsung Galaxy S7 de 2016. Los núcleos personalizados siguieron siendo parte de Exynos SoC hasta el Exynos 990 con los núcleos Exynos M5, que aparecían en las variantes del Samsung Galaxy S20 con tecnología Exynos. (Se espera que el próximo Exynos 992, que probablemente se incluya en el Galaxy Note 20, incluya el Cortex-A78 de ARM y no el Exynos M5). Sin embargo, SARC había completado la arquitectura Exynos M6 antes de que el equipo de la CPU recibiera la noticia de su disolución. en octubre de 2019, y la disolución se hizo efectiva en diciembre.

El documento ISCA presenta una tabla de descripción general de las diferencias de microarquitectura entre los núcleos de CPU personalizados de Samsung desde el Exynos M1 al Exynos M6. Algunas de las características más conocidas del diseño fueron reveladas por la compañía en su análisis profundo de la arquitectura de CPU M1 inicial en el evento HotChips 2016. En HotChips 2018, Samsung dio una inmersión profunda en el Exynos M3. También se ha detallado la arquitectura de los núcleos Exynos M4 y Exynos M5, así como la del M6.

Arquitecturas de CPU de Samsung Austin

Fuente: SARC

AnandTechseñala que la característica clave de los diseños de Samsung a lo largo de los años fue que se basó en el mismo modelo RTL que se inició con el núcleo Exynos M1 Mongoose. Samsung continuó realizando mejoras en los bloques funcionales de los núcleos a lo largo de los años. El Exynos M3 representó un cambio con respecto a las primeras iteraciones, ya que amplió sustancialmente el núcleo en varios aspectos, pasando de un diseño de 4 anchos a un núcleo medio de 6 anchos. (El Apple A11, A12 y A13, por otro lado, tienen un ancho de decodificación de 7 anchos, mientras que los Cortex-A76, A77 y A78 tienen un ancho de 4 anchos. El Cortex-X1 aumenta el ancho de decodificación a 5 -amplio.)

El informe también hace algunas revelaciones que no eran públicas antes con respecto al Exynos M5 y el M6. Para el Exynos M5, Samsung realizó cambios más importantes en la jerarquía de caché de los núcleos, reemplazando las cachés L2 privadas con una nueva caché compartida más grande, además de revelar un cambio en la estructura L3 de un diseño de 3 bancos a un diseño de 2 bancos con menos latencia.

El núcleo M6 cancelado habría supuesto un salto más grande en términos de microarquitectura. SARC había realizado grandes mejoras, como duplicar la instrucción L1 y los cachés de datos de 64KB a 128KB –AnandTechseñala que esta es una opción de diseño que solo ha sido implementada por los núcleos de la serie A de Apple hasta ahora, comenzando con el Apple A12.

El L2 se duplicó en sus capacidades de ancho de banda hasta 64B / ciclo, mientras que el L3 habría visto un aumento de 3 MB a 4 MB. El Exynos M6 habría sido un núcleo de decodificación de 8 anchos. Como lo señalóAnandTech, esta habría sido la microarquitectura comercial más amplia actualmente conocida en términos de decodificación. Sin embargo, aunque el núcleo era mucho más amplio, las unidades de ejecución de enteros no experimentaron muchos cambios. Una tubería compleja agregó una segunda capacidad de división de enteros, mientras que las tuberías de carga / almacenamiento permanecieron igual que el M5 con una unidad de carga, una unidad de almacenamiento y una unidad de carga / almacenamiento. Las tuberías de punto flotante / SIMD habrían visto una cuarta unidad adicional con capacidades FMAC. La DTLB L1 se aumentó de 48 páginas a 128 páginas, y la TLB principal se duplicó de páginas 4K a páginas 8K (cobertura de 32 MB).

El Exynos M6 habría representado otro cambio significativo con respecto a sus predecesores al aumentar la ventana fuera de servicio del núcleo desde la primera vez desde el M3. Habría habido archivos de registros físicos de enteros y de coma flotante más grandes, y el ROB (Reorder Buffer) habría aumentado de 228 a 256.AnandTechseñala que una debilidad importante de los núcleos Exynos personalizados todavía está presente en el M5 y también habría estado presente en el M6. Serían sus etapas de canalización más profundas las que resultarían en una costosa penalización por error de predicción de 16 ciclos, que era más alta que los núcleos de CPU de ARM que tienen una penalización por error de predicción de 11 ciclos. El documento SARC profundiza aún más en el diseño del predictor de rama, mostrando el diseño basado en el perceptrón Hashed escalado del núcleo de la CPU. Este diseño habría mejorado continuamente a lo largo de los años y las implementaciones, mejorando la precisión de la rama y reduciendo las predicciones erróneas por kiloinstrucciones (MPKI) de forma continua. El SARC presenta una tabla que muestra la cantidad de estructuras de almacenamiento que ocupa el predictor de sucursales dentro del front-end. Las tecnologías de captación previa del núcleo también se detallaron en el documento, cubriendo la introducción de un caché 碌 OP en el M5, así como los esfuerzos del equipo para fortalecer el núcleo contra vulnerabilidades de seguridad como Spectre.

Los esfuerzos para mejorar la latencia de la memoria en los núcleos Exynos personalizados también fueron detallados por SARC en el documento. En el Exynos M4, el equipo de SARC incluyó un mecanismo en cascada de carga-carga que redujo la latencia efectiva del ciclo L1 de cuatro ciclos a tres en cargas posteriores. El núcleo M4 también introdujo un desvío de ruta con una nueva interfaz desde los núcleos de la CPU directamente a los controladores de memoria, lo que evitó el tráfico a través de la interconexión. De acuerdo aAnandTech, esto explicó algunas de las mejoras de latencia más importantes que la publicación pudo medir con el Exynos 9820. El Exynos M5 introdujo una omisión de búsqueda de caché especulativa, que emitía una solicitud tanto para la interconexión como para las etiquetas de caché simultáneamente. Esto posiblemente ahorraría latencia en caso de que se pierda la memoria caché, ya que la solicitud de memoria está en curso. La latencia de carga promedio también se mejoró continuamente a lo largo de las generaciones de 14,9 ciclos en el M1 a 8,3 ciclos en el M6.

Si bien las características de microarquitectura anteriores son bastante técnicas, los entusiastas de la CPU estarán familiarizados con el término Instrucciones por reloj (IPC), que significa rendimiento por MHz en el rendimiento de la CPU de un solo subproceso (es el factor principal que determina el rendimiento de la CPU de un solo subproceso, con el otro factor es la velocidad de reloj del núcleo). La IPC entera y la IPC de punto flotante son determinantes de la IPC. El equipo de SARC logró obtener un promedio de 20% de mejoras anuales de la M1 a la M6. El M3, en particular, representó un gran porcentaje de mejora en IPC, aunque se vio defraudado por otros factores. El Exynos M5 representó una mejora del 15-17% en IPC, mientras que se ha revelado que la mejora del IPC para el Exynos M6 inédito tiene un promedio de 2.71 frente a 1.06 para el M1, lo que representa una mejora del 20% sobre el M5.

Brian Grayson, el presentador del periódico, respondió preguntas sobre la cancelación del programa durante la sesión de preguntas y respuestas. Dijo que el equipo siempre había cumplido con el objetivo y el cronograma con mejoras de rendimiento y eficiencia con cada generación. (¿Eso significa que los objetivos no eran lo suficientemente altos en primer lugar?). La mayor dificultad del equipo, por otro lado, fue en términos de ser extremadamente cuidadoso con los cambios de diseño futuros, ya que el equipo no tenía los recursos para comenzar desde cero o para reescribir completamente un bloque. En retrospectiva, el equipo habría tomado decisiones diferentes en el pasado con algunas de las direcciones de diseño. En marcado contraste, ARM tiene varios equipos de CPU que trabajan en diferentes ubicaciones que realmente compiten entre sí. Esto permite “rediseños desde cero” como el Cortex-A76. El Cortex-A77 y el Cortex-A78 son los sucesores directos del A76.

El equipo de SARC tenía ideas para mejorar los próximos núcleos, como el hipotético Exynos M7. Sin embargo, supuestamente fue una persona de muy alto rango en Samsung quien decidió cancelar el programa central personalizado. ComoAnandTechseñala, los núcleos personalizados no eran competitivos en términos de eficiencia energética, rendimiento y uso de área (PPA) en comparación con las CPU de ARM de cualquier generación en particular. El mes pasado, ARM anunció el programa Cortex-X Custom que presenta el nuevo Cortex-X1, un núcleo de próxima generación diseñado para dispositivos móviles 2021. Tiene una filosofía de diseño de romper el sobre de PPA Cortex-A y optar por un rendimiento absoluto. El Exynos M6, por lo tanto, habría tenido dificultades para competir con él. Aun así, parece que Samsung no adaptará el Cortex-X1 y solo irá con el combo Cortex-A78 + Cortex-A55 en el Exynos 992; sin embargo, puede ser adoptado en el buque insignia Galaxy S del próximo año.

El equipo de SARC todavía diseña actualmente interconexiones personalizadas y controladores de memoria para Samsung Systems LSI. También estaba trabajando en arquitecturas de GPU personalizadas, pero Samsung Systems LSI firmó un acuerdo con AMD para usar la arquitectura de GPU RDNA de próxima generación (arquitectura de gráficos Next) de AMD en futuras GPU Exynos, a partir de 2021.

En general, el proyecto de núcleo de CPU personalizado fue una lección esclarecedora para los proveedores de chips móviles sobre lo que puede salir mal. El equipo de CPU de SARC tenía grandes ambiciones de competir con Apple, que es el líder indiscutible en el espacio de CPU móvil. Desafortunadamente, no pudo competir con ARM, mucho menos con Apple. Los problemas podrían haberse resuelto, pero año tras año, los esfuerzos de SARC se retrasaron uno o dos pasos, y se reflejó negativamente en el envío de productos como las variantes Exynos 9810 del Samsung Galaxy S9. Ahora, todos los principales proveedores de chips móviles de Android utilizarán la IP de CPU estándar de ARM a partir de 2021, y esta lista incluye Qualcomm, Samsung, MediaTek y HiSilicon. La pelea se llevará a Apple con núcleos como el Cortex-X1, no con núcleos ARM personalizados diseñados desde cero.


Fuente: Evolución de la arquitectura de la CPU Samsung Exynos | Vía: AnandTech

Similar Posts

Leave a Reply