Appelez Nos Conseillers au : 02-808 9025

Menu Hide

Enregistrez

Call Me

Résumé : La suppression d’un fichier d’un SSD ne le rend pas automatiquement irrécupérable. Ce n’est pas la suppression en elle-même qui détermine le résultat, mais ce que fait le contrôleur du disque dans la foulée. Grâce à des processus tels que TRIM et le ramassage des déchets — qui s’exécutent indépendamment de toute action de l’utilisateur —, le contrôleur efface progressivement les blocs qui ne sont plus utilisés. L’état d’avancement de ce travail en arrière-plan au moment de la récupération détermine ce qui reste accessible et ce qui a été définitivement effacé. C’est pourquoi deux cas de perte de données qui semblent identiques peuvent aboutir à des résultats différents. Cet article explique le fonctionnement de ce processus et les éléments à prendre en compte avant de tenter une récupération.

Un fichier supprimé ne disparaît pas toujours comme la plupart des gens le pensent. Sur un disque dur, les données restent exactement à l’emplacement où elles se trouvaient sur le plateau jusqu’à ce que de nouvelles données viennent les écraser ; c’est pourquoi, dans ce cas, la récupération consiste principalement à agir avant que cet écrasement n’ait lieu.

Les disques durs à état solide compliquent considérablement la situation. Deux disques durs à état solide contenant le même type de fichier supprimé peuvent se retrouver dans des états totalement différents à quelques minutes d’intervalle, car les contrôleurs de disques durs à état solide exécutent des cycles de maintenance en temps d’inactivité, y compris le traitement TRIM et le ramassage des déchets, qui peuvent effacer les blocs NAND d’un fichier supprimé bien avant que l’utilisateur ne remarque quoi que ce soit d’anormal. La cause réside à l’intérieur du disque, dans un composant qui exécute ses propres routines indépendamment de toute action de l’utilisateur.

Qu’est-ce qu’un contrôleur SSD ?

Un contrôleur SSD est le processeur intégré chargé de toutes les opérations sur le disque, y compris la communication entre l’ordinateur hôte et les cellules de mémoire flash NAND. Le système d’exploitation n’a pas de liaison directe avec les puces NAND. Toutes les instructions de lecture, d’écriture et de suppression passent d’abord par le contrôleur, et c’est ce dernier qui effectue réellement le travail sur le support de stockage.

Cette communication est rendue possible grâce à la couche de traduction flash (Flash Translation Layer, ou FTL). La FTL est une couche de micrologiciel dans laquelle le contrôleur gère un mappage entre les adresses de blocs logiques, telles qu’elles sont comprises par le système d’exploitation, et les emplacements physiques NAND de la mémoire flash du SSD. Ce processus est appelé « mappage logique-physique », abrégé en L2P.

La gestion de la FTL est l’une des fonctions essentielles du contrôleur, au même titre que la gestion de l’endurance du disque et de la fiabilité des données. En matière de récupération, son rôle le plus important consiste à déterminer à quelle vitesse les données supprimées sont physiquement effacées des cellules flash.

En quoi le processus de suppression des données sur un SSD diffère-t-il de celui d’un disque dur (HDD) ?

Les SSD et les disques durs gèrent la suppression des données de manière fondamentalement différente, ce qui s’explique par les propriétés physiques de chaque support de stockage et par la façon dont leurs contrôleurs gèrent les opérations de lecture et d’écriture.

La différence fondamentale réside dans la manière dont chaque disque effectue une opération d'écriture. Les disques durs (HDD) utilisent un support de type « écriture sur place », tandis que les SSD s'appuient sur un support de type « effacement avant écriture ». Ce simple choix architectural a des conséquences majeures sur le comportement des données supprimées et sur leur possibilité de récupération par la suite.

Ce point mérite d’être examiné de plus près.

Écriture sur place vs effacement préalable à l'écriture

Sur un disque dur, de nouvelles données peuvent être écrites directement par-dessus les données existantes en une seule opération. Lorsqu’un fichier est supprimé, le système d’exploitation supprime son entrée de la table du système de fichiers et marque les secteurs correspondants comme disponibles. Les données d’origine restent physiquement intactes sur les plateaux jusqu’à ce qu’une opération d’écriture ultérieure écrase ces secteurs.

Les SSD fonctionnent différemment. Les cellules flash NAND doivent être entièrement effacées, tous les bits étant mis à 1, avant de pouvoir être programmées avec de nouvelles données en mettant sélectivement des bits à 0. Lorsque le contrôleur doit mettre à jour un fichier, il écrit les nouvelles données dans un bloc libre et marque l’ancien emplacement pour effacement. L’écrasement direct n’est pas possible.

