ARM Cortex-A
ARM Cortex-A ou ARMv7-A est une famille de processeurs RISC 32 bits d'architecture ARM, dĂ©veloppĂ©e par ARM Ltd qui met en Ćuvre le jeu d'instructions ARMv7-A (le A est pour Cortex-A). Elle est destinĂ©e au marchĂ© des smartphones et tablettes tactiles et apparaĂźt sur les premiers tĂ©lĂ©phones avec le modĂšle Cortex-A8 au cours du premier semestre 2009. Elle succĂšde aux processeurs ARM11 (en) (jeu d'instructions ARMv6) et prĂ©cĂšde la famille Cortex-A50 (jeu d'instructions ARMv8). En parallĂšle, la sociĂ©tĂ© ARM a Ă©galement dĂ©veloppĂ© la famille Cortex-R (ARMv7-R) dĂ©diĂ©e au temps-rĂ©el et la famille Cortex-M (ARMv7-M) dĂ©diĂ©e Ă l'embarquĂ©.
Processeurs de la famille
La famille est composée de processeur basés sur l'architecture ARMv7-A, 32 bits.
1re génération
Cette génération est uniquement composée du Cortex-A8, existant en 8 révisions, qui remplace l'ARM11 (en), et introduit :
- l'advanced SIMD (ou NEON), Ă©volution du SIMD des ARMv6
- Le VFPv3 en version allégée, ayant une plus faible puissance de calcul, appelé VFPlite (environ dix fois plus lent que le VFPv3 de la deuxiÚme génération), est utilisé[1].
- Une version plus évoluée de Thumb-2
- ThumbEE (également appelé Jazelle RTC).
2e génération
La seconde gĂ©nĂ©ration ajoute la possibilitĂ© de coupler plusieurs cĆurs, au sein d'un mĂȘme SoC, d'oĂč l'ajout du terme MPCore (abrĂ©viation en anglais de « Multi Processor Core », littĂ©ralement, processeur multi-cĆur), dans lâappellation. Pour chacun des modĂšles, il est possible d'associer quatre cĆurs. L'implĂ©mentation de l'unitĂ© de calcul vectoriel flottant VFP3 n'est plus en version allĂ©gĂ©e.
- Cortex-A5 MPCore, version trĂšs basse consommation.
- Cortex-A9 MPCore, Ă©volution plus puissante du Cortex-A8.
3e génération
La troisiÚme génération ajoute[2] :
- un adressage étendu sur 40 bits avec LPAE (permet de gérer jusqu'à 1 Tio)
- La virtualisation matérielle
- L'architecture big.LITTLE permettant de faire fonctionner un processeur de trĂšs faible consommation la majoritĂ© du temps et d'utiliser un ou plusieurs cĆurs plus puissant, mais consommant plus, lorsque les applications le demandent[3].
- Le remplacement de l'unité de calcul flottant vectoriel VFPv3 par le VFPv4, compatible avec VFPv3.
Les trois processeurs de cette série, sont :
- Cortex-A7 MPCore, version trÚs basse consommation, équivalent du Cortex-A5 dans cette génération[2] premiers modÚles sortis début 2013.
- Cortex-A15 MPCore, version plus puissante, équivalent du Cortex-A9 dans cette génération[2], le premier modÚle est sorti fin 2012.
- Cortex-A12 MPCore, version intermédiaire, initialement prévue pour la deuxiÚme moitié de 2013, il verra des améliorations tellement importantes avant la sortie du premier modÚle qu'il sera rebaptisé Cortex-A17[4].
- Cortex-A17 MPCore, version améliorée du Cortex A12, plus efficace au niveau énergétique, et plus performant, présenté en par ARM[5].
big.LITTLE
Le mode big.LITTLE permet de combiner un ou plusieurs Cortex-A7, de trĂšs faible consommation avec un ou plusieurs Cortex-A15 de consommation plus importante mais Ă©galement plus puissant. Il est Ă©galement possible de coupler les Cortex-A7 avec les Cortex-A17, de consommation et puissance intermĂ©diaire[3]. Un ou plusieurs des cĆurs Cortex-A7 peuvent travailler lorsque la charge est faible, tandis-que les A15 ou A17 prendront le relais (mode IKS â In Kernel Switcher, signifiant en anglais « Commutation dans le noyau ») ou s'y ajouteront (mode GTS â Global Task Scheduling, signifiant « ordonnancement globale des tĂąches »)[6] lorsque l'utilisation le nĂ©cessitera. Cela permet d'Ă©conomiser de l'Ă©nergie dans la majoritĂ© des cas, tout en conservant de bonnes performances, lorsque cela est nĂ©cessaire.
Famille suivante
La 4e gĂ©nĂ©ration, nommĂ©e Cortex-A50 utilise l'architecture ARMv8, supportant pleinement le 64 bit (support des registres 64 bits) avec le modĂšle AArch64, l'architecture big.LITTLE est amĂ©liorĂ©e, supportant jusqu'Ă 16 cĆurs. Le FP et le SMID sont Ă©galement amĂ©liorĂ©s avec, notamment, l'augmentation du jeu d'instructions. Les patchs pour le noyau linux ont Ă©tĂ© soumis dĂšs le [7]. Linaro sort une premiĂšre image systĂšme le [8].
- Cortex-A53 MPCore (ARMv8, 64/32 bits), version trĂšs basse consommation, prĂ©vus pour 2014. Il a la mĂȘme puissance de calcul que le Cortex-A9, avec une consommation Ă©lectrique trĂšs infĂ©rieure[9]. Les premiers modĂšles de produits finis sont prĂ©vus pour 2014.
- Cortex-A57 MPCore (ARMv8, 64/32 bits), version plus puissante, prévus pour 2014
Historique
Le Cortex-A8 est le premier processeur de la série et est le successeur des processeurs ARM11 (en). Par rapport à son prédécesseur, il apporte notamment le jeu d'instructions ARMv7-A (à la place de l'ARMv6) et une amélioration des caches[10]. Il est utilisé sur des téléphones comme l'iPhone 3GS ou le Palm Pre à partir du premier semestre 2009.
Le Cortex-A9 est le remplaçant du Cortex-A8. Il apporte notamment l'exĂ©cution out-of-order des instructions et le support des architectures multi-cĆur. Il est utilisĂ© sur des tĂ©lĂ©phones comme le Galaxy S II ou des tablettes tactiles comme l'iPad 2 ou l'Asus Eee Pad Transformer Ă partir du premier semestre 2011.
Le Cortex-A5 est un processeur basse consommation à bas coût destiné aux smartphones d'entrée de gamme[11]. Il doit permettre de remplacer les processeurs ARM11 encore utilisés pour l'entrée de gamme par les fabricants et ainsi faire disparaßtre le jeu d'instructions ARMv6 au seul profit de l'ARMv7. Qualcomm l'utilise depuis fin 2011 pour ses puces d'entrée de gamme (intégrées dans des téléphones comme l'HTC Explorer (en)).
Les processeurs Cortex-A7 et Cortex-A15 ont Ă©tĂ© dĂ©veloppĂ©s en parallĂšle pour remplacer le Cortex-A9. Le Cortex-A15 est le plus puissant des deux. Ils possĂšdent la mĂȘme micro-architecture et sont donc 100 % compatibles[12]. Ils peuvent gĂ©rer jusqu'Ă 1 To de RAM (Adresses physiques sur 40 bits) et supportent la virtualisation assistĂ©e par le matĂ©riel[13]. Le Cortex-A7 est prĂ©sentĂ© par ARM comme consommant 5 fois moins dâĂ©nergie, Ă©tant 5 fois plus petit et 50 % plus puissant qu'un Cortex-A8[14]. Le Cortex-A15 est lui prĂ©sentĂ© comme Ă©tant 40 % plus puissant qu'un Cortex-A9 Ă frĂ©quence Ă©quivalente[15]. Lorsque les deux processeurs sont intĂ©grĂ©s sur une mĂȘme puce, le processeur Cortex-A7 peut ĂȘtre utilisĂ© pour les tĂąches nĂ©cessitant peu de ressources et ainsi rĂ©duire la consommation[12]. Cette technique est appelĂ©e Big.LITTLE par ARM et est comparable Ă la solution du cĆur compagnon intĂ©grĂ© dans les puces Tegra 3. Le premier appareil Ă utiliser un processeur Cortex-A15 (Exynos 5 double-cĆur) est le Chromebook Samsung XE303C12 sorti en [16]. Le premier pĂ©riphĂ©rique utilisant la technologie big.LITTLE est le Samsung Galaxy S4, dans sa version internationale, utilisant le processeur Exynos 5 Octa, composĂ© de 4 Cortex-A7 et 4 Cortex-A15.
Le , ARM a annoncĂ© le processeur Cortex-A12. Il est destinĂ© au marchĂ© des smartphones milieu de gamme et est annoncĂ© comme Ă©tant 40 % plus puissant que le Cortex-A9 pour une consommation Ă©quivalente[17]. Ils sont finalement abandonnĂ©s au profit du processeur ARM Cortex-A17 qui offre plus de puissance tout en consommant moins d'Ă©nergie. Le premier processeur Ă l'utiliser le Rockchip RK3288, annoncĂ© le au CES, avec des commerciaux dĂ©bordĂ©s, les visiteurs pensant qu'il s'agissait d'un Cortex-A12, dĂ©jĂ annoncĂ© par ARM, contrairement au Cortex-A17, qui ne fut annoncĂ© que quelques semaines aprĂšs[18], et dont les premiers appareils sortent Ă©quipĂ©s sortent durant l'Ă©tĂ© 2014. Ce SoC se trouve dĂšs sa sortie dans le peloton de tĂȘte des plus vĂ©loces des SoC Ă base de processeurs ARM, avec des scores supĂ©rieur Ă certains octo-cores A15 + A7[19]. Il est suivi par le Mediatek MT6595 utilisant la technologie big.LITTLE en couplant pour la premiĂšre fois, 4 cĆurs Cortex-A17 et 4 cĆurs Cortex-A7 annoncĂ© en [20].
La famille des processeurs ARM Cortex-A est suivie par la famille ARM Cortex-A50[21]. Les deux premiers processeurs de cette famille, le Cortex-A53 et le Cortex-A57 prennent respectivement la succession du Cortex-A7 et du Cortex-A15. Ces processeurs sont 64 bits et utilisent le jeu d'instructions ARMv8.
Implémentations
La société ARM ne conçoit pas de SoC. Elle vend des licences de son jeu d'instructions et du design de ses processeurs.
L'Ă©mulateur QEMU permet dâĂ©muler les processeurs cortex-A8, cortex-A9 et cortex-A15.
Les principaux concepteurs de puces intĂ©grant un ou plusieurs cĆurs ARM Cortex-A sont AllWinner Technology, AMLogic, Apple, Freescale, Nvidia, Samsung, HiSilicon, Rockchip, ST-Ericsson et Texas Instruments. Ils ont chacun dĂ©veloppĂ© leur propre famille de puce ARM :
Note : L'Apple A6 n'est pas dans la table, car il utilise un processeur hybride, utilisant la base du processeur Cortex-A9, avec quelques fonctionnalités du Cortex-A15[22].
AllWinner | Altera | AMLogic | Apple | Freescale | HiSilicon | LG | MediaTek | Nvidia | Qualcomm | Rockchip | Samsung | ST-Ericsson | Texas Instruments | VIA | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Cortex-A5 | S805 | MSM7625A, MSM7627A, MSM7225A, MSM7225AB, MSM7227A, MSM8225, MSM8225Q, MSM8625, MSM8625Q | |||||||||||||
Cortex-A7 | A2X et A3X | i.MX7x,
LS1020, LS1021 (QorIQ) |
MT6517, MT6572, MT6589, MT6592 | 8026, 8210, 8212, 8226, 8228 8610, 8612, 8626, 8628, 8926, 8928 | WM8860 | ||||||||||
Cortex-A8 | A10 et A13 | A4 | i.MX5x | RK2918 | Exynos 3 | OMAP3 | |||||||||
Cortex-A9 | Arria V, Arria 10, Cyclone V | AML7366-M et AML8726-(M, M3L, M6, MX), S802, S812 | A5 | i.MX6x | K3V2 | MT6575, MT6577 | Tegra 2, Tegra 3 et Tegra 4i | RK3066, RK3188, RK3168, PX2 | Exynos 4 | Nova U8500 | OMAP4 | WM8880, WM8950, WM8980 | |||
Cortex-A15 | Tegra 4, Tegra K1 | Exynos 5 Dual, Quad |
Nova A9600 | OMAP5 | |||||||||||
Cortex-A17 | RK3288[23] | ||||||||||||||
big.LITTLE A7 + A15 |
A6X, A80[24] | K3V3 | LG Nuclun (LG7111) | MT8135 | Exynos 5 Octa | ||||||||||
big.LITTLE A7 + A17 |
MT6595[25] | ||||||||||||||
Cortex-A53 | H64,
9X |
S905 | i.MX8x | MT6732,
MT6752, MT6795 |
MayBach | ||||||||||
Cortex-A57 | 9X | i.MX8x | |||||||||||||
Les fonderies fabriquant les puces ARM développées par ces entreprises sont GlobalFoundries, Samsung, TSMC et UMC[26] - [27] - [28].
Processeurs dérivés
Plusieurs entreprises ont développé leurs propres processeurs utilisant le jeu d'instructions ARMv7 : Apple, Marvell et Qualcomm.
Qualcomm est l'un des principaux concepteurs de puces ARM pour smartphone avec sa gamme Snapdragon. Les premiĂšres puces Ă©taient basĂ©es sur le processeur ARM11. Pour son entrĂ©e de gamme, la sociĂ©tĂ© commercialise, depuis le dernier trimestre 2011, des puces Ă base de Cortex-A5[29]. Mais pour son milieu et son haut de gamme, elle ne licencie pas le design rĂ©alisĂ© par ARM, contrairement aux autres fabricants. Elle met en Ćuvre par elle-mĂȘme le jeu d'instructions ARMv7-A avec les cĆurs Snapdragon Scorpion et Krait. Au niveau des performances, le cĆur Scorpion se situe entre le Cortex-A8 et le cortex-A9 et le cĆur Krait entre le Cortex-A9 et le Cortex-A15[30]. Le , Qualcomm a prĂ©sentĂ© deux versions amĂ©liorĂ©es de son architecture Krait : le Krait 300 et le Krait 400[31].
Marvell a dĂ©veloppĂ© plusieurs cĆurs utilisant le jeu dâinstructions ARMv7 : Le cĆur « Sheeva PJ4 » prĂ©sent dans les processeurs des sĂ©ries Armada 500 et 600[32] et le cĆur « Sheeva PJ4b » prĂ©sent dans le processeur Armada 1500[33].
Note : Marvell est revenu aux cĆurs ARM Cortex sous licence pour ses nouveaux chips[34].
En , Apple a prĂ©sentĂ© l'iPhone 5 basĂ© sur la puce A6. C'est le premier SoC d'Apple Ă utiliser un processeur nommĂ© « Swift », dĂ©veloppĂ© par P.A. Semi et Intrinsity (en) et fabriquĂ© par Samsung[22]. Il utilise le jeu d'instructions ARMv7S et offre des performances proches du cĆur « Krait » de Qualcomm[35].
Tableau de comparaison
Note : Les processeurs ARM11, Scorpion et Krait sont présents dans la liste à titre de comparaison.
ARM11 | ARM Cortex-A5 | ARM Cortex-A7 | ARM Cortex-A8 | Qualcomm Scorpion | ARM Cortex-A9 | ARM Cortex-A12[17] | Qualcomm Krait | ARM Cortex-A15 | |
---|---|---|---|---|---|---|---|---|---|
Instructions par cycle[36] | 1 | 1 | 2 | 2 | 2 | 2 | 2 | 3 | 3 |
Profondeur du pipeline[36] | 8 | 8 | 8 | 13 | 10 | 8 | 11 | 11 | 15 |
exécution out-of-order[36] | Non | Non | Non | Non | Partiel | Oui | Oui | Oui | Oui |
Finesse de gravure | 90/45 nm | 45/40 nm | 40/28 nm | 65/45 nm | 65/45 nm | 45/32 nm | 28 nm | 28 nm | 32/28 nm |
Nombre de cĆurs | 1-4[37] | 1-4[11] | 1-4 par cluster[38] | 1[39] | 1-2 | 1-4[40] | 1-4 par cluster[41] | 2-4 | 1-4 par cluster[42] |
FrĂ©quence[43] | 350â1 000 MHz[44] | 300â800 MHz | 800â1 500 MHz | 600â1 000 MHz | 800â1 700 MHz | 600â2 000 MHz | 1 000â2 500 MHz | 1 000â1 700 MHz | 1 000â2 500 MHz |
DMIPS/MHz/CĆur[43] | 1.25[37] | 1.57[11] | 1.9 | 2.0 | 2.1 | 2.5 | 3.3 | 3.5 | |
Notes et références
- (en) « Cortex A8 - r1p1 - Chapter 13. NEON & VFPLite Programmerâs Model », sur ARM.com.
- (en)(ja)(zh-CN) ARM Cortex-A Series sur ARM.com.
- (en) Eric Brown, « Linaro enhances Linux support for ARM Big.Little », sur Linuxgizmos, .
- (en) « ARM Cortex-A17 / Cortex-A12 processor update », sur arm.com, (consulté le ).
- (en) « MediaTek fires up new ARM Cortex-A17 », (consulté le ).
- (en) big.LITTLE Software Update « Copie archivée » (version du 6 août 2018 sur Internet Archive), le , sur Linaro.org.
- (en) [PATCH 00/36] AArch64 Linux kernel port sur la liste diffusion du noyau Linux.
- (en) Linaro ARMv8 Downloads Now Available « Copie archivée » (version du 6 août 2018 sur Internet Archive) sur linaro.org.
- (en) « ARM Launches Cortex-A50 Series, the Worldâs Most Energy-Efficient 64-bit Processors », sur ARM.com.
- (en) More Detail on ARM11 vs. Cortex A8 sur anandtech.com.
- (en) « Spécifications ARM Cortex-A5 », sur arm.com.
- Romain Heuillard, « ARM annonce big.LITTLE : un Cortex-A7 pour accompagner lâA15 », sur clubic.com, .
- (en) « ARM7 gets 40-bit, virtualization support », sur eetimes.com.
- (en) « Why Cortex-A7? », sur arm.com.
- (en) Désiré Athow, « Exclusive : ARM Cortex-A15 "40 Per Cent" Faster Than Cortex-A9 », sur itproportal.com, .
- Damien Labourot, « Chromebook de Google : puce ARM, USB 3.0 et HDMI pour 249 $ », sur pcinpact.com, .
- « ARM dévoile son Cortex A12 et son GPU Mali-T622 »(Archive.org ⹠Wikiwix ⹠Archive.is ⹠Google ⹠Que faire ?), sur tomshardware.fr.
- (pl) « CES2014: Procesor Rockchip RK3288 â Cortex-A12, Mali-T764 » [archive du ] (consultĂ© le ).
- « Le Rockchip RK3288 au-dessus des 40000 points sous Antutu ? », (consulté le ).
- (en) « MediaTek Announces MT6595, Worldâs First 4G LTE Octa-Core Smartphone SOC with ARM Cortex-A17 and Ultra HD H.265 Codec Support » [archive du ], (consultĂ© le ).
- (en) « ARM Launches Cortex-A50 Series, the Worldâs Most Energy-Efficient 64-bit Processors », sur arm.com.
- (en) « The iPhone 5's A6 SoC: Not A15 or A9, a Custom Apple Core Instead », anandtech.com, (consulté le ).
- (en) « Rockchip RK3288 SoC », Rockchip, (consulté le ).
- (zh) « ć šćżć±ç€șć ¶ćçș§è·ŻçșżïŒćæ žA6XăWXäžć «æ žA8XăA7XăA9X »(Archive.org âą Wikiwix âą Archive.is âą Google âą Que faire ?), sur ćčłæżç”èçœ/1pad.cn.
- (en) « MediaTek fires up new ARM Cortex-A17 », (consulté le ).
- (en) « Upset TI slams Samsungâs foundry efforts »(Archive.org âą Wikiwix âą Archive.is âą Google âą Que faire ?), sur eetimes.com (en).
- « Nvidia : du Tegra 3 en 28 nm et des cĆurs Cortex A15 pour Tegra 4 ? »(Archive.org âą Wikiwix âą Archive.is âą Google âą Que faire ?), sur pcworld.fr.
- « Apple abandonnerait Samsung pour TSMC »(Archive.org ⹠Wikiwix ⹠Archive.is ⹠Google ⹠Que faire ?), sur presence-pc.com.
- Pierre Dandumont, « Qualcomm attaque l'entrée de gamme en Snapdragon », sur tomshardware.fr, .
- « Krait : le nouveau Snapdragon a été testé »(Archive.org ⹠Wikiwix ⹠Archive.is ⹠Google ⹠Que faire ?), sur presence-pc.com.
- (en) « Qualcomm's Next-Gen Krait 400 & Krait 300 Announced in Snapdragon 800 & 600 SoCs », Anandtech (en), .
- (en) Anand Lal Shimpi, « Marvell's ARMADA: Custom Designed ARM SoCs Break 1 GHz », sur anandtech.com (en), .
- (en) Ganesh T S, « Google TV Goes ARM with Marvell's ARMADA 1500 », sur anandtech.com (en), .
- (en) « Copie archivée » (version du 6 août 2018 sur Internet Archive) sur marvell.com.
- « Swift, le vrai nom de l'A6 d'Apple », tomshardware.fr.
- (en) Anand Lal Shimpi, « ARM's Cortex A7: Bringing Cheaper Dual-Core & More Power Efficient High-End Devices », sur anandtech.com (en), .
- (en) « Spécifications ARM11 », sur arm.com.
- (en) « Spécifications ARM Cortex-A7 », sur arm.com.
- (en) « Spécifications ARM Cortex-A8 », sur arm.com.
- (en) « Spécifications ARM Cortex-A9 », sur arm.com.
- (en) « Spécifications ARM Cortex-A12 », sur arm.com.
- (en) « Spécifications ARM Cortex-A15 », sur arm.com.
- (en) « Processeurs Cortex-A », sur arm.com.
- (en) « Famille de processeur ARM11 », sur arm.com.
Liens externes
- (en) Cortex-A Series sur le site d'ARM.