MRAM, PRAM, ReRAM : l’avenir de la mémoire

Par ,

Un ordinateur sans mémoire est aussi utile qu’une bicyclette sans roues. Même si on s’intéresse moins volontiers à elles qu’aux microprocesseurs, les diverses technologies mémoire conditionnent intégralement la structure et l’utilisation d’un ordinateur moderne. Je vous propose donc un petit aperçu de l’avenir proche en la matière.

Vous utilisez couramment une demi-douzaine de mémoires très différentes. Prenons un ordinateur lambda, il renferme en général :

  • Deux ou trois types de mémoire cache dans le processeur.
  • De la mémoire vive : la RAM.
  • De la mémoire Flash si vous avez un SSD ou un disque hybride.
  • Un type d’EEPROM pour stocker le BIOS ou divers firmware.
  • Un disque dur.
  • Éventuellement un lecteur graveur de DVD, etc.

Chacun de ces types de mémoire possède ses spécificités. Ici, il sont rangés par vitesse décroissante en l’occurrence. Le stockage magnétique par exemple est très peu cher (au Go), mais très lent, on peut y stocker énormément de choses, mais mieux vaut y accéder le moins possible. La RAM est bien plus rapide, mais plus chère et volatile, elle ne conserve pas les informations qu’elle contient sans électricité. Elle est aussi bien trop lente pour suivre la cadence du processeur. D’où l’utilité des mémoires caches, ultra-rapide mais hors de prix, et tout aussi volatile que la RAM.

Bientôt la fin ?

Quant à la mémoire Flash, elle conserve les informations sans courant et elle est aussi potentiellement plus rapide qu’un disque dur. Seulement, elle est aussi bien plus chère et bien moins rapide que la RAM standard. En plus, elle s’use. Au bout de 10 000 cycles de lecture – écriture en moyenne, une cellule de mémoire flash devient inutilisable.

Vous l’aurez compris, le fait que l’on ne possède pas de « Mémoire Universelle » nous complique bien la vie.

Imaginez le rêve : des modules mémoire non-volatiles, ultra rapides et peu chers qui pourraient remplacer à la fois la RAM, le disque dur ou le SSD et qui rendraient caduque la notion même de mémoire cache. Nous aurions des ordinateurs de conception bien plus simples : un processeur et un espace mémoire immense complètement unifié.

À la clef, des ordinateurs débarrassés des multiples goulets d’étranglement qui les ralentissent aujourd’hui. Plus besoin de « booter » votre ordinateur, il s’allume et s’éteint aussi vite qu’une ampoule électrique tout en conservant exactement votre session de travail.

Un rêve ? Oui, en l’état actuel de la technologie, cette mémoire miracle n’existe pas encore. Pourtant, les choses pourraient changer dans un avenir pas si lointain. Rappelons le cahier des charges :

  • Basse consommation.
  • Énorme bande passante, au moins autant que la S-RAM des mémoires cache.
  • Compacité et robustesse (pas de mécanique, mais du « Solid State »).
  • Très haute densité, on veut remplacer les disques durs quand même…
  • Fabrication possible en très grande quantité (on évite d’utiliser du platine ou d’autres terres rares…).
  • Longue durée de vie.

Ça fait beaucoup, voyons voir les candidats.

La Mémoire Flash

On la connaît depuis longtemps et on l’aime bien. Elle est omniprésente dans nos tablettes, nos Smartphones, nos clefs USB. Elle est non volatile et suffisamment rapide pour surclasser les disques durs. Son prix au Go ne cesse de baisser. Mais comment fonctionne-t-elle ?

Sommairement, elle est basée sur un type particulier de transistor au silicium : le transistor à porte flottante. Dans un transistor classique, le passage du courant entre la source et le drain est piloté par la « porte de contrôle », comme un simple interrupteur.

Pour stocker un bit (0 ou 1) dans une cellule de mémoire flash, c’est l’état de cet interrupteur qui est « figé ». La porte flottante peut ainsi être maintenue ouverte ou fermée. Une deuxième porte, dite « de contrôle » est juxtaposée à la porte flottante. Les deux sont séparées par une couche d’oxyde qui peut emmagasiner plus ou moins d’électrons.

Pour écrire, on applique une charge à la porte de contrôle, les électrons s’accumulent alors de l’autre côté de la couche d’oxyde. Cet excès de charge « ferme » la porte flottante. La population électronique ainsi modifiée, et donc l’état de porte (ouvert ou fermé) se conserve même sans courant. Pour lire le bit, on mesure simplement le courant qui passe par le transistor, s’il y en a suffisamment, c’est un 1, sinon, ce sera un 0.

L’écriture est une opération plus compliquée que la lecture, ce qui se vérifie tous les jours avec les clefs USB où les vitesses de lectures et d’écritures sont bien différentes. C’est que les mémoires flash ne peuvent s’effacer que par blocs et demande pour ça de recourir à des tensions relativement élevées qui sont souvent générées directement par la puce.

