Détection et correction des erreurs
Les disques SSD doivent préserver l'intégrité des données pendant leurs transferts entre le PC hôte et le stockage NAND par l'intermédiaire du contrôleur SSD. Les transferts de données entre l'hôte et le SSD sont souvent appelés “données en transit” avant d'être véritablement écrites dans les composants NAND Flash. Les contrôleurs SSD intègrent une technologie de correction des erreurs (appelée ECC : Error Correction Code) qui détecte et corrige la plupart des erreurs qui peuvent affecter les données pendant leurs transferts. Les puces Flash intègrent des informations supplémentaires pour assurer la correction des erreurs, en association avec chaque bloc de données écrites. Ces informations permettent au contrôleur SSD de corriger simultanément un grand nombre d'erreurs pendant la lecture des blocs de données. Comme les disques durs, les mémoires NAND Flash rencontrent des erreurs de bit pendant leur fonctionnement normal, qui sont corrigées à la volée grâce aux données ECC.
Dans certains cas rares, des erreurs de lecture au niveau du bloc ne peuvent pas être corrigées. Le contrôleur SSD les détecte et les identifie comme des erreurs ECC non-corrigées (UECC) et les signale à l'ordinateur hôte. Les disques SSD sont conçus pour offrir une fiabilité extrême.
Pour les disques SSD Client, le taux d'erreurs UECC est normalement de 1 pour 10 à 15 bits lus. Pour les disques SSD Entreprise, le taux d'erreurs UECC est normalement de 1 pour 10 à 16 bits lus. Selon les exigences JESD219 UBER et JEDS218A du JEDEC pour différencier les disques SSD, un SSD destiné aux entreprise ne doit pas générer plus d'une erreur binaire non-corrigée pour 10 quadrillions de bits (~1,11 Péta-octet), alors qu'un SSD destiné aux clients serait limité à une EBN par quadrillion de bits (~0,11 Péta-octet) traités.
Les disques SSD de Kingston incorporent des blocs de rechange dans les composants Flash NAND. Ces zones de stockage font habituellement partie de l'espace de stockage réservé à l'Over-Provisioning (OP) du disque et qui n'est pas accessible aux utilisateurs. Si un nombre excessif d'erreurs est détecté dans un bloc de données enregistrées dans un composant NAND, ce bloc est alors marqué comme Bloc erroné, mis hors service et remplacé par un bloc de rechange. Pendant ce processus, les données sont corrigées selon les besoins par EEC. L'utilisation des blocs de rechange prolonge la durée de vie et l'endurance des disques SSD.