Comparación de núcleos ARMv8-A - Comparison of ARMv8-A cores
Esta es una tabla de 64 /32 bits ARMv8-A núcleos de arquitectura que comparan microarquitecturas que implementan la AArch64 conjunto de instrucciones y extensiones obligatorios u opcionales de la misma. La mayoría de los chips admiten AArch32 de 32 bits para aplicaciones heredadas. Todos los chips de este tipo tienen una unidad de punto flotante (FPU) que es mejor que la de los chips ARMv7 y NEON ( SIMD ) más antiguos . Algunos de estos chips tienen coprocesadores que también incluyen núcleos de la antigua arquitectura de 32 bits (ARMv7). Algunos de los chips son SoC y pueden combinar ARM Cortex-A53 y ARM Cortex-A57, como el Samsung Exynos 7 Octa.
Mesa
Empresa | Centro | Liberado | Revisión | Descodificar |
Profundidad de la tubería |
Ejecución fuera de orden |
Predicción de rama |
papel grande PEQUEÑO | Exec. puertos |
SIMD |
Fab (en nm ) |
Simult. MONTE | Caché L0 |
Instr + Data de caché L1 (en KiB ) |
Caché L2 | Caché L3 | Core configura- raciones |
DMIPS / MHz |
Número de pieza ARM (en el registro de ID principal) | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tenerlo | Entradas | |||||||||||||||||||
ARM Holdings | Cortex-A32 (32 bits) | 2017 | ARMv8.0-A (solo 32 bits ) |
2 de ancho | 8 | No | 0 | POCO | ? | 28 | No | No | 8–64 + 8–64 | 0-1 MiB | No | 1-4 + | 0xD01 | |||
Cortex-A34 (64 bits) | 2019 | ARMv8.0-A (solo 64 bits ) |
2 de ancho | 8 | No | 0 | POCO | ? | No | No | 8–64 + 8–64 | 0-1 MiB | No | 1-4 + | 0xD02 | |||||
Corteza-A35 | 2017 | ARMv8.0-A | 2 de ancho | 8 | No | 0 | sí | POCO | ? | 28/16/ 14/10 |
No | No | 8–64 + 8–64 | 0/128 KiB – 1 MiB | No | 1–4 + | 1,78 | 0xD04 | ||
Corteza-A53 | 2014 | ARMv8.0-A | 2 de ancho | 8 | No | 0 | Predicción de rama condicional + indirecta |
grande pequeño | 2 | 28/20/ 16/14/10 |
No | No | 8–64 + 8–64 | 128 KiB – 2 MiB | No | 1–4 + | 2,24 | 0xD03 | ||
Corteza-A55 | 2017 | ARMv8.2-A | 2 de ancho | 8 | No | 0 | grande pequeño | 2 | 28/20/ 16/14/12/10/5 |
No | No | 16–64 + 16–64 | 0-256 KiB / núcleo | 0–4 MiB | 1–8 + | 2,65 | 0xD05 | |||
Corteza-A57 | 2013 | ARMv8.0-A | 3 de ancho | 15 | Sí envío de 3 anchos |
De dos niveles | grande | 8 | 28/20/ 16/14 |
No | No | 48 + 32 | 0,5-2 MiB | No | 1–4 + | 4.6 | 0xD07 | |||
Corteza-A65 | 2019 | ARMv8.2-A | ? | ? | sí | De dos niveles | ? | 2 | ? | No | No | ? | ? | ? | ? | ? | 0xD06 | |||
Cortex-A65AE | 2019 | ARMv8.2-A | ? | ? | sí | De dos niveles | ? | 2 | ? | SMT2 | No | 16-64 + 16-64 | 64-256 KiB | 0-4 MB | 1-8 | ? | 0xD43 | |||
Corteza-A72 | 2015 | ARMv8.0-A | 3 de ancho | 15 | Sí envío de 5 anchos |
De dos niveles | grande | 8 | 28/16 | No | No | 48 + 32 | 0,5–4 MiB | No | 1–4 + | 4,72 | 0xD08 | |||
Corteza-A73 | 2016 | ARMv8.0-A | 2 de ancho | 11-12 | Sí envío de 4 anchos |
De dos niveles | grande | 7 | 28/16/10 | No | No | 64 + 32/64 | 1–8 MiB | No | 1–4 + | ~ 6,35 | 0xD09 | |||
Corteza-A75 | 2017 | ARMv8.2-A | 3 de ancho | 11-13 | Sí envío de 6 anchos |
De dos niveles | grande | 8? | 2 * 128b | 28/16/10 | No | No | 64 + 64 | 256–512 KiB / núcleo | 0–4 MiB | 1–8 + | 8.2-9.5 | 0xD0A | ||
Corteza-A76 | 2018 | ARMv8.2-A | 4 de ancho | 11-13 | Sí despacho de 8 anchos |
128 | De dos niveles | grande | 8 | 2 * 128b | 10/7 | No | No | 64 + 64 | 256–512 KiB / núcleo | 1–4 MiB | 1-4 | 10,7-12,4 | 0xD0B | |
Cortex-A76AE | 2018 | ARMv8.2-A | ? | ? | sí | 128 | De dos niveles | grande | ? | ? | No | No | ? | ? | ? | ? | ? | 0xD0E | ||
Corteza-A77 | 2019 | ARMv8.2-A | 4 de ancho | 11-13 | Sí envío de 10 anchos |
160 | De dos niveles | grande | 12 | 2 * 128b | 7 | No | 1.5K entradas | 64 + 64 | 256–512 KiB / núcleo | 1–4 MiB | 1-4 | ? | 0xD0D | |
Corteza-A78 | 2020 | ARMv8.2-A | 4 de ancho | sí | 160 | sí | grande | 13 | 2 * 128b | No | 1.5K entradas | 32/64 + 32/64 | 256–512 KiB / núcleo | 1–4 MiB | 1-4 | ? | 0xD41 | |||
Corteza-X1 | 2020 | ARMv8.2-A | 5 de ancho | ? | sí | 224 | sí | grande | 15 | 4 * 128b | No | 3K entradas | 64 + 64 | hasta 1 MiB | hasta 8 MiB | personalizado | ? | 0xD44 | ||
Corteza-A510 | 2021 | ARMv9.0-A | No | 0 | POCO | 9 | 2 * 128b | No | No | 32/64 + 32/64 | 0-512 | 2-4 / 8 MiB | ||||||||
Corteza-A710 | 2021 | ARMv9.0-A | sí | 160 | grande | 13 | 2 * 128b | No | 1.5K entradas | 32/64 + 32/64 | 256-512 | 2-8 MiB | ||||||||
Corteza-X2 | 2021 | ARMv9.0-A | 10 | sí | 288 | grande | 15 | 4 * 128b | No | 3K entradas | 64 + 64 | 512-1024 | hasta 8 MiB | |||||||
Apple Inc. | Ciclón | 2013 | ARMv8.0-A | 6 de ancho | dieciséis | sí | 192 | sí | No | 9 | 28 | No | No | 64 + 64 | 1 MiB | 4 MiB | 2 | ? | ||
Tifón | 2014 | ARMv8.0-A | 6 de ancho | dieciséis | sí | sí | No | 9 | 20 | No | No | 64 + 64 | 1 MiB | 4 MiB | 2, 3 (A8X) | ? | ||||
Tornado | 2015 | ARMv8.0-A | 6 de ancho | dieciséis | sí | sí | No | 9 | 16/14 | No | No | 64 + 64 | 3 MiB | 4 MiB No ( A9X ) |
2 | ? | ||||
Huracán | 2016 | ARMv8.0-A | 6 de ancho | dieciséis | sí | "grande" (en A10 / A10X emparejado con núcleos Zephyr "LITTLE" ) |
9 | 3 * 128b | 16 ( A10 ) 10 ( A10X ) |
No | No | 64 + 64 | 3 MiB ( A10 ) 8 MiB ( A10X ) |
4 MiB ( A10 ) No ( A10X ) |
2x Huracán + 2x Zephyr (A10) 3x Huracán + 3x Zephyr (A10X) |
? | ||||
Céfiro | 2016 | ARMv8.0-A | 3 de ancho | 12 | sí | POCO | 5 | 16 ( A10 ) 10 ( A10X ) |
No | No | 32 + 32 | 1 MiB | 4 MiB ( A10 ) No ( A10X ) |
2x Huracán + 2x Zephyr (A10) 3x Huracán + 3x Zephyr (A10X) |
? | |||||
Monzón | 2017 | ARMv8.2-A | 7 de ancho | dieciséis | sí | "grande" (en Apple A11 emparejado con núcleos Mistral "LITTLE" ) |
11 | 3 * 128b | 10 | No | No | 64 + 64 | 8 MiB | No | 2x Monzón + 4 × Mistral | ? | ||||
Mistral | 2017 | ARMv8.2-A | 3 de ancho | 12 | sí | POCO | 5 | 10 | No | No | 32 + 32 | 1 MiB | No | 2x Monzón + 4 × Mistral | ? | |||||
Vórtice | 2018 | ARMv8.3-A | 7 de ancho | dieciséis | sí | "grande" (en Apple A12 / Apple A12X / Apple A12Z emparejado con núcleos Tempest "LITTLE" ) |
11 | 3 * 128b | 7 | No | No | 128 + 128 | 8 MiB | No | 2x Vórtice + 4x Tempestad (A12) 4x Vórtice + 4x Tempestad (A12X / A12Z) |
? | ||||
Tempestad | 2018 | ARMv8.3-A | 3 de ancho | 12 | sí | POCO | 5 | 7 | No | No | 32 + 32 | 2 MiB | No | 2x Vórtice + 4x Tempestad (A12) 4x Vórtice + 4x Tempestad (A12X / A12Z) |
? | |||||
Relámpago | 2019 | ARMv8.4-A | 8 de ancho | dieciséis | sí | 560 | "grande" (en Apple A13 emparejado con núcleos Thunder "LITTLE" ) |
11 | 3 * 128b | 7 | No | No | 128 + 128 | 8 MiB | No | 2x relámpagos + 4x truenos | ? | |||
trueno | 2019 | ARMv8.4-A | 3 de ancho | 12 | sí | POCO | 5 | 7 | No | No | 96 + 48 | 4 MiB | No | 2x relámpagos + 4x truenos | ? | |||||
Tormenta de fuego | 2020 | ARMv8.5-A | 8 de ancho | sí | 630 | "grande" (en Apple A14 emparejado con núcleos Icestorm "LITTLE" ) |
14 | 4 * 128b | 5 | No | 192 + 128 | 8 MiB | No | 2x Tormenta de fuego + 4x Tormenta de hielo | ? | |||||
Tormenta de nieve | 2020 | ARMv8.5-A | 4 de ancho | sí | 110 | POCO | 7 | 2 * 128b | 5 | No | 128 + 64 | 4 MiB | No | 2x Tormenta de fuego + 4x Tormenta de hielo | ? | |||||
avalancha | 2021 | ARMv8.5-A | 8 de ancho | sí | "grande" (en Apple A15 emparejado con núcleos Blizzard "LITTLE" ) |
14 | 4 * 128b | 5 | No | 192 + 128 | 12 MiB | No | 2x Avalancha + 4x Ventisca | ? | ||||||
Tormenta de nieve | 2021 | ARMv8.5-A | 4 de ancho | sí | POCO | 8 | 2 * 128b | 5 | No | 128 + 64 | 4 MiB | No | 2x Avalancha + 4x Ventisca | ? | ||||||
Nvidia | Denver | 2014 | ARMv8-A | Decodificador de hardware de 2 anchos , microoperaciones VLIW de longitud variable de hasta 7 anchos |
13 | No si el decodificador de hardware está en uso. Puede proporcionarse mediante traducción dinámica de software a VLIW . |
Predicción de
rama directa + indirecta |
No | 7 | 28 | No | No | 128 + 64 | 2 MiB | No | 2 | ? | |||
Denver 2 | 2016 | ARMv8-A | ? | 13 | No si el decodificador de hardware está en uso. Puede proporcionarse mediante traducción dinámica de software a VLIW . |
Predicción de
rama directa + indirecta |
Implementación propia de "Super" Nvidia | ? | dieciséis | No | No | 128 + 64 | 2 MiB | No | 2 | ? | ||||
Carmelo | 2018 | ARMv8.2-A | ? | Predicción de
rama directa + indirecta |
? | 12 | No | No | 128 + 64 | 2 MiB | (4 MiB a 8 núcleos) | 2 (+ 8) | ? | |||||||
Cavium | ThunderX | 2014 | ARMv8-A | 2 de ancho | 9 | sí | De dos niveles | ? | 28 | No | No | 78 + 32 | 16 MiB | No | 8–16, 24–48 | ? | ||||
ThunderX2 (ex. Broadcom Vulcan) |
2018 | ARMv8.1-A |
"4 μops" de 4 anchos |
? | sí | Multi nivel | ? | ? | dieciséis | SMT4 | No | 32 + 32 (datos de 8 vías) |
256 KiB por núcleo |
1 MiB por núcleo |
16-32 | ? | ||||
Marvell | ThunderX3 | 2020 | ARMv8.3 + | 8 de ancho | ? | Sí envío de 4 anchos |
Multi nivel | ? | 7 | 7 | SMT4 | ? | 64 + 32 | 512 KiB por núcleo |
90 MiB | 60 | ? | |||
Aplicado | Hélice | 2014 | ? | ? | ? | ? | ? | ? | ? | 40/28 | No | No | 32 + 32 (por núcleo; escritura directa con paridad) |
256 KiB compartidos por par de núcleos (con ECC) |
1 MiB / núcleo | 2, 4, 8 | ? | |||
X-Gene | 2013 | ? | 4 de ancho | 15 | sí | ? | ? | ? | 40 | No | No | 8 MiB | 8 | 4.2 | ||||||
X-Gene 2 | 2015 | ? | 4 de ancho | 15 | sí | ? | ? | ? | 28 | No | No | 8 MiB | 8 | 4.2 | ||||||
X-Gene 3 | 2017 | ? | ? | ? | ? | ? | ? | ? | dieciséis | No | No | ? | ? | 32 MiB | 32 | ? | ||||
Qualcomm | Kryo | 2016 | ARMv8-A | ? | ? | sí | ¿Dos niveles? | Implementación similar "grande" o "LITTLE" de Qualcomm |
? | 14 | No | No | 32 + 24 | 0,5-1 MiB | 2, 4 | 6.3 | ||||
Kryo 2XX | 2017 | ARMv8-A | 2 de ancho | 11-12 | Sí envío de 7 anchos |
De dos niveles | grande | 7 | 14/11/10 | No | No | 64 + 32/64? | 512 KiB / núcleo dorado | No | 4 | ? | ||||
2 de ancho | 8 | No | 0 | Predicción de
rama condicional + indirecta |
? | 2 | 8–64? + 8–64? | 256 KiB / Núcleo plateado | 4 | ? | ||||||||||
Kryo 3XX | 2018 | ARMv8.2-A | 3 de ancho | 11-13 | Sí despacho de 8 anchos |
De dos niveles | grande | 8 | 10 | No | No | 64 + 64 | 256 KiB / núcleo dorado | 2 MiB | 4 | ? | ||||
2 de ancho | 8 | No | 0 | Predicción de
rama condicional + indirecta |
? | 28 | 16–64? + 16–64? | 128 KiB / Plata | 4 | ? | ||||||||||
Kryo 4XX | 2018
2019 |
ARMv8.2-A | 4 de ancho | 11-13 | Sí despacho de 8 anchos |
sí | grande | 8 | 8/11/7 | No | No | 64 + 64 | 512 KiB / Gold Prime
256 KiB / oro |
2 MiB | 1 + 3 | ? | ||||
2 de ancho | 8 | No | 0 | Predicción de
rama condicional + indirecta |
? | 2 | 16–64? + 16–64? | 128 KiB / Plata | 4 | ? | ||||||||||
Kryo 5XX | 2019 | ARMv8.2-A | 4 de ancho | 11-13 | Sí despacho de 8 anchos |
sí | grande | 8 | No | ? | 512 KiB / Gold Prime
256 KiB / oro |
3 MiB | 1 + 3 | |||||||
2 de ancho | 8 | No | 0 | Predicción de
rama condicional + indirecta |
2 | ? | 128 KiB / Plata | 4 MiB | ||||||||||||
Kryo 6XX | 2020 | ARMv8.2-A | sí | grande | ? | 64 + 64 | 1024 KiB / Gold Prime
512 KiB / oro |
4 MiB | 1 + 3 + 4 | |||||||||||
Falkor | 2017 | " Funciones de ARMv8.1-A "; AArch64 solamente (no de 32 bits ) | 4 de ancho | 10-15 | Sí despacho de 8 anchos |
sí | ? | 8 | 10 | No | 24 KiB | 88 + 32 | 500 KB | 1,25 MiB | 40-48 | ? | ||||
Samsung | M1 | 2015 | ARMv8-A | 4 de ancho | 13 | Sí envío de 9 anchos |
96 | grande | 8 | 14 | No | No | 64 + 32 | 2 MiB | no | 4 | ? | |||
M2 | 2017 | ARMv8-A | 100 | De dos niveles | grande | 10 | 64 + 64 | |||||||||||||
M3 | 2018 | ARMv8.2-A | 6 de ancho | 15 | Sí envío de 12 anchos |
228 | De dos niveles | grande | 12 | 10 | No | No | 64 + 64 | 512 KiB por núcleo | 4096 KB | 4 | ? | |||
M4 | 2019 | ARMv8.2-A | 6 de ancho | 15 | Sí envío de 12 anchos |
228 | De dos niveles | grande | 12 | 8/7 | No | No | 64 + 64 | 512 KiB por núcleo | 4096 KB | 2 | ? | |||
M5 | 2020 | Sí envío de 12 anchos |
228 | De dos niveles | grande | No | 64 + 64 | |||||||||||||
Fujitsu | A64FX | 2019 | ARMv8.2-A | 4/2 de ancho | 7+ | Sí ¿ 5 vías? |
sí | n / A | 8+ | 2 * 512b | 7 | No | No | 64 + 64 | 8MiB por 12 + 1 núcleos | No | 48 + 4 | 1,9 GHz +; 15GF / W +. | ||
HiSilicon | TaiShan V110 | 2019 | ARMv8.2-A | 4 de ancho | ? | sí | n / A | 8 | 7 | No | No | 64 + 64 | 512 KiB por núcleo | 1 MiB por núcleo | ? | ? | ||||
Empresa | Centro | Liberado | Revisión | Descodificar |
Profundidad de la tubería |
Ejecución fuera de orden |
Predicción de rama |
papel grande PEQUEÑO | Exec. puertos |
SIMD |
Fab (en nm ) |
Simult. MONTE | Caché L0 |
Instr + Data de caché L1 (en KiB ) |
Caché L2 | Caché L3 | Core configura- raciones |
DMIPS / MHz |
Número de pieza ARM (en el registro de ID principal) |