Имеет ли карта памяти SDHC восстановление ошибок записи (ECC)?

Что произойдет, если SDHC-карта получит ошибку записи (поврежденная ячейка / плохой сектор)?

вся карточка будет неиспользованна (поганить, все данные записанные к тому участку теперь и в будущем будут потеряны)?
Или переписать сектор (флэш-память повреждена при записи, так что, возможно, есть какие-либо функции, чтобы проверить, если сектор был успешно записан) к другому и пометить как неисправность, как непригодным, что будет рассматриваться как уменьшение емкости, но данные не потеряны.

Я должен сделать некоторые исследования о SD карты на дисковых машинах.

19
задан Peter Mortensen
06.05.2023 1:37 Количество просмотров материала 2719
Распечатать страницу

2 ответа

В общем, SD-карты работают с файловой системой FAT. Это позволит обнаружить и пометить/флаг плохие сектора так конечный результат данных не теряется, но количество доступного пространства на карте немного уменьшается. Это не идеально, конечно. Некоторые новые карты имеют встроенный код исправления ошибок (ECC), который выполняет аналогичную работу на более низком уровне, поэтому теоретически он должен еще меньше потерять информацию, записываемую на карту. Это все еще возможно, только менее вероятно.

2
отвечен richard 2023-05-07 09:25

кстати NAND флэш работает, предоставляя ряд "eraseblocks" - каждый "eraseblock" есть несколько "страниц."Как правило, вы смотрите на 128 Кбайт eraseblocks разделены на 64 2 Кбайт страниц. Каждую страницу можно записать, изменив биты с 1 на 0. Если вы хотите изменить любые биты назад от 0 до 1, то вы должны выдать команду erase к всему eraseblock которое переустановит все биты до 1 (Если блок не Несен).

запись не идеальна, и некоторые биты могут не измениться от 1 до 0, или переворачивайте сами.

есть и "внешняя зона", или отдельную страницу, на eraseblock. Там, ECC коды могут быть написаны, и это то, что используется для SLC вспышка. Для MLC flash, они используют BCH коды, которые могут восстановить больше бит.

внутренне это, как вещи работают. SD-карты не обеспечивают доступ к raw NAND, но проходят через внутренний микроконтроллер, который отвечает за выравнивание износа и все такое хороший материал. Основное устройство никогда не видит необработанный NAND, а только блочное устройство. Но SD использует ECC или BCH AFAIK.

2
отвечен LawrenceC 2023-05-07 11:42

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх