Le fonctionnement optimal d’un logiciel dans un contexte donné dépend d’un environnement optimisé, soit une bonne architecture matérielle. Qu’en est-il au juste ? Vous vous êtes sans doute posé la question : un ordinateur, ça fonctionne comment au juste ? Le mieux, pour y répondre, est d’aborder le sujet de l’architecture matérielle.
Quels sont les éléments essentiels d’une architecture matérielle ?
- La gestion de la mémoire (l’emplacement où les données sont stockées).
- L’exécution des traitements (l’ordinateur effectue les tâches qui lui sont assignées).
- Les opérations d’entrée/sortie (E/S) (l’unité de traitement communique avec des éléments externes, comme la souris, le clavier ou l’écran).
L’architecture matérielle, c’est l’art d’organiser le matériel et les logiciels en vue d’obtenir un ordinateur rapide et efficace. Comme nous allons le voir ici, ce concept peut être abordé à divers niveaux d’abstraction et de détail.
Les composants physiques de l’architecture matérielle
Chacun des éléments précités correspond à des composants physiques précis.
Mémoire
La mémoire se présente sous deux formes. La RAM désigne un emplacement où les données qui doivent être traitées sont stockées de façon temporaire. Les données destinées à être conservées sur le long terme sont placées sur des disques.
Traitement
Le traitement d’instructions est effectué par un microprocesseur. On parle aussi de CPU (Central Processing Unit – unité centrale de traitement). Le microprocesseur principal est habituellement épaulé par d’autres processeurs spécialisés : calcul, graphiques, etc. Ce sont les logiciels qui déterminent les traitements que le microprocesseur va effectuer.
Entrées/sortie
Nous avons d’une part des dispositifs d’entrée / sortie d’information comme le clavier ou la souris (entrée), l’écran ou une imprimante (sortie).
Nous aussi les bus qui acheminent les données d’un point à un autre. Par exemple, un bus qui va relier le microprocesseur à la RAM.

Deux modèles principaux d’architecture matérielle
Historiquement, deux modèles ont marqué l’architecture matérielle :
- L’architecture de Von Neumann conçue par le mathématicien John von Neumann a servi de base à la conception des premiers ordinateurs comme l’EDSAC, un ordinateur de première génération mis en service en 1949 à l’Université de Cambridge (Royaume-Uni). Son unité centrale utilisait 3 000 tubes à vides. L’entrée des données passait par un lecteur de ruban perforé.
- L’architecture Harvard est apparue à la même époque. Elle a été développée aux USA à l’Université Harvard pour le projet Mark I (1944), un des premiers ordinateurs électromécaniques. D’une taille de 15 mètres de long, 2,5 mètres de haut, il pesait près de 5 tonnes et était composé de plus de 750 000 pièces. Conçu par le mathématicien Howard Aiken en collaboration avec IBM, le Mark I se distinguait du modèle Von Neuman du fait qu’il sépare la mémoire des données et la mémoire des instructions.
Ces deux architectures ont posé les bases de l’informatique, mais les ordinateurs actuels utilisent un mélange des deux.
Différentes architectures informatiques
Dans la pratique, il existe plusieurs types d’architectures matérielles, chacune optimisée pour répondre à des besoins précis.
- CISC (Complex Instruction Set Computer) : nous avons là des processeurs capables d’exécuter des instructions complexes. C’est le modèle x86, utilisé par Intel et AMD dans la plupart des PC.
- RISC (Reduced Instruction Set Computer) : ces processeurs ont un jeu d’instructions plus réduit ce qui les rend plus simples à programmer et plus rapides. C’est le type d’architecture utilisé dans la majorité des smartphones et tablettes (ARM, Apple M1/M2/M3…)
- Superscalaire : un tel modèle permet l’exécution de plusieurs instructions en même temps, ce qui augmente les performances. Certains processeurs Intel comme Core i5/i7/i9, AMD Ryzen reposent sur cette architecture.
- VLIW (Very Long Instruction Word) : Plusieurs instructions sont regroupées en une seule pour gagner en vitesse. Ce modèle est notamment utilisé dans les DSP (Digital Signal Processors) qui traitent l’audio/la vidéo.

Combien de processeurs ?
Un autre élément qui peut être considéré dans l’architecture matérielle est le nombre de processeurs. Les trois grands modèles sont les suivants.
- Monoprocesseur : 1 seul processeur. Telle est l’architecture que l’on trouvait dans les anciennes générations de PC.
- Multiprocesseur : Plusieurs processeurs (ou cœurs) partagent la même mémoire. Nous avons là les PC multicœurs (Intel Core i7, AMD Ryzen…)
- Multicomputer : Un ensemble de machines indépendantes (chacune avec son propre processeur et sa propre mémoire), coopèrent sur une même tâche. Tel est le modèle utilisé sur dans le Cloud computing (AWS, Google Cloud, Microsoft Azure).
Catégories d’architectures matérielles
L’architecture matérielle ne se résume pas à la forme physique des composants tels que le processeur. Elle peut être décomposée en trois niveaux complémentaires, qui chacun jouent un rôle spécifique.
Conception système (System Design)
On désigne par cette expression, l’organisation globale des composants matériels d’un ordinateur.
Architecture du jeu d’instructions (ISA – Instruction Set Architecture)
Nous avons ici l’interface entre le matériel et le logiciel. Quel est le langage que le microprocesseur comprend, soit les instructions de base qu’il peut exécuter ?
Microarchitecture
Nous avons ici la manière dont un processeur particulier interprète et exécute les instructions de l’ISA.

Pourquoi la conception matérielle est importante ?
Une bonne architecture matérielle amène :
- De meilleures performances.
- Une meilleure efficacité énergétique.
- Une potentielle évolutivité (possibilité d’ajouter des composants).
- Une meilleure intégration logicielle (le matériel et le système d’exploitation/less logiciels fonctionnent en bonne intelligence).