Les processeurs ARM

Ces dernières années ont vu la montée de l’informatique embarquée dans nos quotidiens : montre, casque audio, smartphone, tablettes. Gadgets au premier abord, ces différents appareils peuvent aujourd’hui offrir une grande puissance de calcul grâce à leur processeur. Mais comment ? Leur taille laisse peu de place à l’intégration d’une multitude de composants. Et pourtant, pour certains, ils n’ont que peu de choses à envier à un ordinateur. ABGI vous présente un article complet sur les processeurs ARM.

Une architecture offrant économie de place et d’énergie

 

La différence entre les processeurs

La principale différence entre nos ordinateurs et les autres appareils électroniques est le type de processeurs embarqués. En effet, on rencontre principalement des processeurs avec une architecture ARM (Acorn Risk Machine) sur nos smartphones et nos tablettes. Il s’agit d’une architecture relativement plus simple 1 que d'autres familles de processeurs telles que :

  • La famille POWER : calculateurs, serveurs chez IBM (32 ou 64 bits),
  • Ou plus couramment rencontrée, la famille x86 : processeurs d’ordinateurs (32 ou 64 bits) chez Intel, AMD, etc.

Par conséquent, elle bénéficie d'une faible consommation énergétique, idéale pour un appareil voué à la mobilité.

1 L'architecture ARM a initialement été développée en interne par la société britannique Acorn Computers, qui l'utilisa à partir de 1987 dans sa gamme d'ordinateurs 32 bits Archimedes. ARM signifiait alors « Acorn Risc Machine ». Ultérieurement la division « création de microprocesseurs » d'Acorn fut détachée de la société mère et devint la société « Advanced Risc Machine limited », se positionnant avec une offre indépendante pour le marché de l'électronique embarquée.

L'autonomie d'un processeur ARM

L’autonomie est directement liée à la consommation d’énergie durant le fonctionnement du système. L’économie d’énergie pour les systèmes temps réel embarqués tels que les SoC (System-on-chip) implique diverses activités de développement : la conception des systèmes embarqués, la théorie algorithmique et mathématique de l’ordonnancement 2 mono et multiprocesseur, la théorie des systèmes d’exploitation temps réel et la connaissance de ceux actuellement existants. En résumé, ce sont l’ordonnancement, l’architecture matérielle et l’exploitation temps réel qui vont déterminer l’économie d’énergie et donc l’autonomie du système.

2 L’ordonnancement consiste à déterminer le nombre de processeurs nécessaire pour la faisabilité d’un ensemble de tâches, et notamment de déterminer le nombre minimal de processeurs pour exécuter ces tâches, tout en visant une répartition maximale des tâches afin de réduire la consommation énergétique des processeurs.

Architecture x86 vs. ARM

 

L'ARM et son fonctionnement simple mais complet

ARM est surtout connu pour ses SoC, qui comprennent

  • un microprocesseur,
  • et un processeur graphique (GPU – Graphic Processor Unit),
  • puis, un DSP (Digital Signal Processor),
  • et un FPU (Floating-point Unit),
  • puis, un SIMD (Single Instruction Multiple Data)
  • et enfin, un contrôleur de périphériques sur une seule et même puce, d’où le nom de « système sur une puce ».

Il s’agit là d’un système fonctionnel complet, avec un jeu d’instructions réduit par ailleurs.

