Comment fonctionne un microprocesseur : Cycle Fetch-Decode-Execute
Un microprocesseur (CPU) est un circuit numérique synchrone qui répète le cycle fetch–decode–execute (chargement-décodage-exécution) sur les instructions stockées en mémoire. Voici la vision moderne, de l'ISA à la microarchitecture.
1. Architecture du jeu d'instructions (ISA)
Le contrat entre logiciel et matériel. ISAs dominants :
- x86-64 (Intel/AMD) — CISC, longueur variable, décodage complexe.
- ARMv8-A / ARMv9 (AArch64) — RISC, 32 bits fixe, load/store.
- RISC-V — Ouvert, modulaire, variantes 32/64/128 bits.
2. Étapes du pipeline (Cœur superscalaire out-of-order)
- Fetch (Chargement) : Prédicteur branches sélectionne PC suivant ; cache L1 I fournit 16-64 B.
- Decode (Décodage) : x86 → µops (1-4 par instruction) ; ARM/RISC-V → ops natifs.
- Rename/Allocate (Renommage/Allocation) : Renommage registres (éliminer risques WAR/WAW) ; réserver entrées ROB, slots files charge/store.
- Schedule/Dispatch (Ordonnancement/Envoi) : Ops prêts → stations réservation / ordonnanceur unifié.
- Execute (Exécution) : ALU, FPU, SIMD (AVX/SVE/NEON), unités charge/store, unité branches.
- Writeback/Retire (Réécriture/Retrait) : Résultats → registres architecturaux dans ordre programme (tête ROB).
3. Multiplicateurs de performance
| Fonctionnalité | Effet |
|---|---|
| Multi-cœurs | Parallélisme niveau thread (TLP) ; OS ordonnance threads sur cœurs. |
| SMT / Hyper-Threading | 2 threads logiques/cœur → meilleure utilisation ports exécution. |
| Hiérarchie cache (L1/L2/L3) | Réduit latence mémoire ; L3 partagé (10-100 Mo). |
| Largeur SIMD | Vecteurs 128/256/512 bits → parallélisme niveau données (DLP). |
| Exécution spéculative | Prédire branches, précharger, exécuter en avance ; rollback si mauvaise prédiction. |
4. Fréquence & Alimentation
- Fréquence : 1-5,5 GHz (DVFS dynamique).
- Puissance : P ∝ C·V²·f ; gérée via C-states, P-states, turbo par cœur.
5. Intégration système
Les SoCs modernes intègrent cœurs CPU + GPU + NPU + ISP + contrôleur mémoire + contrôleurs PCIe/USB/Display + enclave sécurisée — tout sur une puce.
Tendances futures
- Chiplets (AMD Zen, Intel Meteor Lake) — dies désagrégés sur packaging avancé.
- Empilement 3D (Hybrid Bonding, Foveros) — cache/logique sur étages séparés.
- Accélérateurs domaine-spécifiques — cœurs tenseur, crypto, compression offload.
- Expansion RISC-V — du microcontrôleur au datacenter (Venture, SiFive P670).
Le microprocesseur reste le cœur programmable de tout dispositif informatique, évoluant via innovation ISA, ingéniosité microarchitecturale, et percées packaging.
