Контроллер флэш-памяти - Flash memory controller

  (Перенаправлено со слоя перевода Flash )
USB-накопитель Lexar 8 ГБ - Silicon Motion SM3253L - одноканальный флэш-контроллер USB 2.0.

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

Начальная настройка

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

Чтение, письмо и стирание

Когда системе или устройству необходимо прочитать или записать данные во флэш-память, они будут взаимодействовать с контроллером флэш-памяти. В более простых устройствах, таких как SD-карты и USB-накопители, обычно одновременно подключено небольшое количество кристаллов флэш-памяти. Операции ограничены скоростью отдельного кристалла флэш-памяти. Напротив, высокопроизводительный твердотельный накопитель будет иметь до 100 или более кристаллов, организованных в матрицу с параллельными путями связи, чтобы обеспечить скорость, во много раз превышающую скорость одиночного кристалла флэш-памяти.

Выравнивание износа и подбор блоков

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

Уровень трансляции Flash (FTL) и отображение

Обычно контроллеры флэш-памяти также включают в себя «уровень трансляции флэш-памяти» (FTL), уровень ниже файловой системы, который сопоставляет адреса логических блоков (LBA) на стороне хоста или файловой системы с физическим адресом флэш-памяти (логически-физическим отображение). LBA относятся к номерам секторов и к единице отображения размером 512 байт. Все LBA, представляющие логический размер, видимый файловой системой и управляемый ею, сопоставляются с физическим расположением (ID блока, ID страницы и ID сектора) Flash. В рамках выравнивания износа и других алгоритмов управления флэш-памятью (управление плохими блоками, управление нарушениями чтения, безопасное обращение с флэш-памятью и т. Д.) Физическое местоположение LBA может часто динамически меняться. Единицы отображения FTL могут различаться, поэтому LBA отображаются на основе блоков, страниц или даже подстраниц. В зависимости от модели использования более тонкая детализация отображения может значительно снизить износ флэш-памяти и максимизировать срок службы носителей на основе флэш-памяти.

Вывоз мусора

После того, как каждый блок твердотельного запоминающего устройства был записан один раз, флэш-контроллеру необходимо будет вернуться к некоторым из начальных блоков, в которых больше нет текущих данных (также называемых устаревшими блоками). Данные в этих блоках были заменены вновь записанными блоками, и теперь они ожидают стирания, чтобы в них можно было записать новые данные. Это процесс, называемый сборкой мусора (GC). Все твердотельные накопители, CF-карты и другие устройства флэш-памяти будут включать в себя некоторый уровень сборки мусора. Скорость, с которой это будет делать контроллер вспышки, может варьироваться.

Ссылки