

Le fonctionnement d’un disque SSD est une affaire complexe

Les SSD ont de plus en plus tendance à remplacer les disques durs en tant que mémoire de masse principale. Leur rapidité et leur mobilité offrent des avantages indéniables. Les données sont lues et écrites électriquement, et non mécaniquement. Comment fonctionnent-ils?
Chaque année voit apparaître sa nouvelle génération de processeurs plus que prometteuse. L’utilisateur lambda ne s’en rend pas vraiment compte, mais il n’en va pas de même des disques SSD. Le passage d’un HDD à un SSD se remarque, peu importe son utilisation.
Avant, j’allumais mon ordinateur et j’allais me chercher un café le temps qu’il démarre... Je suis tombé des nues devant un notebook doté d’un disque SSD. C’était comme de passer d’un train régional à un TGV. Ou de la marche à la course. Bref, vous voyez le genre.
Mais qu’est-ce qui rend les disques SSD si rapides? Contrairement aux disques durs, ils n’ont ni tête de lecture, ni tête d’écriture, ni plateaux rotatifs. Chaque bloc est accessible à la même vitesse. Peu importe qu’ils se trouvent l’un à côté de l’autre ou sur un autre module. Les défragmenter n’a donc aucun sens. Les temps d’accès sont plus courts, et les vitesses de lecture et d’écriture, plus élevées.
J’ai donc décidé d’y dédier un article. Une fois que vous comprendrez comment fonctionnent ces disques, leur usure deviendra logique. Et vous pourrez aussi élucider certaines questions fréquentes jusqu’alors restées sans réponse. Pourquoi les SSD ralentissent lorsqu’ils ne disposent plus de beaucoup d’espace de stockage, par exemple.
Petit avertissement avant de nous plonger au cœur du sujet: certains passages sont très techniques. Un disque «solid state drive» se compose d’une platine avec une interface (SATA, PCIe, SATA-Express ou autre), d’une mémoire flash NAND, de mémoire cache selon le disque, ainsi que d’un contrôleur sur lequel se trouve le firmware. Il est piloté par le biais d’un protocole (AHCI ou NVMe). Commençons par la mémoire flash NAND.
Qu’est-ce que la mémoire flash NAND?
Contrairement aux disques durs, la lecture et l’écriture électroniques des données se font sur la mémoire flash NAND. Celle-ci se distingue par sa capacité de stockage élevée et sa bonne protection des données. Elle fait ce que les plateaux font sur un disque dur: elle sauvegarde les données de manière durable en créant une tension.
Les lignes de bit et les lignes de mot
Un bloc NAND se compose de lignes de bit et de lignes de mot. Les lignes de bit sont parallèles. Elles se composent de silicium et sont séparées par une technique nommée «shallow trench isolation» (STI). Les lignes de mot, composées de polysilicium, sont perpendiculaires aux lignes de bit. La grille de contrôle y est posée. La cellule mémoire se trouve à l’endroit où la ligne de bit et la ligne de mot se recoupent.
Examinons de plus près l’interface entre la ligne de bit et la ligne de mot, le long de la ligne de mot pour être précis. La grille de contrôle entoure la grille flottante. Les deux grilles sont séparées par une couche oxyde-nitrure-oxyde (ONO). Sous la grille flottante se trouvent l’oxyde tunnel (non conducteur), puis la ligne de bit avec la source et le drain.
Pages, blocs, planes et «dies»
Les cellules mémoires d’une ligne de mots sont rassemblées dans une page. Les pages sont les plus petites unités pouvant être lues ou écrites sur un disque SSD. Selon le processus de fabrication ou le type de mémoire flash, les pages peuvent être de 2 Ko, 4 Ko, 8 Ko ou 16 Ko.
Plusieurs pages sont rassemblées en blocs. Chaque bloc comprend entre 128 et 256 pages. Un bloc est la plus petite unité qui puisse être effacée. Techniquement, l’effacement pourrait aussi avoir lieu au niveau de la page, mais la tension nécessaire serait si intense pour les cellules mémoire que la durée de vie s’en trouverait davantage raccourcie. Je vous fournis de plus amples informations sur l’utilisation des cellules mémoire ci-dessous.
Les blocs, quant à eux, sont généralement répartis sur deux plans par module flash (aussi appelé «dies»). Les modules viennent se reposer sur la platine. Ils y sont reliés au contrôleur par quatre à dix canaux.
Petit aparté: le ralentissement des SSD
Comment les données sont-elles lues et enregistrées?
Examinons tout ça de plus près et commençons par la lecture.
La lecture
L’effacement
L’écriture et la programmation
Lors de l’écriture, les électrons sont transférés à la grille flottante, et une valeur de bit 0 est obtenue. Lorsqu’une tension positive élevée est exercée sur la grille de contrôle et qu’une autre est exercée simultanément sur le drain, les électrons peuvent passer à travers la couche oxyde et atteindre la grille flottante. Ce processus se nomme l’injection d’électrons chauds.
Les mémoires SLC, MLC et TLC
La mémoire SLC
Étant donné qu’un seul bit est stocké par cellule mémoire, le taux d’échec est très faible. Seuls deux niveaux de tensions sont nécessaires à la lecture et à l’écriture, ce qui augmente la vitesse et diminue la consommation d’électricité. On considère que les mémoires flash SLC ont une durée de vie de 100 000 cycles d’écriture par bloc.
La mémoire MLC
La mémoire TLC
La mémoire flash TLC se distingue plus nettement des mémoires SLC et MLC. Sa fabrication coûte encore moins cher que la MLC. Les cellules mémoire doivent supporter huit niveaux de tension. La lecture prend environ quatre fois plus de temps, et l’écriture six fois plus que sur une mémoire SLC. On parle d’une durée de vie de 1000 cycles d’écriture par bloc.
Autre petit aparté: la durée de vie d’un disque SSD
Comme je l’ai déjà mentionné, l’écriture de données n’est possible que sur une cellule mémoire vide ou effacée. L’écrasement de données à proprement parler est impossible. Les données doivent d’abord être effacées puis réécrites pour être modifiées. On mesure donc la durée de vie d’un disque SSD en cycles d’écriture.
Les contrôleurs et le processeur
L’amplification des écritures
La collecte des déchets (garbage collection)
La collecte des déchets est un processus d’arrière-plan qui sert à contrer les ralentissements du disque SSD lorsque la capacité de mémoire diminue. Les blocs partiels sont copiés et assemblés à des blocs neufs et complets. Les anciens blocs sont ensuite effacés et donc libérés en vue d’une réécriture. Les accès au disque SSD ne s'en trouvent pas limités.
Le TRIM
La gestion de l’usure (wear leveling)
L’avenir
Les autres méthodes visant à augmenter la mémoire dans un espace restreint ont été mentionnées dans les paragraphes consacrés aux mémoires MLC et TLC. Mais il existe là aussi une limitation physique. Pour terminer mon article, j’aimerais encore me pencher sur deux approches qui ont augmenté la capacité de mémoire et la vitesse des disques SSD et qui continueront de le faire à l’avenir.
La mémoire NAND 3D ou V-NAND
Le protocole NVMe


La technologie et la société me fascinent. Combiner les deux et les regarder sous différents angles est ma passion.
Des informations intéressantes sur le monde des produits, un aperçu des coulisses des fabricants et des portraits de personnalités intéressantes.
Tout afficher