Divers types de cellules existent. Principalement les SLC (1 bit par cellule) et les MLC (plusieurs bits par cellule). Ces dernières sont les plus courantes car les plus denses.

Les SSD montrent bien les avantages et les inconvénients des mémoire flash: rapide, mais cher !

Les mémoires flash se dégradent néanmoins avec le temps. Ou plutôt, avec le nombre d’utilisations. L’oxyde qui se situe entre la porte flottante et la porte de contrôle peut, au fur et à mesure, faire de la rétention d’électrons. Cela va fausser légèrement les mesures de tensions qui déterminent l’état de la cellule. Dans le cas des MLC en particulier, où on utilise plusieurs niveaux de tension seuil afin de stocker plusieurs bits par cellule, ces imprécisions peuvent devenir très gênantes de manière relativement rapide (quelques milliers de cycles).

La mémoire flash manque ainsi de vitesse, de longévité et reste très onéreuse face au stockage magnétique. L’avenir verra sans doute de notables améliorations, mais les puces flash sont des circuits intégrés assez proche des processeurs du point de vue de leurs processus de fabrications, et ils sont soumis aux mêmes limitations. La finesse de gravure des transistors est prépondérante pour la densité et la consommation (et donc la chauffe) des puces. Or, on sait que graver des circuits de plus en plus petits se révèle de plus en plus ardu. Si Intel semble confiant jusqu’au 11nm pour les 5 ans à venir, aller au-delà reste du domaine de la recherche fondamentale.

Or, d’ici là, les mémoires flash pourraient se faire doubler par d’autres technologies fort prometteuses.

 

Les RAM Magnetorésistive : MRAM

On considère l'électron comme un petit aimant.

Le domaine de la RAM non volatile est en pleine ébullition. Les technologies magnetorésistives sont de type « spintronique ». Elles sont basées sur l’utilisation du « spin » des électrons. Le spin est un phénomène quantique assez étrange relatif (entre autres) aux propriétés magnétiques. Chaque particule possède un spin, comme elle possède une masse ou une charge, sauf que le spin est quantifié, il ne peut pas prendre n’importe quelle valeur. Quoi qu’il en soit, le spin donne un moment magnétique qui fait qu’une particule peut aussi être vue comme un petit aimant.

Un aimant ayant deux pôles, un électron va avoir une orientation (comme un aimant a un « nord » et un « sud ») que l’on peut modifier.

Pour simplifier, une mémoire MRAM est constituée d’une grille de ces minuscules aimants dont on fait varier l’orientation. La lecture se fait en envoyant un courant sur la grille, il sera perturbé par les polarisations magnétiques des « bits » qui pourront ainsi être retrouvés.

Diverses techniques raffinent le processus, dont le STT pour « Spin Torque Transfer » qui permet d’envisager de hautes densités en utilisant moins de courant pour l’écriture, une opération normalement assez couteuse avec la MRAM.

Schéma simplifié d'une cellule de MRAM. L'orientation de la couche libre (en rouge) peut varier.

Des recherches sur ces technologies sont menées depuis 1995 par les plus gros acteurs du marché, IBM, Motorola, Infineon, puis Sony, Toshiba, Hynix, Samsung etc.

La MRAM a des propriétés intéressantes :

  • Non volatile.
  • Faible consommation, inférieure à la mémoire flash car elle ne requiert pas de hauts voltages pour la réécriture.
  • Temps de lecture et écriture équivalents et bonnes performances (temps d’accès de 1 ns, quasi comparables à celles de la SRAM, la mémoire cache des processeurs !).
  • Pas de durée de vie limitée.
  • Résistance aux hautes températures et aux radiations.

Cette dernière qualité rend les MRAM particulièrement attrayantes pour les militaires et l’aérospatiale.

Alors, la MRAM est-elle la mémoire idéale ? Presque, mis à part leur densité, et donc leur prix, elles ont tout pour plaire. Les MRAM sont d’ailleurs une réalité commerciale depuis 2006 grâce à Freescale. Ces mémoires sont encore particulièrement chères (25$ les 4Mbits !) et se destinent à une clientèle très spécifique.

Les choses évoluent vite néanmoins, la STT-RAM est une réalité depuis 2009. En 2011, des Allemands ont annoncé avoir atteint un temps d’accès de 0.5 ns ! Tout récemment, la MRAM devrait faire son entrée comme cache dans des SSD de Buffalo.

En réalité, l’effort de recherche dans ce domaine est considérable et il est possible que la MRAM devienne la mémoire « quasi idéale » de la prochaine décennie. Car c’est tout de même une technologie très nouvelle qui fait face à des produits raffinés par une bonne trentaine d’années de savoir-faire. Elle mettra donc inévitablement du temps à faire son trou… si elle n’est pas supplantée par une autre concurrente novatrice : la PRAM.

 