Cette contrainte d’« effacement avant écriture » implique que le disque doit gérer les écritures et les effacements à des niveaux de granularité différents, et cette distinction a des conséquences directes sur la manière dont le contrôleur coordonne le stockage et sur le comportement des données supprimées sur le support.

Architecture NAND : pages vs blocs

La mémoire NAND d’un SSD est organisée et gérée par le biais de deux unités distinctes. Une page est la plus petite unité pouvant être lue ou écrite, généralement comprise entre 4 et 16 kilo-octets. Chaque fois que l’hôte demande ne serait-ce qu’un seul octet de données, le contrôleur du SSD doit lire ou écrire une page entière.

Un bloc est la plus petite unité pouvant être effacée et contient généralement entre 64 et plusieurs centaines de pages. Le contrôleur peut écrire sur une page individuelle, mais ne peut pas en effacer une seule. Pour libérer de l’espace, il faut effacer le bloc entier. Si un bloc contient à la fois des pages avec des données valides et des pages supprimées, le contrôleur doit d’abord migrer les pages valides vers un emplacement libre. Ce n’est qu’alors que le bloc d’origine peut être effacé.

Ce décalage entre les pages et les blocs est une réalité architecturale que tout contrôleur SSD doit gérer.

Le processus de suppression des données dans un SSD

Le processus de suppression dans un SSD se déroule en trois étapes.

1. Désallocation logique : la commande TRIM, ce qu’elle fait et ce qu’elle ne supprime pas

Lorsqu’un utilisateur supprime un fichier, le système d’exploitation envoie une commande TRIM au contrôleur du SSD. Le contrôleur marque les pages correspondantes comme invalides dans le mappage FTL.

Les données elles-mêmes ne sont pas effacées à ce stade. Elles restent physiquement présentes dans les cellules NAND et ne sont que logiquement inaccessibles. Chaque commande TRIM suivante fournit au contrôleur une liste mise à jour des adresses de blocs logiques (LBA) qui ne sont plus utilisées.

Remarque : la commande TRIM marque les pages concernées comme invalides. Elle ne supprime ni ne modifie les données contenues dans ces pages.

2. L'enlèvement des déchets : le processus en arrière-plan qui prépare les pages à la suppression définitive

Le contrôleur du SSD exécute un processus autonome appelé « collecte des déchets » afin de récupérer les blocs de mémoire NAND remplis de pages invalides. Au cours de ce processus, le contrôleur identifie un bloc « sale », transfère toutes les pages valides restantes de ce bloc vers un bloc « propre », puis place le bloc d’origine en file d’attente en vue de son effacement. Le contrôleur reporte généralement cette tâche aux périodes où le disque est inactif.

3. Effacement physique de la mémoire NAND : effacement définitif des données de la mémoire flash NAND

Le contrôleur du SSD applique une impulsion haute tension comprise entre 15 et 20 volts au bloc via l’effet tunnel de Fowler-Nordheim. Cette impulsion libère les électrons piégés dans les cellules de la mémoire flash et réinitialise chaque bit du bloc à un 1 logique. Une fois cette étape terminée, les données sont définitivement effacées.

Ce processus en trois étapes explique pourquoi la récupération des données supprimées d’un SSD est imprévisible. C’est pendant le laps de temps compris entre la désallocation de la page et l’effacement physique du bloc que la récupération des données peut encore être possible.

Comment un contrôleur SSD influence-t-il le fonctionnement et la résilience du disque ?

Le stockage et la suppression des données ne constituent qu’une partie des fonctions du contrôleur. Celui-ci assure également le bon fonctionnement du disque, protège les données stockées et gère l’usure des cellules, ce qui est le sujet de cette section.

1. Gestion du stockage

Dans un SSD, les opérations de lecture et d’écriture s’effectuent au niveau des pages, mais l’effacement se produit au niveau des blocs. Pour fonctionner efficacement dans le cadre de cette contrainte, le contrôleur gère plusieurs canaux parallèles et unités logiques (LUN), un mécanisme appelé « parallélisme ».

Le contrôleur répartit les opérations entre ces LUN, en lançant une nouvelle commande sur une puce tandis qu’une autre est encore occupée par une opération de programmation ou d’effacement à forte latence. C’est ce qu’on appelle l’entrelacement.

Le contrôleur regroupe également les petites écritures dispersées en programmes de pages NAND séquentiels plus volumineux, plutôt que de valider chaque écriture individuellement. Il les met en mémoire tampon et les agrège en écritures séquentielles plus importantes afin de réduire l’usure inutile des cellules NAND. Ce mécanisme est appelé « regroupement d’écritures ».