En effet, le « R » dans « ARM » fait référence à l’acronyme RISC (Reduced Instruction Set Computer, en français « Ordinateur à jeu d'instructions réduit »). D’une part, on mise ici sur la simplicité en rassemblant toutes les fonctionnalités du processeur sur une seule puce. D’autre part, le jeu d'instructions réduit permet d’intégrer un code moins volumineux au processeur, réduisant ainsi la consommation de la mémoire et le temps de cycle d'exécution.

Les architectures x86

Au contraire, les architectures x86 couramment rencontrées dans les PC sont des CISC (Complex Instruction Set Computers, en français « Ordinateurs à jeu d’instructions complexes »), qui visent la haute performance grâce à leur capacité à réaliser de nombreuses tâches sur la base d’une seule instruction.

Finalement, la principale différence entre ces deux types de systèmes, qui conditionne en partie la consommation énergétique, est la forme prise par les opérations mathématiques à appliquer. Les architectures RISC décomposent ces opérations en unités fondamentales. En effet, chaque opération représentant une étape dont le résultat est gardé en mémoire après exécution. Au contraire, les architectures CISC comprennent plusieurs opérations par étape. Elles peuvent ainsi supprimer automatiquement les registres actifs à la fin d’un processus, sans étape supplémentaire.

Par conséquent, on gagne en volume en ce qui concerne le jeu d’instructions, mais cela nécessite une mémoire en parallèle pour que l’architecture RISC soit fonctionnelle. Toutefois, il faut savoir que l’architecture ARM peut offrir une exécution dans le désordre. C’est-à-dire une parallélisation de l’exécution de ses opérations fondamentales.

Il existe évidemment d’autres types d’architectures telles que les architectures VLIW (Very Long Instruction Word), DSP (Digital Signal Processor) ou encore softcore. Ce dernier désigne un circuit logique programmable, mais qui ne comprend aucune fonction comme rencontrée dans l’architecture DSP. Toutefois, ces architectures ne concernent pas nos usages quotidiens.

L’intégration d’une architecture ARM sur un ordinateur ?

L'architecture des ordinateurs

Les ordinateurs sont principalement basés sur une architecture x86. Ils fonctionnent donc sur la base de jeux d’instructions complexes. Toutefois, on voit apparaître des processeurs ARM dans certains ordinateurs. En effet, on peut notamment évoquer la puce M1 sortie il y a quelques mois par le biais de la nouvelle gamme d’ordinateurs d’un constructeur connu. Celle-ci permet à la gamme d’ordinateurs en question d’atteindre une autonomie très importante d’environ 13 – 14 h en usage classique, voire de 20 h en lecture vidéo (hors ligne), tout en offrant de hautes performances.

Cette intégration semble simple au premier abord, mais a requis un travail sur les points évoqués ci-dessus. En effet, passer d’une architecture x86 à une architecture ARM requiert non seulement des modifications au niveau des composants, mais également au niveau du système d’exploitation, donc du point de vue logiciel. Un logiciel n’étant pas exécuté de la même façon sur les deux types d’architecture. L’adaptation du catalogue de logiciels proposés est toujours en cours. Il faut également noter que l’on perd ici la possibilité d’exécuter Windows nativement3 (x86, CISC) alors qu’il était possible auparavant de compter sur un dual boot 4 (MacOS/Windows). Cependant, le système d’exploitation peut désormais exécuter des applications importées des systèmes d’exploitation mobiles de la même famille (iOS, iPadOS).

La double émulation

Par ailleurs, il est devenu possible d’exécuter Windows 10 de façon non native par le biais de Parallels, une machine virtuelle 5, qui est, elle, capable d’exécuter Windows 10 de façon native. Avant cela, il était nécessaire d’émuler le système d’exploitation et les programmes destinés aux processeurs x86 au sein de celui-ci. Ce moyen générait donc une double émulation, ce qui engendrait des performances moindres. La machine virtuelle Parallels offre des performances bien meilleures et, dans certains cas, une expérience sensible aux performances en mode natif.

3 Le système ne peut exécuter directement le système d’exploitation, logiciel, etc.

4 Le dual boot désigne le choix entre deux systèmes d’exploitation au démarrage d’un ordinateur. Cette option nécessite un partitionnement du disque dur.

5 Une machine virtuelle permet d’émuler un système en réalisant une instance sur laquelle l’exécution simule celle du système cible.

Vers une transition de l'informatique ?

En conclusion, il est aujourd’hui possible d’offrir à la fois de hautes performances et une consommation énergétique réduite. Un tel changement signe-t-il le début d’une transition de l’informatique vers une ère plus économe en énergie ?

 

lindsay chemet rédactrice scientifique innovation ABGI France

 

Lindsay CHEMET
Consultante

 


Bibliographie

[1] Claudel, Numerama, 10 novembre, 2020,

[2] Rohárik Vîlcu, « Systèmes temps réels embarqués – Ordonnancement optimal de taches pour la consommation énergétique du processeur », Université Paris XII, Val de Marne, Faculté des Sciences et Technologies, 2004,

[3] « MacBook Pro M1 ou MacBook Pro Intel Core i5/Core i7, lequel choisir ? », Laptop Spirit, 20 novembre 2020,

[4] Pomian-Bonnemaison, « Windows 10 sur ARM débarque enfin sur les Mac M1 », Phonandroid, 15 avril 2021,

[5] « Les Mac M1 avec Parallels peuvent désormais exécuter Windows 10 ARM à des "vitesses natives" », Le tremplin numérique, 15 avril 2021,


Articles associés

Le paiement sans contact (Contactless payment)

Les ordinateurs quantiques : une technologie aux super-pouvoirs ?

Point de vue ABGI : l’informatique quantique

Les technologies de nos écrans

 

Contact

Vous souhaitez des informations complémentaires, être contacté par un de nos experts ou convenir d’un rendez-vous.