Aller au contenu

Partie 1 : Le modèle de Von Neumann


Le transistor est le composant électronique fondamental de tout ordinateur. Inventé en 1947 par John Bardeen, William Shockley et Walter Brattain (Bell Labs), il fonctionne comme un interrupteur ultra-rapide qui peut être dans deux états :

ÉtatSignificationValeur binaire
Passant (laisse passer le courant)Vrai1
Bloqué (ne laisse pas passer le courant)Faux0

Avant le transistor, les premiers ordinateurs (comme le Colossus en 1943) utilisaient des tubes à vide, beaucoup plus gros, moins fiables et très énergivores.

Les transistors sont aujourd'hui regroupés par milliards sur des circuits intégrés (puces de silicium). Un processeur moderne contient plus de 10 milliards de transistors sur une surface de quelques centimètres carrés.

AnnéeProcesseurNombre de transistors
1971Intel 40042 300
1989Intel 4861 200 000
2006Intel Core 2291 000 000
2020Apple M116 000 000 000

Cette évolution exponentielle est décrite par la loi de Moore (1965) : le nombre de transistors dans un circuit intégré double environ tous les deux ans.


En 1945, le mathématicien John von Neumann propose un modèle d'architecture pour les ordinateurs. Ce modèle, utilisé dans la quasi-totalité des ordinateurs actuels, repose sur une idée fondamentale : le programme est stocké en mémoire, au même titre que les données.

Le modèle de Von Neumann est constitué de quatre éléments principaux :

┌─────────────────────────────────┐
│ PROCESSEUR (CPU) │
│ │
│ ┌──────────┐ ┌──────────────┐ │
│ │ Unité │ │ Unité │ │
│ │ de │ │ arithmétique │ │
│ │ commande │ │ et logique │ │
│ │ (UC) │ │ (UAL) │ │
│ └──────────┘ └──────────────┘ │
│ Registres (IP, IR, R0...) │
└───────────┬─────────────────────┘
│ Bus (adresse, données, contrôle)
┌───────────┴─────────────────────┐
│ MÉMOIRE (RAM) │
│ Programme + Données │
└───────────┬─────────────────────┘
│
┌───────────┴─────────────────────┐
│ ENTRÉES / SORTIES │
│ Clavier, souris, écran, etc. │
└─────────────────────────────────┘

Le processeur (Central Processing Unit) est le « cerveau » de l'ordinateur. Il se compose de :

  • L'unité arithmétique et logique (UAL) : effectue les calculs (addition, soustraction, comparaison...) et les opérations logiques (ET, OU, NON).
  • L'unité de commande (UC) : lit les instructions en mémoire, les décode et coordonne leur exécution.
  • Les registres : petites mémoires ultra-rapides intégrées au processeur.

La mémoire vive (Random Access Memory) stocke temporairement le programme en cours d'exécution et ses données. Chaque cellule mémoire possède une adresse unique.

Caractéristiques :

  • Accès direct : on peut lire n'importe quelle cellule sans parcourir les précédentes
  • Volatile : le contenu est perdu à l'extinction de l'ordinateur
  • Rapide : temps d'accès de l'ordre de la nanoseconde

Les périphériques d'entrée (clavier, souris, capteurs...) permettent à l'utilisateur d'envoyer des informations à l'ordinateur. Les périphériques de sortie (écran, imprimante, haut-parleurs...) affichent ou transmettent les résultats.

Les bus sont des fils électriques qui relient les composants entre eux. Il existe trois types de bus :

BusRôle
Bus d'adresseTransporte l'adresse mémoire à lire ou écrire
Bus de donnéesTransporte les données (instructions ou valeurs)
Bus de contrôleIndique le type d'opération (lecture, écriture)

La largeur du bus (nombre de fils) détermine les capacités de l'ordinateur :

  • Bus d'adresse à 32 bits → peut adresser 2³² = 4 Go de mémoire
  • Bus de données à 64 bits → peut transférer 64 bits en une seule opération

Les registres sont des mémoires minuscules (quelques octets) mais extrêmement rapides, directement intégrées au processeur.

RegistreNom completRôle
IPInstruction PointerContient l'adresse de la prochaine instruction à exécuter
IRInstruction RegisterContient l'instruction en cours de décodage
R0, R1, R2...Registres générauxStockent temporairement les données en cours de traitement

Le processeur exécute les instructions une par une selon un cycle répétitif en trois étapes :

1. Chargement (fetch) : le processeur lit en mémoire l'instruction située à l'adresse contenue dans IP et la place dans IR. IP est incrémenté pour pointer vers l'instruction suivante.

2. Décodage (decode) : l'unité de commande analyse l'instruction contenue dans IR pour déterminer l'opération à effectuer et les données concernées.

3. Exécution (execute) : l'UAL effectue l'opération demandée (calcul, transfert de données, saut...).

┌──────────┐
│ Chargement│◄───── Lire l'instruction à l'adresse IP
└─────┬─────┘ Placer dans IR, incrémenter IP
│
┌─────▼─────┐
│ Décodage │◄───── Analyser l'instruction dans IR
└─────┬─────┘
│
┌─────▼─────┐
│ Exécution │◄───── Effectuer l'opération (UAL)
└─────┬─────┘
│
└──────────► Retour au chargement

Ce cycle est cadencé par une horloge dont la fréquence est exprimée en GHz (milliards de cycles par seconde). Un processeur à 3 GHz exécute 3 milliards de cycles d'horloge par seconde.


Les mémoires d'un ordinateur sont organisées en une hiérarchie selon leur vitesse et leur capacité :

MémoireVitesseCapacitéVolatile ?
RegistresUltra-rapideQuelques octetsOui
Mémoire cache (L1, L2, L3)Très rapideKo à MoOui
Mémoire vive (RAM)RapideGoOui
SSDMoyenGo à ToNon
Disque dur (HDD)LentToNon

Plus une mémoire est rapide, plus elle est petite et coûteuse.

  • Mémoire volatile (RAM, registres, cache) : le contenu est perdu à l'extinction. Sert pour le traitement en temps réel.
  • Mémoire non volatile (SSD, HDD, clé USB) : le contenu est conservé après l'extinction. Sert pour le stockage permanent.

  • Le modèle de Von Neumann (1945) décrit l'architecture de la quasi-totalité des ordinateurs.
  • L'idée clé : le programme est stocké en mémoire au même titre que les données.
  • Les quatre composants : processeur (UAL + UC + registres), mémoire (RAM), entrées/sorties, bus.
  • Le processeur exécute un cycle chargement → décodage → exécution cadencé par une horloge.
  • Les registres (IP, IR, R0...) sont les mémoires les plus rapides, intégrées au processeur.
  • Les bus (adresse, données, contrôle) relient les composants entre eux.
  • La hiérarchie des mémoires : registres (rapide, petit) → cache → RAM → SSD → HDD (lent, grand).