Коррекция ошибок и резервные блоки для защиты данных на твердотельных накопителях Kingston от ошибок

Комплексная защита данных

Kingston SSD

Все твердотельные накопители (SSD) компании Kingston поддерживают функцию комплексной защиты данных, которая обеспечивает безопасность данных пользователя при их переносе хост-системой на накопитель SSD, а затем обратно с накопителя SSD - в хост-компьютер.

Передача данных внутри SSD

Передача данных внутри SSD

Все твердотельные накопители (SSD) содержат контроллеры, позволяющие им обмениваться данными с хост-системой, к которой они подсоединены. Запись данных на SSD-накопитель или чтение данных из него происходит через контроллер SSD, независимо от форм-фактора SSD (2,5 дюйма, расширительная плата, M.2 и т.д.) или используемого интерфейса (например, SATA или NVMe).

В настоящее время имеется множество схем построения контроллеров SSD. В то время как некоторые контроллеры SSD содержат встроенную кэш-память (обычно SRAM) в качестве части конфигурации контроллера, другие могут использовать отдельный чип (или отдельные чипы) DRAM, применяемые для временного хранения таблиц отображения внутренней флэш-памяти и обрабатываемых пользовательских данных. В некоторых конфигурациях контроллеров отдельная память DRAM отсутствует, а вместо этого используется часть флэш-памяти NAND в качестве хранилища для таблиц отображения.

В SSD-накопителях используются чипы флэш-памяти NAND для хранения данных. Чипы NAND - это энергонезависимые устройства памяти, которые хранят данные даже после отключения питания. Когда контроллеру SSD требуется сохранить или извлечь данные, ему нужно выполнить запись в чипы флэш-памяти NAND или чтение из этих чипов.

Обнаружение и исправление ошибок

Накопители SSD должны поддерживать целостность данных в ходе их перемещения из хост-ПК в память NAND через контроллер SSD. Данные, перемещаемые из хост-устройства в SSD, часто называют "данными в полете" или "данными в пути" до того, как они будут действительно записаны во флэш-память NAND. Контроллеры SSD поддерживают технологию Коррекции ошибок (называемую ECC - Код коррекции ошибок (Error Correction Code)) для обнаружения и исправления подавляющего большинства ошибок, которые могут отрицательно повлиять на дынные в ходе их перемещения. Чипы флэш-памяти включают дополнительную информацию по коррекции ошибок в каждый блок записываемых данных; эта информация позволяет контроллеру SSD одновременно исправлять множество ошибок при чтении блока данных. Флэш-память NAND, как и дисковые накопители, во время штатной работы будет встречаться с битовыми ошибками, которые она будет исправлять "на лету" при помощи своих данных ECC.

В редких случаях ошибки данных в читаемом блоке невозможно исправить; контроллер SSD будет распознавать такое событие как "неисправимую ошибку ECC" (UECC) и сообщать об этой ошибке хост-компьютеру. Твердотельные накопители спроектированы так, что они обеспечивают исключительно надежную работу. Для клиентских SSD-накопителей ошибки UECC обычно оцениваются как одна в 10

-15 считываемых битах, а в корпоративных SSD-накопителях они оцениваются как одна в 10-16 считываемых битах. В соответствии с требуемым JEDEC JEDS218A и JESD219 показателем UBER для SSD корпоративного уровня по сравнению с клиентскими SSD, в SSD корпоративного класса допустимо появление 1 неустранимой битовой ошибки с частотой 1 битовая ошибка на каждые 10 квадриллионов считываемых битов (~1,11 петабайт), а в клиентских SSD - 1 битовая ошибка на каждый 1 квадриллион считываемых битов (~0,11 петабайт) для клиентских SSD.

SSD-накопители компании Kingston также содержат запасные блоки (Spare Blocks) в устройствах флэш-памяти NAND. Эти области памяти обычно находятся в резервном пространстве (Over-Provisioned (OP)) накопителя и недоступны для пользователя. Если устройство NAND будет содержать чрезмерное количество ошибок в блоке данных, тогда этот блок будет помечен как неисправный (Bad Block), он будет аннулирован, и вместо него в работу будет включен один из запасных блоков. В ходе этого процесса при необходимости данные будут скорректированы с помощью ECC. Использование запасных блоков продлевает срок службы и увеличивает долговечность SSD-накопителей.