
Dans un ordinateur, un smartphone ou un serveur, le processeur exécute des milliards d’opérations chaque seconde. Derrière cette performance se cache une question d’architecture : comment les instructions sont-elles conçues, décodées et exécutées ? L’architecture RISC, souvent associée aux puces ARM, Apple Silicon ou RISC-V, repose sur une idée simple mais déterminante : simplifier les instructions pour gagner en efficacité.
RISC signifie Reduced Instruction Set Computer, que l’on traduit généralement par « ordinateur à jeu d’instructions réduit ». Dans un processeur, le jeu d’instructions correspond à l’ensemble des commandes que la puce sait comprendre directement : additionner deux nombres, charger une donnée depuis la mémoire, comparer deux valeurs, effectuer un saut dans un programme, et ainsi de suite.
L’idée centrale de l’architecture RISC est de proposer des instructions simples, régulières et rapides à exécuter. Plutôt que de confier à une seule instruction une opération complexe, le processeur RISC préfère enchaîner plusieurs instructions élémentaires. Cette approche facilite la conception interne du processeur, améliore la prévisibilité des performances et permet souvent une meilleure efficacité énergétique.
L’architecture RISC apparaît comme un courant important à la fin des années 1970 et au début des années 1980. À cette époque, les processeurs CISC, pour Complex Instruction Set Computer, dominent largement. Ils proposent des instructions nombreuses et parfois très sophistiquées, pensées pour faciliter le travail des programmeurs et économiser de la mémoire, alors plus coûteuse qu’aujourd’hui.
Des chercheurs de Berkeley et d’IBM observent cependant que les programmes utilisent surtout un petit nombre d’instructions simples. Ils en tirent une conclusion pratique : mieux vaut optimiser les opérations courantes plutôt que multiplier les instructions complexes rarement employées. Les projets IBM 801, Berkeley RISC et Stanford MIPS ont joué un rôle clé dans cette évolution, en démontrant qu’un processeur plus simple pouvait être très performant.
Dans une architecture RISC, la plupart des instructions ont une taille fixe et s’exécutent en un nombre limité d’étapes. Cela simplifie le décodage : le processeur identifie rapidement ce qu’il doit faire, sans devoir interpréter des formats très différents. Cette régularité est précieuse, car elle permet d’organiser plus efficacement le travail interne de la puce.
Un principe classique du RISC est l’architecture dite load/store. Les opérations arithmétiques ne travaillent généralement pas directement sur la mémoire, mais sur des registres, de petites zones de stockage ultra-rapides situées dans le processeur. Pour additionner deux valeurs, la puce les charge d’abord depuis la mémoire vers les registres, effectue le calcul, puis écrit éventuellement le résultat en mémoire.
La comparaison entre RISC et CISC est souvent résumée ainsi : RISC privilégie des instructions simples et nombreuses dans le programme, tandis que CISC propose des instructions plus complexes capables d’effectuer davantage de travail en une seule commande. Historiquement, les processeurs x86 d’Intel et d’AMD sont associés au CISC, tandis que ARM, MIPS, SPARC ou RISC-V relèvent plutôt du RISC.
Dans les faits, la frontière est aujourd’hui plus subtile. Les processeurs x86 modernes traduisent souvent les instructions complexes en micro-opérations internes plus simples, proches dans l’esprit du RISC. À l’inverse, certaines architectures RISC ont ajouté des extensions spécialisées pour le calcul vectoriel, la cryptographie ou l’intelligence artificielle. L’opposition reste utile pour comprendre les philosophies de conception, mais elle ne suffit plus à classer toute la réalité technique.
Un processeur ne se contente pas d’exécuter une instruction après l’autre de manière naïve. Il prépare, décode, planifie et exécute plusieurs opérations en parallèle lorsque c’est possible. Des instructions simples et régulières facilitent cette organisation. Elles permettent notamment de mieux exploiter le pipeline, cette chaîne d’étapes internes qui découpe le traitement d’une instruction en plusieurs phases successives.
Le fonctionnement du pipeline est essentiel pour comprendre les gains possibles : pendant qu’une instruction est exécutée, une autre peut être décodée et une troisième chargée. Cette logique est expliquée plus en détail dans une présentation claire du traitement en étapes dans un processeur. Avec des instructions RISC régulières, il devient plus facile de maintenir ce flux sans interruption.
L’un des grands arguments en faveur des architectures RISC est leur sobriété énergétique. Un processeur plus simple à décoder, avec des instructions régulières et des circuits moins complexes, peut consommer moins d’énergie pour effectuer une tâche donnée. C’est l’une des raisons pour lesquelles ARM s’est imposé dans les smartphones, les tablettes et de nombreux objets connectés.
Cette efficacité ne signifie pas que tous les processeurs RISC consomment peu par nature. Tout dépend de la fréquence, du nombre de cœurs, de la finesse de gravure, de la mémoire cache et des objectifs du fabricant. Mais l’approche RISC facilite la conception de puces équilibrées, capables d’offrir de bonnes performances sans dissipation thermique excessive. Les processeurs Apple M1, M2 et M3 illustrent bien cette tendance dans les ordinateurs portables.
ARM est aujourd’hui l’exemple le plus visible de l’architecture RISC. Ses conceptions équipent la majorité des smartphones, mais aussi des montres connectées, des routeurs, des consoles portables et désormais des ordinateurs. Contrairement à Intel ou AMD, ARM ne fabrique pas directement la plupart des puces : l’entreprise fournit des architectures et des cœurs sous licence à des fabricants comme Qualcomm, MediaTek, Samsung ou Apple.
RISC-V représente une autre évolution importante. Cette architecture RISC est ouverte, ce qui signifie que ses spécifications peuvent être utilisées sans licence propriétaire comparable à celle d’ARM. Elle attire les universités, les industriels et les fabricants de composants spécialisés. On la retrouve dans des microcontrôleurs, des puces embarquées et des projets de processeurs plus ambitieux. Son intérêt tient autant à sa flexibilité technique qu’à son modèle ouvert.
Le RISC n’est pas une solution magique. Des instructions plus simples peuvent conduire à des programmes contenant davantage d’instructions, ce qui peut augmenter la pression sur la mémoire et le cache. Les compilateurs jouent donc un rôle essentiel : ils doivent transformer le code écrit par les développeurs en séquences d’instructions efficaces, en tenant compte des registres, du pipeline et des dépendances entre opérations.
Comme tous les processeurs modernes, les puces RISC doivent aussi gérer les branchements conditionnels, par exemple lorsqu’un programme exécute une action seulement si une condition est vraie. Pour éviter de ralentir le pipeline, les processeurs utilisent des mécanismes sophistiqués de prédiction. Le sujet est détaillé dans une explication consacrée à la prédiction des choix d’exécution, un élément clé des performances modernes.
L’architecture RISC repose sur une conviction technique : un jeu d’instructions plus simple peut rendre un processeur plus rapide, plus efficace et plus facile à optimiser. En privilégiant des opérations élémentaires, des formats réguliers et une forte utilisation des registres, elle facilite le travail interne de la puce et améliore souvent le rendement énergétique.
Son influence dépasse largement les débats théoriques entre RISC et CISC. ARM domine l’informatique mobile, Apple a démontré la pertinence de cette approche dans les ordinateurs personnels, et RISC-V ouvre de nouvelles perspectives dans les systèmes embarqués comme dans la recherche. Comprendre le RISC, c’est donc mieux comprendre une partie essentielle de l’évolution des processeurs contemporains.