ARM Cortex-A o ARMv7-A es una familia de procesadores RISC de 32 bits de arquitectura ARM , desarrollada por ARM Ltd que implementa el conjunto de instrucciones ARMv7-A (la A es para Cortex-A). Está destinado al mercado de teléfonos inteligentes y tabletas con pantalla táctil y aparece en los primeros teléfonos con el modelo Cortex-A8 durante la primera mitad de 2009. Sucede a los procesadores ARM11 (conjunto de instrucciones ARMv6) y precede a la familia Cortex-A50 (conjunto de Instrucciones ARMv8 ). Paralelamente, la empresa ARM también ha desarrollado la familia Cortex-R(ARMv7-R) dedicado al tiempo real y la familia Cortex-M (ARMv7-M) dedicado al embebido .
La familia está formada por procesadores basados en la arquitectura ARMv7-A de 32 bits.
Esta generación solo está compuesta por el Cortex-A8 , existente en 8 revisiones, que reemplaza al ARM11 , e introdujo:
La segunda generación agrega la posibilidad de acoplar varios núcleos, dentro del mismo SoC, de ahí la adición del término MPCore (abreviatura en inglés de " Multi Processor Core ", literalmente, procesador multi-core), en el nombre. Para cada uno de los modelos, es posible asociar cuatro núcleos. La implementación de la unidad de cálculo vectorial flotante VFP3 ya no está en una versión ligera.
La tercera generación agrega:
Los tres procesadores de esta serie son:
El modo big.LITTLE permite combinar uno o más Cortex-A7s, de muy bajo consumo, con uno o más Cortex-A15s de mayor consumo pero también más potentes. También es posible acoplar el Cortex-A7 con el Cortex-A17, consumo y potencia intermedia. Uno o más de los núcleos Cortex-A7 pueden funcionar cuando la carga es baja, mientras que el A15 o A17 se hará cargo (modo IKS - En Kernel Switcher, que significa en inglés "Switching in the kernel") o agregarlo (modo GTS - Programación global de tareas, que significa "programación global de tareas") cuando el uso lo requiera. Esto ahorra energía en la mayoría de los casos, al tiempo que mantiene un buen rendimiento cuando es necesario.
El 4 º generación, llamado Cortex-A50 usos arquitectura ARMv8 , apoyando plenamente los (registros de 64 bits del soporte) de 64 bits con el modelo AArch64 , Big.little brazo arquitectura mejorada, que soporta hasta 16 corazones. el FP y el SMID también se mejoran con, en particular, el aumento del conjunto de instrucciones. Los parches para el kernel de Linux se han enviado desde6 de julio de 2012. Linaro lanzó una primera imagen del sistema en25 de octubre de 2012.
El Cortex-A8 es el primer procesador de la serie y es el sucesor de los procesadores ARM11 . Comparado con su predecesor, trae notablemente el conjunto de instrucciones ARMv7-A (en lugar del ARMv6) y cachés mejorados . Se utiliza en teléfonos como el iPhone 3GS o el Palm Pre desde el primer semestre de 2009.
El Cortex-A9 es el reemplazo del Cortex-A8. En particular, proporciona una ejecución desordenada de instrucciones y soporte para arquitecturas de múltiples núcleos . Se utiliza en teléfonos como el Galaxy S II o tabletas táctiles como el iPad 2 o el Asus Eee Pad Transformer del primer semestre de 2011.
El Cortex-A5 es un procesador de bajo costo y bajo consumo para teléfonos inteligentes de nivel de entrada. Debería hacer posible reemplazar los procesadores ARM11 que los fabricantes aún usan para el nivel de entrada y, por lo tanto, hacer que el conjunto de instrucciones ARMv6 desaparezca para el único beneficio del ARMv7. Qualcomm lo ha estado usando desde finales de 2011 para sus chips de nivel de entrada (integrados en teléfonos como el HTC Explorer ).
Los procesadores Cortex-A7 y Cortex-A15 se desarrollaron en paralelo para reemplazar al Cortex-A9. El Cortex-A15 es el más poderoso de los dos. Tienen la misma microarquitectura y, por tanto, son 100% compatibles. Pueden manejar hasta 1 TB de RAM (direcciones físicas de 40 bits) y admitir la virtualización asistida por hardware . ARM presenta Cortex-A7 como consumiendo 5 veces menos energía, siendo 5 veces más pequeño y 50% más poderoso que Cortex-A8. Cortex-A15 se presenta como un 40% más potente que Cortex-A9 a una frecuencia equivalente. Cuando los dos procesadores están integrados en el mismo chip, el procesador Cortex-A7 se puede utilizar para tareas que requieren pocos recursos y así reducir el consumo. Esta técnica se llama Big.LITTLE by ARM y es comparable a la solución de núcleo complementaria integrada en los chips Tegra 3 . El primer dispositivo que utiliza un procesador Cortex-A15 ( Exynos 5 de doble núcleo) es el Chromebook Samsung XE303C12 lanzado enOctubre 2012. El primer dispositivo que utiliza la tecnología big.LITTLE es el Samsung Galaxy S4 , en su versión internacional, que utiliza el procesador Exynos 5 Octa, compuesto por 4 Cortex-A7 y 4 Cortex-A15.
La 3 de junio de 2013, ARM anunció el procesador Cortex-A12 . Está dirigido al mercado de teléfonos inteligentes de gama media y se anuncia como un 40% más potente que el Cortex-A9 para un consumo equivalente. Finalmente se abandonan en favor del procesador ARM Cortex-A17 que ofrece más potencia y consume menos energía. El primer procesador en utilizar el Rockchip RK3288 , anunciado el10 de enero de 2014en el CES, con vendedores abrumados, los visitantes pensaban que era un Cortex-A12, ya anunciado por ARM, a diferencia del Cortex-A17, que no se anunció hasta unas semanas después, y cuyos primeros dispositivos salieron equipados fueron lanzados durante el verano de 2014. Tan pronto como se lanzó, este SoC se encuentra entre el paquete líder de SoC basados en procesadores ARM, con puntajes más altos que ciertos octo-núcleos A15 + A7. Le sigue el Mediatek MT6595 que utiliza la tecnología big.LITTLE al acoplar por primera vez, 4 núcleos Cortex-A17 y 4 núcleos Cortex-A7 anunciados enFebrero 2014.
A la familia de procesadores ARM Cortex-A le sigue la familia ARM Cortex-A50 . Los dos primeros procesadores de esta familia, el Cortex-A53 y el Cortex-A57, sustituyen respectivamente al Cortex-A7 y al Cortex-A15. Estos procesadores son de 64 bits y utilizan el conjunto de instrucciones ARMv8 .
ARM no diseña SoC . Vende licencias para su conjunto de instrucciones y el diseño de sus procesadores.
El emulador QEMU puede emular procesadores cortex-A8, cortex-A9 y cortex-A15.
Los principales diseñadores de chips que integran uno o más núcleos ARM Cortex-A son AllWinner Technology , AMLogic , Apple , Freescale , Nvidia , Samsung , HiSilicon , Rockchip , ST-Ericsson y Texas Instruments . Cada uno desarrolló su propia familia de chips ARM:
Nota: El Apple A6 no está en la tabla, ya que usa un procesador híbrido, usando la base del procesador Cortex-A9, con alguna funcionalidad del Cortex-A15.
AllWinner | Altera | AMLogic | manzana | Freescale | HiSilicon | LG | MediaTek | Nvidia | Qualcomm | Rockchip | Samsung | ST-Ericsson | Instrumentos Texas | VÍA | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Corteza-A5 | S805 | MSM7625A, MSM7627A, MSM7225A, MSM7225AB, MSM7227A, MSM8225, MSM8225Q, MSM8625, MSM8625Q | |||||||||||||
Corteza-A7 | A2X y A3X | i.MX7x,
LS1020, LS1021 (QorIQ) |
MT6517, MT6572, MT6589, MT6592 | 8026, 8210, 8212, 8226, 8228 8610, 8612, 8626, 8628, 8926, 8928 | WM8860 | ||||||||||
Corteza-A8 | A10 y A13 | A4 | i.MX5x | RK2918 | Exynos 3 | OMAP3 | |||||||||
Corteza-A9 | Arria V, Arria 10, Ciclón V | AML7366-M y AML8726- (M, M3L, M6, MX), S802, S812 | A LAS 5 | i.MX6x | K3V2 | MT6575, MT6577 | Tegra 2 , Tegra 3 y Tegra 4i | RK3066 , RK3188 , RK3168, PX2 | Exynos 4 | Nova U8500 | OMAP4 | WM8880, WM8950, WM8980 | |||
Corteza-A15 | Tegra 4 , Tegra K1 | Exynos 5 doble, cuádruple |
Nova A9600 | OMAP5 | |||||||||||
Corteza-A17 | RK3288 | ||||||||||||||
grande.LITTLE A7 + A15 |
A6X , A80 | K3V3 | LG Nuclun (LG7111) | MT8135 | Exynos 5 Octa | ||||||||||
grande LITTLE A7 + A17 |
MT6595 | ||||||||||||||
Corteza-A53 | H64,
9X |
S905 | i.MX8x | MT6732,
MT6752, MT6795 |
MayBach | ||||||||||
Corteza-A57 | 9X | i.MX8x |
Las fundiciones que fabrican los chips ARM desarrollados por estas empresas son GlobalFoundries , Samsung , TSMC y UMC .
Varias empresas han desarrollado sus propios procesadores utilizando el conjunto de instrucciones ARMv7: Apple , Marvell y Qualcomm .
Qualcomm es un diseñador líder de chips para teléfonos inteligentes ARM con su línea Snapdragon . Los primeros chips se basaron en el procesador ARM11. Para su nivel de entrada, la compañía ha estado comercializando, desde el último trimestre de 2011, chips basados en Cortex-A5. Pero por su gama media y alta, no licencia el diseño realizado por ARM, a diferencia de otros fabricantes. Implementa el conjunto de instrucciones ARMv7-A por sí solo con núcleos Snapdragon Scorpion y Krait. En términos de rendimiento, el corazón de Escorpio se encuentra entre Cortex-A8 y Cortex-A9 y el corazón de Krait entre Cortex-A9 y Cortex-A15. La7 de enero de 2013, Qualcomm presentó dos versiones mejoradas de su arquitectura Krait: la Krait 300 y la Krait 400.
Marvell ha desarrollado varios núcleos utilizando el conjunto de instrucciones ARMv7: el núcleo "Sheeva PJ4" que se encuentra en los procesadores de las series Armada 500 y 600 y el núcleo "Sheeva PJ4b" que se encuentra en el procesador Armada 1500.
Nota: Marvell ha vuelto a utilizar núcleos ARM Cortex con licencia para sus nuevos chips.
En septiembre 2012, Apple presentó el iPhone 5 basado en el chip A6 . Es el primer SoC de Apple que utiliza un procesador llamado "Swift", desarrollado por PA Semi e Intrinsity y fabricado por Samsung . Utiliza el conjunto de instrucciones ARMv7S y ofrece un rendimiento cercano al núcleo "Krait" de Qualcomm.
Nota: Los procesadores ARM11, Scorpion y Krait están presentes en la lista para comparar.
ARM11 | BRAZO Cortex-A5 | BRAZO Cortex-A7 | BRAZO Cortex-A8 | Escorpión de Qualcomm | BRAZO Cortex-A9 | BRAZO Cortex-A12 | Qualcomm Krait | BRAZO Cortex-A15 | |
---|---|---|---|---|---|---|---|---|---|
Instrucciones por ciclo | 1 | 1 | 2 | 2 | 2 | 2 | 2 | 3 | 3 |
Profundidad de la tubería | 8 | 8 | 8 | 13 | 10 | 8 | 11 | 11 | 15 |
Ejecución fuera de orden | No | No | No | No | Parcial | sí | sí | sí | sí |
Grabado de fineza | 90/45 nm | 45/40 nm | 40/28 nm | 65/45 nanómetro | 65/45 nanómetro | 45/32 nm | 28 millas náuticas | 28 millas náuticas | 32/28 nm |
Numero de nucleos | 1-4 | 1-4 | 1-4 por grupo | 1 | 1-2 | 1-4 | 1-4 por grupo | 2-4 | 1-4 por grupo |
Frecuencia | 350-1000 MHz | 300-800 MHz | 800-1,500 MHz | 600-1000 MHz | 800-1 700 MHz | 600-2000 MHz | 1000-2500 MHz | 1000-1700 MHz | 1000-2500 MHz |
DMIPS / MHz / núcleo | 1,25 | 1,57 | 1,9 | 2.0 | 2.1 | 2.5 | 3.3 | 3,5 |