La Mémoire à Changement de Phase : la PRAM ou PCM

Le changement de phase est aussi à l'oeuvre dans les DVD-R.

PCM pour « Phase Change Memory ».

Autant le côté magnétique de la MRAM pouvait rappeler la technique utilisée dans les disques durs, autant la PRAM pourra faire penser à celle employée dans les graveurs de DVD.

Le but est ici de stocker un bit en codant l’état (la phase) d’une substance. Disons que 1 correspondra à un état cristallin (atomes organisés), et le 0 à un état amorphe (atomes en bazar).

Une puce de PRAM est divisée en cellules contenant une petite « poche » de verre « Chalcogène ». En faisant varier sa température, on peut le faire passer de son état cristallin, où il est plutôt bon conducteur à son état amorphe où il est résistant. Encore une fois, l’opération de lecture est simple : si le courant passe, on a un 1, sinon un 0.

Un graveur de DVD utilise un laser pour faire fondre de petites portions du disque et ainsi changer sa phase ce qui modifie son indice de réfraction. La substance utilisé est d’ailleurs aussi un verre Chalcogène !

La PRAM est assez rapide et on n’a pas de pénalité à l’écriture comme avec la flash. Elle se dégrade également beaucoup moins vite que cette dernière (dans les 100 000 fois !). Elle est aussi très dense, mais globalement, elle reste pour le moment plus lente que notre bonne vieille RAM.

Pour le moment, car la recherche va bon train. IBM, Samsung, Micron et de nombreuses universités sont sur le coup.

Trouver la bonne substance est crucial pour faire une PRAM compétitive, il faut qu’elle cristallise vite, mais pas à trop basse température. Tout dernièrement, des vitesses de cristallisation de 0.5 ns ont été atteintes à Cambridge. Un module de PRAM aussi rapide pourrait sans problème remplacer simultanément la RAM et les SSD de nos machines. On est quand même encore loin d’une production industrielle, la stabilité du processus doit encore être vérifiée.

Un prototype de PRAM en 90nm de 128 Mbit fait par Intel et ST en 2008.

C’est tout ?

Bien sûr que non. Vous vous rappelez des memristors ? J’en avais parlé il y a quelques mois. Ce sont des composants électroniques théorisés en 1971, mais qui n’ont été réalisés que l’année dernière par HP. Grossièrement, ce sont des résistances variables. On peut donc stocker des informations en fonction de la valeur de cette résistance. C’est le principe de la ReRAM pour « Resistive RAM ». Une découverte importante vient d’ailleurs d’être réalisée par des étudiants de UCL (University College London).

Intrigués par le comportement instable d’un oxyde de silicium destiné à fabriquer des LED, ils décident d’en étudier les propriétés électriques et découvrent qu’on peut en faire un excellent memristor. La vitesse à laquelle la résistance du composant change est bien entendu cruciale, et celui découvert à UCL est très rapide (presque 100x les performance d’une RAM traditionnelle) et très économe en énergie. Pour le moment, on est à peine au stade du prototype. Lequel reste d’ailleurs très « gros », il devra être miniaturisé un bon million de fois avant de prétendre éradiquer les mémoires flash, mais un grand pas vient d’être fait.

Le prototype de mémoire résistive réalisé à UCL.

Mieux encore, le memristor ne se contente pas d’encoder un 0 ou un 1, il peut avoir de multiples états. Une puce à base de memristor peut même être programmée, comme un microprocesseur ou même… comme un cerveau, à l’image du concept de puce « neuromorphe » d’Intel.

 

 

Et c’est pour quand ??

Précisément… difficile à dire. Mais il y a des chances que d’ici dix ans, les ordinateurs soient bien différents de nos machines actuelles et pas simplement au niveau de la puissance brute. L’objectif est clair : la quête de la mémoire universelle est en cours, et des candidats prometteurs sont d’ores et déjà mis à l’épreuve. Nous allons donc à moyen terme vers une simplification des hiérarchies-mémoire, une disparition possible des mémoires volatiles et avec elles de la notion même de « boot ». Peut-être qu’à plus long terme, on assistera à une convergence entre mémoire et processeur à l’image même du cerveau dans lequel il n’y a pas à priori de « zones de stockage » et de « zones de traitement » séparées. Mais la puce neuromorphe théorique d’Intel n’est sans doute pas encore pour demain, le neurone spintronique proposé n’existant pas encore.

 source1, source2, source3, source4, source5

le 1 3064
-
Article précédentArticle suivant
1 commentaire
  1. Real excellent information can be found on blog . “We should be eternally vigilant against attempts to check the expression of opinions that we loathe.” by Oliver Wendell Holmes.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Send this to a friend