Passer au contenu

Les mémoires vives en quête de vitesse

À la fin des années quatre-vingt-dix, la technologie de la mémoire vive, longtemps figée sur celle des Dynamic RAM, s’est ramifiée en plusieurs lignées, souvent concurrentes. Cette évolution se poursuit encore…

En quelques années, le tableau de famille des mémoires vives (ou RAM, Random Access Memory) s’est singulièrement enrichi et tout semble indiquer que la course à la performance va se poursuivre. Pourtant, jusqu’en 1997, une seule technologie dominait ce marché, celle des DRAM (Dynamic RAM), complétée par les SRAM (Static RAM), rapides mais chères, cantonnées aux mémoires cache ou vidéo. Dans une mémoire statique, les bits d’informations sont portés par un ensemble de quatre à six transistors. Elle ne nécessite pas de rafraîchissement pour conserver ses données et l’accès à l’information est direct : un bit ou un groupe de bits peut être lu ou écrit grâce à son adresse.

Optimiser la lecture pour réduire les temps d’accès

Cependant, les nouvelles technologies apparues depuis reposent toutes sur le principe des DRAM, d’un coût moins élevé. L’unité élémentaire y est seulement constituée d’un transistor et d’un condensateur. Selon que ce dernier est chargé ou non, la mémoire contient “1” ou “0”. Le transistor, lui, sert à la lecture et l’écriture. Simple, cette disposition a en revanche plusieurs inconvénients. Le condensateur se déchargeant continuellement, il doit être régulièrement rechargé par une séquence de réécriture, appelée rafraîchissement. Un contrôleur dédié à cette tâche accompagne donc la RAM pour la rafraîchir toutes les 15 millisecondes environ. Par ailleurs, la lecture consistant à “vider” le condensateur, sa charge éventuelle (s’il contenait un “1”) doit être reconstituée. Enfin, l’accès aux données est en quelque sorte indirect. En effet, l’ensemble de la mémoire fonctionne comme une matrice. Les opérations de lecture et d’écriture n’agissent pas directement sur une cellule (transistor et condensateur), mais sur une ligne entière. Pour accéder à une cellule ou à un groupe de cellules, il faut fournir un numéro de ligne et de colonne. Envoyées sur la même voie, ces deux données sont multiplexées : la mémoire reçoit d’abord le numéro de la ligne, puis celui de la colonne. Tout cela prend du temps : 60 nanosecondes pour une DRAM. Ce délai est très long pour un processeur, même ancien : le “temps de cycle” (durée d’un battement de l’horloge interne) d’un processeur d’une fréquence de 133 MHz est de 7,5 nanosecondes (1/133.106 s).Peu de temps après leur apparition, les DRAM ont connu une première amélioration : le mode page rapide (Fast Page Mode, ou FPM). L’idée de base est que, la plupart du temps, les données doivent être lues les unes derrière les autres. C’est bien sûr le cas, par exemple, pour les instructions d’un programme. Une mémoire DRAM FPM peut recevoir le numéro d’une ligne puis, successivement, le numéro de plusieurs colonnes. L’opération (lecture ou écriture) aura donc lieu sur les bits situés sur une même ligne, le terme page signifiant en fait ligne. Depuis le début des années 1990, toutes les DRAM sont de type FPM. En 1995, est apparue la mémoire dite EDO (Extended Data Out). Elle peut recevoir l’adresse de la mémoire à lire pendant qu’elle présente en sortie le contenu de la mémoire précédente. Cependant le succès des mémoires EDO a été en grande partie occulté par la banalisation de la mémoire cache, qui accélère l’accès à la mémoire vive, réduisant d’autant le gain de temps permis par l’EDO. L’amélioration suivante, sur les mémoires EDO ou les DRAM FPM, s’appelle le mode rafale (burst mode). La mémoire envoie d’elle-même trois ou quatre bits successifs qui appartiennent à la même ligne. En mode rafale, le temps d’accès à la première donnée est identique, mais les données suivantes sont fournies plus rapidement.Malgré ces progrès, le rythme d’une mémoire DRAM ne peut guère dépasser les 30 MHz, soit un temps d’accès de 33 nanosecondes. Les processeurs ré-cents doivent donc patienter durant de nombreux temps de cycle avant de recevoir la donnée attendue. En 1997, en même temps que le Pentium, est apparue l’idée de synchroniser la mémoire avec la fréquence du bus de données. C’est ainsi sont nées les SDRAM (Synchronous DRAM). En lecture, le processeur envoie une requête dans la mémoire et peut se consacrer à d’autres tâches, ” sachant ” qu’il trouvera sa donnée, un certain nombre de cycles plus tard. La SDRAM est actuellement la mémoire la plus répandue, en 66, 100 et 133 MHz.

Quel avenir pour la mémoire ?

Mais la nécessité de suivre les performances des processeurs plus rapides a amené les fabricants à imaginer d’autres solutions. La voie la plus ambitieuse a été celle de la société Rambus qui a inventé le principe du même nom. Ce composant complexe, possédant sa propre mémoire cache et un bus interne, peut fonctionner jusqu’à 800 MHz. Il impose la présence d’un contrôleur, qui peut être intégré au jeu de composants ou au processeur. Ce contrôleur traduit les requêtes du processeur selon le protocole propre à la mémoire Rambus. Promu par Intel, qui voulait l’imposer, ce principe n’a pas convaincu, à cause de son coût et de sa complexité. La solution en voie de généralisation est une simple évolution de la SDRAM, baptisée DDR-SDRAM (Double Data Rate SDRAM). La fréquence de fonctionnement est doublée par une astuce technique : alors que dans une SDRAM le flux de données est déclenché uniquement par la phase ascendante du signal de l’horloge, la DDR-SDRAM est rythmée par les phases ascendante et descendante. Un seul cycle d’adressage permet d’envoyer ou de recevoir deux données au lieu d’une. Elle peut atteindre 400 MHz voire, au moins théoriquement, 800 MHz.Les mémoires sont encore appelées à évoluer. L’idée d’intégrer une mémoire cache dans la mémoire, comme sur la Rambus, a été reprise. Ce cache est constitué de mémoire rapide de type SRAM. D’autres directions sont explorées, pour des besoins particuliers, comme la vidéo ou le stockage pour petits appareils, musicaux, photographiques ou autres.

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


Jean-Luc Goudet