Articulo de referencia

AArch64

"},"endianness":{"wt":"[[Endianness#Bi-endianness|Bi]] for data only (little as default, instructions are little)"},"extensions":{"wt":"{{Unbulleted indent list|[[ARMv8-A SVE|SV...

AArch64 , también conocido como ARM64 , es una versión de 64 bits de la familia de arquitecturas ARM , un conjunto de diseños de procesadores informáticos ampliamente utilizado. Se introdujo en 2011 con la arquitectura ARMv8 y posteriormente pasó a formar parte de la serie ARMv9 . AArch64 permite a los procesadores gestionar más memoria y realizar cálculos más rápidos que las versiones anteriores de 32 bits . Está diseñado para funcionar junto con el modo anterior de 32 bits, conocido como AArch32 , lo que permite la compatibilidad con una amplia gama de software. Entre los dispositivos que utilizan AArch64 se incluyen teléfonos inteligentes , tabletas , ordenadores personales y servidores . La arquitectura AArch64 ha seguido evolucionando mediante actualizaciones que mejoran el rendimiento, la seguridad y la compatibilidad con tareas informáticas avanzadas. [ 2 ]

Estado de ejecución de AArch64

En ARMv8-A, ARMv8-R y ARMv9-A, un "estado de ejecución" define características clave del entorno del procesador. Esto incluye el número de bits utilizados en los registros primarios del procesador , los conjuntos de instrucciones compatibles y otros aspectos del entorno de ejecución del procesador. Estas versiones de la arquitectura ARM admiten dos estados de ejecución: el estado AArch64 de 64 bits y el estado AArch32 de 32 bits. [ 3 ]

Convenciones de nomenclatura

  • 64 bits:
    • Estado de ejecución: AArch64
    • Conjuntos de instrucciones: A64
  • 32 bits:
    • Estado de ejecución: AArch32
    • Conjuntos de instrucciones: A32 + T32
    • Ejemplo: ARMv8-R, Cortex-A32 [ 4 ]

Características de AArch64

  • New instruction set, A64:
    • Tiene 31 registros de propósito general de 64 bits.
    • Tiene un registro dedicado de puntero cero o de pila (SP) (dependiendo de la instrucción).
    • El contador de programa (PC) ya no es directamente accesible como un registro.
    • Las instrucciones siguen teniendo 32  bits de longitud y son prácticamente las mismas que las de A32 (con la excepción de las instrucciones LDM/STM y la mayoría de las ejecuciones condicionales eliminadas).
      • Tiene cargas/almacenamientos emparejados (en lugar de LDM/STM)
      • No se requiere ninguna predicción para la mayoría de las instrucciones (excepto las bifurcaciones).
    • La mayoría de las instrucciones pueden aceptar argumentos de 32 o 64 bits.
    • Se asume que las direcciones son de 64 bits.
  • SIMD avanzado(Neón) mejorado:
    • Tiene 32 registros de 128 bits (en lugar de 16), también accesibles a través de VFPv4.
    • Admite formato de punto flotante de doble precisión
    • Cumple totalmente con la norma IEEE 754.
    • Las instrucciones de cifrado/descifrado AES y de hash SHA-1/SHA-2 también utilizan estos registros.
  • Un nuevo sistema de excepciones:
    • Menos registros bancarios y modos
  • Traducción de memoria desde direcciones virtuales de 48 bits basada en la Extensión de Dirección Física Grande (LPAE) existente, que fue diseñada para extenderse fácilmente a 64 bits.

Extensión: Sugerencia de recopilación de datos (ARMv8.0-DGH).

AArch64 se introdujo en ARMv8-A y está incluido en las versiones posteriores de ARMv8-A, así como en todas las versiones de ARMv9-A. También se introdujo en ARMv8-R como opción, después de su introducción en ARMv8-A; no está incluido en ARMv8-M.

Formatos de instrucciones A64

El código de operación principal para seleccionar a qué grupo pertenece una instrucción A64 se encuentra en los bits 25-28.

ARM-A (arquitectura de aplicaciones)

Plataforma Armv8-A con chip de CPU big.LITTLE Cortex-A57 / A53 MPCore

Anunciado en octubre de 2011, [ 5 ] ARMv8-A representa un cambio fundamental en la arquitectura ARM. Agrega un estado de ejecución opcional de 64 bits, llamado "AArch64", y el conjunto de instrucciones nuevo asociado "A64", además de un estado de ejecución de 32 bits, "AArch32", que admite los conjuntos de instrucciones de 32 bits "A32" (ARM original de 32 bits) y "T32" (Thumb/Thumb-2). Estos últimos conjuntos de instrucciones proporcionan compatibilidad en el espacio de usuario con la arquitectura ARMv7-A de 32 bits existente. ARMv8-A permite que las aplicaciones de 32 bits se ejecuten en un sistema operativo de 64 bits, y que un sistema operativo de 32 bits esté bajo el control de un hipervisor de 64 bits . [ 1 ] ARM anunció sus núcleos Cortex-A53 y Cortex-A57 el 30 de octubre de 2012. [ 6 ] Apple fue la primera en lanzar un núcleo compatible con ARMv8-A ( Cyclone ) en un producto de consumo ( iPhone 5S ). AppliedMicro , utilizando una FPGA , fue la primera en hacer una demostración de ARMv8-A. [ 7 ] El primer SoC ARMv8-A de Samsung es el Exynos 5433 utilizado en el Galaxy Note 4 , que cuenta con dos clústeres de cuatro núcleos Cortex-A57 y Cortex-A53 en una configuración big.LITTLE ; pero solo funciona en modo AArch32. [ 8 ] ARMv8-A incluye VFPv3/v4 y SIMD avanzado (Neon) como características estándar tanto en AArch32 como en AArch64. También agrega instrucciones de criptografía que admiten AES , SHA-1 / SHA-256 y aritmética de campo finito . [ 9 ]

Un procesador ARMv8-A puede admitir AArch32 o AArch64, o ambos; puede admitir AArch32 y AArch64 en niveles de excepción más bajos y solo AArch64 en niveles de excepción más altos. [ 10 ] Por ejemplo, el ARM Cortex-A32 admite solo AArch32, [ 11 ] el ARM Cortex-A34 admite solo AArch64, [ 12 ] y el ARM Cortex-A72 admite tanto AArch64 como AArch32. [ 13 ] Un procesador ARMv9-A debe admitir AArch64 en todos los niveles de excepción y puede admitir AArch32 en EL0. [ 10 ]

ARMv8.1-A

En diciembre de 2014, se anunció ARMv8.1-A, [ 14 ] una actualización con "beneficios incrementales respecto a v8.0". Las mejoras se dividieron en dos categorías: cambios en el conjunto de instrucciones y cambios en el modelo de excepciones y la traducción de memoria.

Las mejoras en el conjunto de instrucciones incluyeron lo siguiente:

  • Un conjunto de instrucciones atómicas de lectura y escritura AArch64.
  • Se han añadido funcionalidades al conjunto de instrucciones Advanced SIMD para AArch32 y AArch64, lo que permite optimizar algunas bibliotecas:
    • Firmado Saturación Redondeo Duplicar Multiplicar Acumular, Devolver Alto Mitad.
    • Signo Saturación Redondeo Duplicación Multiplicación Resta, Devolución Alta Mitad.
    • Las instrucciones se añaden en forma vectorial y escalar.
  • Un conjunto de instrucciones de carga y almacenamiento AArch64 que pueden proporcionar un orden de acceso a la memoria limitado a regiones de direcciones configurables.
  • Las instrucciones CRC opcionales de la versión 8.0 se convierten en un requisito en ARMv8.1.

Las mejoras para el modelo de excepciones y el sistema de traducción de memoria incluyeron lo siguiente:

  • Un nuevo bit de estado de Acceso Privilegiado Nunca (PAN, por sus siglas en inglés) proporciona un control que impide el acceso privilegiado a los datos del usuario a menos que se habilite explícitamente.
  • Mayor rango de VMID para virtualización; admite un mayor número de máquinas virtuales.
  • Soporte opcional para la actualización por hardware del indicador de acceso a la tabla de páginas y la estandarización de un mecanismo de bit de modificación opcional, actualizable por hardware.
  • Las extensiones de host de virtualización (VHE) optimizan el rendimiento de los hipervisores de tipo 2 al reducir la sobrecarga de software asociada a la transición entre los sistemas operativos host e invitado. Estas extensiones permiten que el sistema operativo host se ejecute en EL2, en lugar de EL1, sin modificaciones sustanciales. [ 15 ]
  • Un mecanismo para liberar algunos bits de la tabla de traducción para su uso por el sistema operativo, cuando este no necesita el soporte de hardware.
  • Ignorar el byte superior para el etiquetado de memoria . [ 16 ]

ARMv8.2-A

ARMv8.2-A se anunció en enero de 2016. [ 17 ] Sus mejoras se dividen en cuatro categorías:

Extensión vectorial escalable (SVE)

La extensión vectorial escalable (SVE) se licencia como "una extensión opcional para la arquitectura ARMv8.2-A y posteriores", desarrollada específicamente para la vectorización de cargas de trabajo científicas de computación de alto rendimiento . [ 18 ] [ 19 ] La especificación permite a los licenciatarios de ARM elegir un ancho de registro arquitectónico predefinido entre 128 y 2048 bits en múltiplos de 128. Esta extensión es complementaria a las extensiones NEON y no las reemplaza .

Ya se ha implementado una variante SVE de 512 bits en la supercomputadora Fugaku utilizando el procesador ARM Fujitsu A64FX ; esta computadora [ 20 ] fue la supercomputadora más rápida del mundo durante dos años, desde junio de 2020 [ 21 ] hasta mayo de 2022. [ 22 ] Una versión más flexible, 2x256 SVE, fue implementada por el procesador ARM AWS Graviton3 .

SVE es compatible con GCC , con GCC 8 compatible con la vectorización automática [ 19 ] y GCC 10 compatible con las funciones intrínsecas de C. A partir de julio de 2020LLVM y clang admiten funciones intrínsecas de C e IR. La bifurcación de LLVM de ARM admite la autovectorización. [ 23 ]

ARMv8.3-A

En octubre de 2016 se anunció ARMv8.3-A. Sus mejoras se dividieron en seis categorías: [ 24 ]

  • Autenticación de punteros (PAC) [ 25 ] [ 26 ] (solo AArch64); extensión obligatoria (basada en un nuevo cifrado de bloques , QARMA [ 27 ] ) a la arquitectura (los compiladores necesitan explotar la característica de seguridad, pero como las instrucciones están en el espacio NOP, son retrocompatibles aunque no proporcionan seguridad adicional en chips más antiguos).
  • Virtualización anidada (solo AArch64).
  • Compatibilidad avanzada con números complejos SIMD (AArch64 y AArch32); por ejemplo, rotaciones en múltiplos de 90 grados.
  • Nueva instrucción FJCVTZS (conversión de punto flotante de JavaScript a punto fijo con signo, redondeo hacia cero). [ 28 ]
  • Un cambio en el modelo de consistencia de memoria (solo AArch64) para admitir el modelo RCpc (Release Consistent processor consistent) más débil (no predeterminado) de C++11 / C11 (el modelo de consistencia predeterminado de C++11/C11 ya era compatible con ARMv8 anterior).
  • Mecanismo de identificación compatible con cachés visibles del sistema de mayor tamaño (AArch64 y AArch32).

La arquitectura ARMv8.3-A ahora es compatible con (al menos) GCC 7.0. [ 29 ]

ARMv8.4-A

En noviembre de 2017, se anunció ARMv8.4-A. Sus mejoras se dividieron en estas categorías: [ 30 ] [ 31 ] [ 32 ]

  • "Extensiones criptográficas SHA3 / SHA512 / SM3 / SM4 ", es decir, instrucciones opcionales.
  • Soporte mejorado para la virtualización. [ 33 ]
  • Capacidades de particionamiento y monitorización de memoria (MPAM).
  • Un nuevo estado EL2 seguro y monitores de actividad.
  • Instrucciones para el producto escalar de enteros con signo y sin signo (SDOT y UDOT).

ARMv8.5-A y ARMv9.0-A

En septiembre de 2018, se anunció ARMv8.5-A. Sus mejoras se dividieron en estas categorías: [ 34 ] [ 35 ] [ 36 ]

  • Extensión de etiquetado de memoria (MTE) (AArch64). [ 37 ]
  • Los indicadores de destino de rama (BTI) (AArch64) reducen la capacidad de un atacante para ejecutar código arbitrario. Al igual que la autenticación de punteros, las instrucciones relevantes no realizan ninguna operación en versiones anteriores de ARMv8-A.
  • Instrucciones del generador de números aleatorios: "proporciona números aleatorios deterministas y verdaderos que cumplen con diversas normas nacionales e internacionales".

El 2 de agosto de 2019, Google anunció que Android adoptará Memory Tagging Extension (MTE). [ 38 ]

En marzo de 2021 se anunció ARMv9-A. La base de ARMv9-A incluye todas las características de ARMv8.5. [ 39 ] [ 40 ] [ 41 ] ARMv9-A también añade:

ARMv8.6-A y ARMv9.1-A

En septiembre de 2019, se anunció ARMv8.6-A. Sus mejoras se dividieron en estas categorías: [ 34 ] [ 47 ]

  • Multiplicación general de matrices (GEMM).
  • Compatibilidad con el formato Bfloat16 .
  • Instrucciones para la manipulación de matrices SIMD (añadidas a NEON):
    • BFDOT* (producto escalar de BFloat16)
    • BFMMLA (multiplicación y acumulación de matrices BFloat16)
    • BFMLAL* (BFloat16 se multiplica y acumula, ensanchándose a largo)
    • BFCVT* (conversión de BFloat16)
  • Mejoras en virtualización, gestión de sistemas y seguridad.
  • Y las siguientes extensiones (para las que LLVM 11 ya agregó soporte [ 48 ] ):
    • Virtualización de contadores mejorada (ARMv8.6-ECV).
    • Trampas de grano fino (ARMv8.6-FGT).
    • Virtualización de monitores de actividad (ARMv8.6-AMU).

Por ejemplo, trampas de grano fino, instrucciones Wait-for-Event (WFE), EnhancedPAC2 y FPAC. Las extensiones bfloat16 para SVE y Neon se utilizan principalmente en aprendizaje profundo . [ 49 ]

ARMv8.7-A y ARMv9.2-A

En septiembre de 2020 se anunció ARMv8.7-A. Sus mejoras se dividieron en estas categorías: [ 34 ] [ 50 ]

  • Extensión de matriz escalable (SME) (solo ARMv9.2). [ 51 ] SME agrega nuevas características para procesar matrices de manera eficiente, tales como:
    • Almacenamiento de baldosas Matrix.
    • Transposición de matriz sobre la marcha.
    • Cargar/almacenar/insertar/extraer vectores de mosaicos.
    • Producto exterior matricial de vectores SVE.
    • "Modo de transmisión" SVE.
  • Soporte mejorado para la conexión en caliente de PCIe (AArch64).
  • Carga y almacenamiento atómico de 64 bytes en aceleradores (AArch64).
  • Esperar interrupción (WFI) y esperar evento (WFE) con tiempo de espera (AArch64).
  • Grabación de registros de ramificación (solo para ARMv9.2).
  • Registrador de pila de llamadas

ARMv8.8-A y ARMv9.3-A

En septiembre de 2021, se anunciaron ARMv8.8-A y ARMv9.3-A. Sus mejoras se dividieron en estas categorías: [ 34 ] [ 52 ]

  • Interrupciones no enmascarables (AArch64).
  • Instrucciones para optimizar las operaciones de tipo memcpy() y memset() (AArch64).
  • Mejoras en PAC (AArch64).
  • Ramas condicionales sugeridas (AArch64).

LLVM 15 admite ARMv8.8-A y ARMv9.3-A. [ 53 ]

ARMv8.9-A y ARMv9.4-A

En septiembre de 2022, se anunciaron ARMv8.9-A y ARMv9.4-A, que incluyen: [ 54 ]

  • Mejoras en la arquitectura del sistema de memoria virtual (VMSA).
    • Indirección de permisos y superposiciones.
    • Endurecimiento de la traducción.
    • Tablas de traducción de 128 bits (solo para ARMv9).
  • Extensión de matriz escalable 2 (SME2) (solo para ARMv9).
    • Instrucciones multivectoriales.
    • Predicados multivectoriales.
    • Compresión de peso 2b/4b.
    • 1b redes binarias.
    • Precarga de rango.
  • Pila de control protegida (GCS) (solo para ARMv9).
  • Informática confidencial.
    • Contextos de cifrado de memoria.
    • Asignación de dispositivos.

ARMv9.5-A

En octubre de 2023 se anunció ARMv9.5-A, que incluye: [ 55 ]

  • Se ha añadido compatibilidad con FP8 (formatos E5M2 y E4M3) a:
    • PYME2
    • SVE2
    • SIMD avanzado (Neón)
  • Migración en vivo de máquinas virtuales mediante estructuras de seguimiento de estado de modificación del hardware (FEAT_HDBSS)
  • Aritmética de puntos comprobada
  • Se admite el uso de una combinación de PC y SP como modificador al generar o verificar códigos de autenticación de puntero.
  • Compatibilidad con diseños habilitados para la Extensión de administración de dominio (RME), compatibilidad con solo funciones no seguras en las Tablas de protección de gránulos y la capacidad de deshabilitar ciertos Espacios de direcciones físicas (PAS).
  • Trampas de escritura de configuración EL3.
  • Compatibilidad con puntos de interrupción para la activación de rangos de direcciones y discrepancias sin necesidad de vinculación.
  • Compatibilidad con la delegación eficiente de errores SError de EL3 a EL2 o EL1.

ARMv9.6-A

En octubre de 2024 se anunció ARMv9.6-A, que incluye: [ 56 ]

  • Mayor eficiencia de las PYME con operaciones de escasez estructurada y de cuarto de teja
  • Dominios MPAM para brindar un mejor soporte a los sistemas informáticos de memoria compartida en sistemas multichiplet y multichip.
  • Control de memoria del hipervisor para el análisis de trazas y perfiles estadísticos en máquinas virtuales.
  • Mejor almacenamiento en caché y ubicación de datos
  • Aislamiento granular de datos para computación confidencial
  • Bloqueo bit a bit de los registros del sistema EL1
  • Escalabilidad mejorada de las tablas de protección granular (GPT) para sistemas de memoria grandes.
  • Nuevas instrucciones SVE para expandir/comprimir y encontrar el primer/último elemento activo.
  • Instrucciones adicionales de carga y almacenamiento sin privilegios para permitir que el sistema operativo interactúe con la memoria de la aplicación (LDL(U)R* y STL(U)R*).
  • Inyección de excepciones de instrucciones indefinidas desde EL3

ARMv9.7-A

En octubre de 2025 se anunció ARMv9.7-A, que incluye: [ 57 ]

  • Transmisiones de invalidación de memoria dirigidas
  • Gestión flexible de recursos (MPAMv2)
  • Tipos de datos de 6 bits para inteligencia artificial
  • Códecs de vídeo
  • GICv5

ARM-R (arquitectura en tiempo real)

Se añadió soporte opcional para AArch64 al perfil Armv8-R, siendo el Cortex-R82 el primer núcleo Arm que lo implementó. [ 58 ] Añade el conjunto de instrucciones A64, con algunos cambios en las instrucciones de barrera de memoria. [ 59 ]

Referencias

  1. 1 2 3 4 Grisenthwaite, Richard (2011). "ARMv8-A Technology Preview" (PDF) . Archivado del original (PDF) el 11 de noviembre de 2011. Recuperado el 31 de octubre de 2011 .
  2. "Descripción general" . Aprenda la arquitectura: Entendiendo las extensiones Armv8.x y Armv9.x .
  3. "Manual de referencia técnica del procesador ARM Cortex-A57 MPCore" . Arm Ltd.
  4. "Procesador Cortex-A32 – ARM" . Consultado el 18 de diciembre de 2016 .
  5. "ARM revela detalles técnicos de la próxima versión de la arquitectura ARM" (Comunicado de prensa). Arm Holdings . 27 de octubre de 2011. Archivado del original el 1 de enero de 2019. Consultado el 20 de septiembre de 2013 .
  6. "ARM lanza la serie Cortex-A50, los procesadores de 64 bits más eficientes energéticamente del mundo" (Comunicado de prensa). Arm Holdings . Consultado el 31 de octubre de 2012 .
  7. "AppliedMicro presenta el primer núcleo ARM v8 de 64 bits del mundo" (Comunicado de prensa). AppliedMicro. 28 de octubre de 2011. Consultado el 11 de febrero de 2014 .
  8. "El Exynos 5433 de Samsung es un SoC ARM A57/A53" . AnandTech. Archivado del original el 17 de septiembre de 2014. Consultado el 17 de septiembre de 2014 .
  9. "Manual de referencia técnica del procesador ARM Cortex-A53 MPCore: Extensión de criptografía" . ARM . Consultado el 11 de septiembre de 2016 .
  10. 1 2 "Impacto de los niveles de excepción implementados" . Aprenda la arquitectura: modelo de excepción AArch64 . Arm.
  11. "Cortex-A32" . Desarrollador de Arm .
  12. "Cortex-A34" . Desarrollador de Arm .
  13. "Cortex-A72" . Desarrollador de Arm .
  14. Brash, David (2 de diciembre de 2014). "La arquitectura ARMv8-A y su desarrollo continuo" . Recuperado el 23 de enero de 2015 .
  15. "Virtualización de ARM: Rendimiento e implicaciones arquitectónicas" . ISCA 2016. 18 de junio de 2016.
  16. "Ignorar byte superior (TBI)" . WikiChip .
  17. Brash, David (5 de enero de 2016). "ARMv8-A: evolución de la arquitectura" . Recuperado el 7 de junio de 2016 .
  18. "La extensión vectorial escalable sve para la arquitectura ARMv8 a" . Comunidad Arm . 22 de agosto de 2016. Consultado el 8 de julio de 2018 .
  19. 1 2 "Serie de lanzamientos de GCC 8: cambios, nuevas características y correcciones: Proyecto GNU - Fundación del Software Libre (FSF)" . gcc.gnu.org . Consultado el 9 de julio de 2018 .
  20. "Fujitsu completa el prototipo de CPU para supercomputadora Post-K y comienza las pruebas de funcionalidad – Fujitsu Global" . www.fujitsu.com (Comunicado de prensa) . Consultado el 8 de julio de 2018 .
  21. «La supercomputadora Fugaku de Japón obtiene el título de la más rápida del mundo» (Comunicado de prensa). www.riken.jp. 23 de junio de 2020. Consultado el 7 de diciembre de 2020 .
  22. "La frontera de ORNL es la primera en romper el techo del exaflop" . Top500 . 30 de mayo de 2022. Consultado el 30 de mayo de 2022 .
  23. "⚙ D71712 Implementación descendente de SVE/SVE2 (LLVM)" . reviews.llvm.org .
  24. David Brash (26 de octubre de 2016). "Arquitectura ARMv8-A: adiciones de 2016" .
  25. " [ Ping~,AArch64 ] Agregar soporte de línea de comandos para -march=armv8.3-a" . La extensión de autenticación de punteros se define como una extensión obligatoria en ARMv8.3-A y no es opcional.
  26. "Autenticación de punteros en ARM" . ARM . Consultado el 5 de marzo de 2025 .
  27. "Qualcomm publica un documento técnico que detalla la autenticación de punteros en ARMv8.3" . 10 de enero de 2017.
  28. "Instrucciones de punto flotante A64: FJCVTZS" . arm.com . Consultado el 11 de julio de 2019 .
  29. "Serie de lanzamientos de GCC 7: cambios, nuevas características y correcciones" . Ahora se admite la arquitectura ARMv8.3-A. Se puede usar especificando la opción -march=armv8.3-a. [...] Se admite la opción -msign-return-address= para habilitar la protección de la dirección de retorno mediante las extensiones de autenticación de punteros ARMv8.3-A.
  30. "Presentación de las extensiones de 2017 a la arquitectura Arm" . community.arm.com . 2 de noviembre de 2017. Consultado el 15 de junio de 2019 .
  31. "Explorando el aprendizaje automático de producto escalar" . community.arm.com . 6 de diciembre de 2017. Consultado el 15 de junio de 2019 .
  32. "ARM prepara la compatibilidad con el compilador GCC para ARMv8.4-A – Phoronix" . www.phoronix.com . Consultado el 14 de enero de 2018 .
  33. "NEVE: Extensiones de virtualización anidadas para ARM" . SOSP 2017. 14 de octubre de 2017.
  34. 1 2 3 4 "Extensiones y características de ARMv8.x y ARMv9.x" . Aprenda la arquitectura: Entendiendo las extensiones de ARMv8.x y ARMv9.x .
  35. "Anuncio de la arquitectura ARMv8.5-A – Blog de procesadores – Procesadores – Comunidad Arm" . community.arm.com . Consultado el 26 de abril de 2019 .
  36. "Manual de referencia de la arquitectura ARMv8, para el perfil de arquitectura ARMv8-A" . ARM Developer . Consultado el 6 de agosto de 2019 .
  37. "Arquitectura Arm MTE: Mejora de la seguridad de la memoria" . community.arm.com . 5 de agosto de 2019. Consultado el 27 de julio de 2021 .
  38. "Adopción de la extensión de etiquetado de memoria de Arm en Android" . Blog de seguridad en línea de Google . Consultado el 6 de agosto de 2019 .
  39. "La solución de Arm para las necesidades futuras de IA, seguridad y computación especializada es v9" . Arm | La arquitectura para el mundo digital . Consultado el 27 de julio de 2021 .
  40. Schor, David (30 de marzo de 2021). "Arm lanza ARMv9" . WikiChip Fuse . Consultado el 27 de julio de 2021 .
  41. Frumusanu, Andrei. "Arm anuncia la arquitectura ARMv9: SVE2, seguridad y la próxima década" . www.anandtech.com . Archivado del original el 30 de marzo de 2021. Consultado el 27 de julio de 2021 .
  42. 1 2 3 "Arm lanza SVE2 y TME para la arquitectura de perfil A – Blog de procesadores – Procesadores – Comunidad Arm" . community.arm.com . 18 de abril de 2019. Consultado el 25 de mayo de 2019 .
  43. 1 2 "Alineación del soporte Arm SVE2 para GCC 10, LLVM Clang 9.0 – Phoronix" . www.phoronix.com . Consultado el 26 de mayo de 2019 .
  44. "Diseño y verificación de la arquitectura de computación confidencial de Arm" . OSDI 2022. Consultado el 11 de julio de 2022 .
  45. "Desbloqueando el poder de los datos con Arm CCA" . community.arm.com . 23 de junio de 2021. Consultado el 27 de julio de 2021 .
  46. "Arm presenta su arquitectura de computación confidencial" . WikiChip Fuse . 23 de junio de 2021. Consultado el 27 de julio de 2021 .
  47. "Actualización de la arquitectura del perfil Arm A 2019" . community.arm.com . 25 de septiembre de 2019. Consultado el 26 de septiembre de 2019 .
  48. "Notas de la versión LLVM 11.0.0" . releases.llvm.org . Consultado el 11 de marzo de 2021 .
  49. "Extensiones BFloat16 para ARMv8-A" . community.arm.com . 29 de agosto de 2019. Consultado el 30 de agosto de 2019 .
  50. Weidmann, Martin (21 de septiembre de 2020). "Desarrollos de la arquitectura Arm A-Profile 2020" . community.arm.com . ARM . Consultado el 28 de septiembre de 2022 .
  51. "Extensión de matriz escalable para la arquitectura ARMv9-A" . community.arm.com . 14 de julio de 2021. Consultado el 27 de julio de 2021 .
  52. Weidmann, Martin (8 de septiembre de 2021). "Desarrollos de la arquitectura Arm A-Profile 2021" . community.arm.com . ARM . Consultado el 28 de septiembre de 2022 .
  53. "¿Qué hay de nuevo en LLVM 15? - Blog de arquitecturas y procesadores - Blogs de la comunidad Arm - Comunidad Arm" . 27 de febrero de 2023. Consultado el 15 de abril de 2023 .
  54. "Desarrollos de la arquitectura Arm A-Profile 2022 - Blog de arquitecturas y procesadores - Blogs de la comunidad Arm - Comunidad Arm" . community.arm.com . 29 de septiembre de 2022. Consultado el 9 de diciembre de 2022 .
  55. "Desarrollos de la arquitectura Arm A-Profile 2023 - Blog de arquitecturas y procesadores - Blogs de la comunidad Arm - Comunidad Arm" . community.arm.com . 5 de octubre de 2023. Consultado el 14 de octubre de 2024 .
  56. "Desarrollos de la arquitectura Arm A-Profile 2024 - Blog de arquitecturas y procesadores - Blogs de la comunidad Arm - Comunidad Arm" . community.arm.com . 1 de octubre de 2024. Consultado el 14 de octubre de 2024 .
  57. "Desarrollos de la arquitectura Arm A-Profile 2025 - Blog de arquitecturas y procesadores - Blogs de la comunidad Arm - Comunidad Arm" . community.arm.com . 2 de octubre de 2025. Consultado el 15 de octubre de 2025 .
  58. Frumusanu, Andrei (3 de septiembre de 2020). "ARM anuncia Cortex-R82: el primer procesador de tiempo real de 64 bits" . AnandTech .
  59. "Suplemento del manual de referencia de la arquitectura Arm - Armv8, para el perfil de arquitectura Armv8-R AArch64" . Arm Ltd.
  • Desarrollador de Arm: Descripciones de las características