🧠 Mémoires d’un PC : Voyage en terres siliconées
Il était une fois, dans les tréfonds d’un boîtier en aluminium surchauffé, des modules de mémoire qui œuvraient jour et nuit pour faire tourner votre système. Ces composants essentiels, souvent négligés, sont en réalité les véritables athlètes du traitement de données. Explorons en profondeur les différentes formes de mémoire dans un PC, sans langue de bois (et sans mémoire corrompue).
📦 Mémoire de masse vs mémoire de travail
La mémoire de masse désigne les dispositifs de stockage permanent comme les disques durs (HDD), les SSD (Solid State Drives), et les clés USB. Elle conserve les données même en l’absence d’alimentation électrique. Les vitesses de lecture/écriture varient largement : un HDD typique tourne à 5400 ou 7200 RPM avec des débits autour de 100 à 150 Mo/s, tandis qu’un SSD NVMe PCIe 4.0 peut atteindre 7000 Mo/s. Exemple : votre système d’exploitation et vos jeux sont installés ici.
La mémoire de travail, aussi appelée RAM (Random Access Memory), est utilisée pour stocker temporairement les données en cours d’utilisation. Elle est volatile : toute coupure de courant efface son contenu. Elle sert notamment à stocker les variables d’un programme, les bibliothèques chargées, et les tampons d’exécution. Exemple : ouvrir Photoshop et manipuler une image de 2 Go nécessite de la RAM disponible pour éviter le swap disque.
⚡ Mémoire vive (RAM) vs mémoire morte (ROM)
RAM : mémoire accessible en lecture et écriture, très rapide, utilisée pour le traitement actif des données. Exemple concret : lors d’un rendu 3D, les textures et les modèles sont chargés en RAM pour éviter d’accéder au disque dur à chaque image.
ROM (Read-Only Memory) : souvent utilisée pour stocker le firmware (ex : BIOS/UEFI). Aujourd’hui, il s’agit souvent de mémoire flash reprogrammable (EEPROM). Exemple : à l’allumage du PC, le BIOS vérifie les périphériques connectés et initie le bootloader depuis la ROM.
🔁 RAM statique (SRAM) vs dynamique (DRAM)
SRAM utilise 6 transistors pour chaque bit stocké, ce qui lui permet d’être très rapide et stable, sans rafraîchissement. Elle est principalement utilisée dans les caches L1, L2, L3 des CPU. Exemple : un Ryzen 9 7950X contient 64 Mo de cache L3 basé sur de la SRAM.
DRAM utilise un transistor et un condensateur par bit. Le condensateur fuit la charge électrique et doit être rafraîchi toutes les 64 ms (typiquement). Moins chère que la SRAM, elle équipe les modules DIMM. Exemple : les barrettes de DDR4 dans votre PC portable sont des DRAM.
📚 Variantes historiques et actuelles de DRAM
- FPM DRAM : ~1987, accède à une page mémoire complète avant de changer, accès séquentiel amélioré. Utilisée sur les 486.
- EDO DRAM : ~1995, permet la lecture suivante pendant que la précédente est terminée. Utilisée sur Pentium I.
- SDRAM : synchronisée avec le bus système, introduit la notion de fréquence (66 MHz à 133 MHz). Exemple : PC100, PC133.
- DDR (Double Data Rate) : transferts sur les fronts montant et descendant. DDR1 : 200-400 MT/s. Exemple : PC3200 (400 MHz, 3.2 Go/s).
- DDR2 : préfetch x4, 400–1066 MT/s. Moins cher, plus dense.
- DDR3 : préfetch x8, jusqu’à 2133 MT/s. Tensions plus faibles (~1.5 V).
- DDR4 : jusqu’à 3200 MT/s officiellement, latences améliorées, bus 64 bits.
- DDR5 : jusqu’à 8400 MT/s, gestion d’alimentation sur le module (PMIC), double sous-canaux indépendants de 32 bits + ECC on-die.
⚙️ Fonctionnement technique
Une cellule DRAM stocke un bit par charge électrique dans un condensateur, avec un transistor comme interrupteur. Pour lire, on active la ligne de mot et on mesure la ligne de bit. La lecture est destructive, nécessitant une réécriture.
SRAM repose sur une bascule (flip-flop) formée de 4 à 6 transistors. Avantage : pas besoin de rafraîchissement. Inconvénient : 6x plus de surface pour un bit.
📈 Caractéristiques techniques
- Fréquence : ex. DDR4-3200 = 1600 MHz réels x 2 (double data rate).
- Bande passante : calcul = fréquence x largeur du bus x nombre de transferts / 8. Ex : DDR4-3200 => 3200 x 64 / 8 = 25.6 Go/s par canal.
- Temps de latence : CAS latency (CL), ex : CL16 à 3200 MT/s → 16 cycles = 10 ns (fréquence interne 1600 MHz).
- Capacité : modules de 2 à 64 Go (voire 256 Go ECC sur serveur). Exemple : 16 Go sont recommandés pour du gaming moderne, 32 Go pour montage vidéo/VMs.
🧬 ECC, parité et autres raffinements
ECC ajoute un bit de correction tous les 8 bits (ou 72 bits au lieu de 64). Corrige les erreurs simples, détecte les doubles. Utilisée dans les stations critiques (finance, santé, IA).
Parité : simple bit indiquant si le nombre de 1 est pair/impair. Ne permet que la détection, pas la correction. Exemple : DRAM avec parité sur anciens serveurs.
🧯 Multi-channeling : Dual, Triple, Quad
Dual Channel : deux canaux mémoire parallèles, bande passante doublée si modules installés en paires. Exemple : 2 x 8 Go DDR4-3200 → 51.2 Go/s théorique.
Triple Channel : utilisé brièvement par les chipsets Intel X58. Assez rare.
Quad Channel : serveurs/workstations (Threadripper, Xeon). Ex : 4 x 64 Go DDR4-2666 → jusqu’à 85 Go/s.
🔚 Conclusion
La mémoire, dans un système informatique, n’est pas qu’un tiroir où s’accumulent les fichiers temporaires. C’est une architecture en soi, influencée par les lois de la physique, les contraintes de design, et les compromis industriels. Un bon choix de RAM, bien comprise et bien utilisée, fait souvent la différence entre une machine vive… et une autre qui rame. 🧟