2. Préservation de l’intégrité des données

Un contrôleur SSD préserve en permanence l’intégrité des données grâce à deux fonctions clés.

La première est la correction d’erreurs. Les cellules NAND développent des erreurs de bits à mesure qu’elles vieillissent, et celles-ci s’accumulent à chaque cycle de programmation/effacement. Le contrôleur y remédie à l’aide de moteurs dédiés de codage de correction d’erreurs (ECC) basés sur des algorithmes tels que le contrôle de parité à faible densité (LDPC) ou Bose-Chaudhuri-Hocquenghem (BCH). Ces moteurs détectent et corrigent les bits inversés à chaque lecture, garantissant ainsi que le système d’exploitation reçoive ce qui a été initialement écrit.

La seconde est la protection contre les coupures de courant (PLP). Dans les disques durs d’entreprise, le contrôleur est associé à des condensateurs qui stockent une brève réserve d’énergie. Si le disque subit une coupure de courant soudaine, ces condensateurs laissent au contrôleur suffisamment de temps pour écrire sur la mémoire NAND toutes les données encore présentes dans les tampons volatils.

3. Prolongation de la durée de vie

Les cellules NAND ont une durée de vie opérationnelle limitée. Chaque cellule ne peut être programmée et effacée qu’un nombre limité de fois, cette limite étant mesurée en cycles de programmation/effacement (P/E). Pour prolonger cette durée de vie, le contrôleur répartit l’usure entre les cellules à l’aide de deux méthodes.

La première est le nivellement dynamique de l’usure, dans lequel le contrôleur oriente les nouvelles écritures vers les blocs ayant subi le moins de cycles P/E. La seconde est le nivellement statique de l’usure, dans lequel le contrôleur déplace les données rarement modifiées hors des blocs à faible usure, permettant ainsi à ces blocs de revenir à un usage actif. Sans cela, les blocs stockant des données statiques resteraient inutilisés, tandis que d’autres s’useraient plus rapidement.

Les contrôleurs SSD améliorent également la fiabilité grâce au surprovisionnement. Les fabricants réservent une partie de la capacité physique du disque sous la forme d’un pool caché qui n’est pas accessible au système d’exploitation. Le contrôleur utilise cette réserve comme espace de travail pour le ramasse-miettes et comme source de blocs de rechange destinés à remplacer les blocs défaillants.

Remarque : En matière de récupération de données SSD, le surprovisionnement ajoute un niveau de complexité supplémentaire. Des fragments de données peuvent subsister dans la mémoire physique en dehors de la plage d’adresses accessible au système d’exploitation. Une analyse classique des fichiers ne peut pas les examiner, car ils ne sont pas exposés comme un espace de stockage logique standard. C’est l’une des raisons pour lesquelles les experts de Stellar en récupération de données SSD évaluent chaque appareil en analysant le support de stockage et le comportement du contrôleur, plutôt que de se fier uniquement aux informations fournies par le système de fichiers.

Présentation des principaux types de contrôleurs SSD

L’architecture des contrôleurs SSD peut varier considérablement. Ces différences portent principalement sur la manière dont chacun d’entre eux stocke et accède à la table de mappage FTL.
Étant donné que le contrôleur consulte cette table à chaque opération de lecture et d’écriture, l’emplacement de cette table a une incidence directe sur les performances, le coût et l’endurance du disque. Les trois principaux types de contrôleurs sont les contrôleurs à base de DRAM, sans DRAM et HMB, chacun adoptant une approche différente face à ce problème.

1. Contrôleurs à DRAM

Un contrôleur à DRAM dispose de sa propre puce mémoire dédiée qui stocke la table de mappage FTL. Cette puce est soit intégrée au contrôleur, soit montée séparément sur le circuit imprimé du disque.

La DRAM fonctionnant environ 100 fois plus vite que la mémoire NAND, le contrôleur peut effectuer les recherches d’adresses avec un délai minimal, ce qui explique l’avantage de ces disques en termes de vitesse.

Le compromis réside dans le coût et la consommation d’énergie. Les puces DRAM alourdissent le prix d’un disque et consomment davantage d’énergie que d’autres types de contrôleurs. Il y a également la question de la volatilité : la DRAM étant volatile, son contenu est perdu dès que l’alimentation est coupée. Les disques haut de gamme de cette catégorie pallient ce problème grâce à des condensateurs intégrés, qui conservent une charge suffisante pour permettre au contrôleur d’écrire la table de mappage sur la mémoire NAND avant que le disque ne soit complètement privé d’alimentation.

2. Contrôleurs sans DRAM

