Книга: Восстановление данных на 100%
Контроллеры
Контроллеры
Для управления чтением и записью служит контроллер памяти. В настоящее время контроллер всегда выполняется в виде отдельного элемента (это либо микросхема одного из стандартных форм-факторов, либо бескорпусный чип, встраиваемый в карту памяти), хотя ведутся работы по интеграции контроллера непосредственно в кристалл flash-памяти.
Контроллеры разрабатываются и выпускаются под совершенно определенные микросхемы flash-памяти. Способ адресации ячеек конструктивно заложен в контроллере. Данные при записи в микросхему flash-памяти располагаются определенным способом, меняющимся от модели к модели. Производители эти тонкости не раскрывают и, по всей видимости, раскрывать не планируют. Очевидно, микропрограмм контроллеров создается значительно больше, чем самих моделей контроллеров. Микропрограмма контроллера (прошивка) и таблица трансляции адресов (транслятор) записываются в служебную область flash-памяти. Именно эту область контроллер начинает считывать сразу после подачи на него питания. Кроме собственно адресации ячеек, контроллер выполняет ряд других функций: функции контроля bad-секторов, коррекции ошибок (ECC – error check and correct) и равномерности износа ячеек (wear leveling).
Технологической нормой при изготовлении микросхем памяти считается наличие в них в среднем до 2 % нерабочих ячеек. Со временем их количество может еще увеличиваться, поэтому, как и в винчестерах, во flash-памяти предусмотрен резервный объем. Если появляется дефектный сектор, контроллер в процессе форматирования или записи подменяет его адрес в таблице размещения файлов адресом сектора из резервной области. Коррекция осуществляется контроллером, но реализуется на уровне файловой системы конкретного носителя.
Из-за ограниченного ресурса ячеек (порядка нескольких миллионов циклов чтения/записи для каждой) в контроллер заложена функция учета равномерности износа. Чтобы запись информации осуществлялась равномерно, свободное пространство условно разбивается на участки, и для каждого из них учитывается количество операций записи. Статистика циклов заносится в скрытую служебную область памяти, и за этими сведениями контроллер периодически обращается к ней. На адресацию это не влияет.
- Контроллеры и конфигурирование RAID
- Глава 4 МИКРОКОНТРОЛЛЕРЫ 68HC12 И HCS12: АРХИТЕКТУРА И ПРОГРАММИРОВАНИЕ
- 1.3. Введение в микроконтроллеры семейства 68HC12 и HCS12
- 1.4 Микроконтроллеры HCS12
- 2.1. Почему мы программируем микроконтроллеры на Си?
- ГЛАВА 4 Контроллеры
- Тяжелая артиллерия
- 12.4. Прямой доступ к памяти — DMA
- Что делать в случае катастрофической потери данных
- 4.1.8. Разработка собственных устройств USB
- 9.1.2. Контроллер НГМД
- 1.0. Введение