Программные сбои контроллера.

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

При подключении к компьютеру такой флэш-диск может опознаваться как «Неизвестное устройство», иметь формат RAW или может быть виден в системе как диск с нулевой ёмкостью. При попытке доступа к нему могут выводиться сообщения «Вставьте диск» или «Нет доступа к диску».

Иногда, флэш-диск становится доступен только для чтения. Данные видны и читаются, но при попытках создания файла, стирания или форматирования выводится сообщение – «Диск защищен от записи». В данном случае контроллер переходит в режим защиты данных при обнаружении ошибок микропрограммы или флэш-памяти для предотвращения её дальнейшего разрушения (память NAND установленная во флэшке повреждается в основном при записи данных).

    Большинство утилит по восстановлению производят полное форматирование памяти, по этому, если нужно сохранить важные данные и не потерять их безвозвратно – обратитесь к специалистам по восстановлению информации. С помощью специального оборудования будет произведено считывание и расшифровка информации непосредственно из микросхемы NAND памяти в обход сбойного или неисправного управляющего контроллера.

Порядок восстановления флэш накопителя.

1. Нужно выяснить модель микросхемы-контроллера чтобы найти утилиту для работы с ним. Это можно сделать двумя способами. Первый – вскрыть корпус флэшки и посмотреть наименование модели контроллера нанесённой на корпусе микросхемы. Если вскрыть корпус проблематично – используем второй способ. Он заключается в определении модели по кодам VID и PID зашитым в микропрограмме контроллера. VID – это идентификатор производителя, а PID – идентификатор устройства. VID и PID имеются в любом USB устройстве. Эти коды можно считать такими программами как CheckUDisk 5.0, UsbIDCheck, ChipGenius, USBDeview, а также средствами операционной системы.

Если VID&PID считать не удаётся или значения пусты то можно попробовать перевести контроллер в тестовый режим. Как это сделать описано здесь. Если и это не поможет - велика вероятность электрического повреждения микросхемы. В данном случае программными способами вылечить накопитель уже не получится.

2. Итак, VID&PID удалось считать, значит шансы на восстановления уже есть. Далее по значениям VID&PID можно найти производителя флэш-накопителя и модель установленного контроллера (например с помощью базы iFlash). Определив контроллер, переходим к поиску сервисной утилиты для работы с ним.

3. Подходящую утилиту можно найти на сайте производителя или в каталоге утилит сайта wwwflashboot.ru. Для удобства утилиты отсортированы по производителям контроллеров.

Например:
Вы определили, что VID вашей флэш – 1005, а PID – B113. По базе iFlash находим что во флэш установлен контроллер PS2136 фирмы PHISON. Утилита для этого контроллера USB 2K REL90 (PS2231-UP12) . А если тип контроллера был определён вскрытием корпуса, тогда сразу переходим в каталог файлов и ищем подходящую утилиту.

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

После восстановления работы контроллера велика вероятность вытащить хоть какие-то данные из памяти флэшки. Для этого можно воспользоваться программой PhotoRec.

Если данные уже не нужны или информация полностью разрушилась, рекомендуется провести тест флэш памяти на наличие сбойных секторов. Сделать это можно программами Flash Memory Toolkit 1.20 PRO, MyDiskTest v2.42, Victoria 4.3 Beta, Flashnul 0.99.

Данный материал взят с сайта www.flashboot.ru