Un contrôleur sans DRAM supprime totalement la puce mémoire dédiée, ce qui se traduit par un disque moins coûteux, plus compact et plus économe en énergie.

À la place, le contrôleur stocke la table FTL directement sur la mémoire NAND. Les entrées de mappage les plus récemment utilisées sont mises en cache dans une petite quantité de mémoire vive statique (SRAM) intégrée au contrôleur. Lorsqu’une entrée de mappage requise est absente de ce petit cache SRAM, le contrôleur doit aller la chercher dans la mémoire NAND avant de pouvoir lire les données demandées.

Cette étape supplémentaire introduit une latence et peut réduire les performances de lecture et d’écriture aléatoires du SSD. En contrepartie, un SSD équipé d’un contrôleur sans DRAM est moins cher, plus compact et consomme moins d’énergie qu’un modèle doté d’un contrôleur à base de DRAM.

Remarque : pour toute personne évaluant des SSD en fonction de l’architecture de leur contrôleur, le choix entre un disque à DRAM et un disque sans DRAM se résume généralement à une seule question : la réduction de coût justifie-t-elle le compromis en termes de performances ?

3. Contrôleurs HMB (Host Memory Buffer)

Le contrôleur HMB (Host Memory Buffer) est une conception sans DRAM disponible sur les disques utilisant l’interface NVMe (Non-Volatile Memory Express). Il comble le fossé entre les contrôleurs à base de DRAM et les contrôleurs standard sans DRAM.

Plutôt que de s’appuyer uniquement sur la SRAM, le contrôleur utilise une petite partie de la mémoire vive (RAM) du système hôte pour mettre en cache une plus grande partie de la table de mappage FTL, généralement comprise entre 64 et 100 mégaoctets.

Un disque HMB peut égaler les performances d’un disque à base de DRAM pour la plupart des charges de travail, à un coût nettement inférieur. Le compromis réside dans la dépendance vis-à-vis du système hôte. Si le système d’exploitation ne bénéficie pas de la technologie HMB ou refuse la demande d’allocation de mémoire, le disque fonctionne alors comme un contrôleur standard sans DRAM, sans aucun avantage en termes de performances.

Ces différences architecturales ont une incidence qui va au-delà des performances. En matière de récupération de données, le type de contrôleur détermine les méthodes de diagnostic envisageables, les outils applicables et la quantité de données supprimées qui reste récupérable.

Conclusion : le contrôleur est le point de départ de la récupération des données sur SSD

Chaque concept abordé dans ce guide renvoie à un seul composant. La commande TRIM lui est adressée. Le ramasse-miettes s’exécute sous son contrôle. Le nivellement de l’usure, le surprovisionnement et l’effacement physique de la mémoire NAND sont autant de décisions prises par le contrôleur, souvent de manière autonome, souvent pendant que le disque est inactif.

Au moment où un utilisateur se rend compte qu’il a perdu des données, le contrôleur a peut-être déjà fermé la fenêtre de récupération. Cela dépend de l’architecture du contrôleur, de la charge de travail du disque et du temps écoulé.

C’est pourquoi les experts de Stellar Récupération de données commencent chaque cas de récupération de données sur SSD par une évaluation au niveau du contrôleur. Le type de contrôleur, son fabricant et son comportement en cas de défaillance déterminent quelle approche diagnostique est viable, quels outils s’appliquent et ce qui peut réellement être récupéré. Une analyse du système de fichiers n’est pas suffisante ; seule une évaluation plus approfondie, au niveau du contrôleur, peut révéler ce qui est véritablement récupérable.

La deuxième partie de ce guide aborde précisément ce sujet, en détaillant l’approche de récupération pour chaque type de contrôleur et les scénarios dans lesquels la récupération reste possible.

Vous avez perdu des données sur un SSD ? Appelez-nous au 02-808 9025

Mettez immédiatement le disque hors tension. Plus il reste actif longtemps, plus le contrôleur réduit les possibilités de récupération des données. Les spécialistes de Stellar en récupération de données SSD évalueront les données encore présentes après les opérations du contrôleur et vous conseilleront sur les options de récupération les plus adaptées.

Toutes les pannes de SSD ne se manifestent pas de la même manière et ne nécessitent pas la même intervention. Les articles ci-dessous traitent des scénarios les plus fréquemment rencontrés par les utilisateurs et expliquent comment chacun d’entre eux est géré:

Foire aux questions

76% des personnes ont trouvé ce Blog utile

À propos de l'auteur

Kees Jan Meerman

Kees Jan Meerman

Managing Director, Stellar Data Recovery Europe

  • The Hague Security Delta
  • ISO 9001:2015 Certified
  • MKB Innovative
  • MVO Nederland
Call Me