Контроллер флэш-памяти
Контроллер флэш-памяти (или флэш-контроллер ) управляет данными, хранящимися во флэш-памяти (обычно флэш-памяти NAND ), и обменивается данными с компьютером или электронным устройством . Контроллеры флэш-памяти могут быть предназначены для работы в с низким рабочим циклом средах , например карты памяти или другие подобные носители для использования в КПК , мобильных телефонах и т. д. В USB-накопителях флэш-памяти используются контроллеры флэш-памяти, предназначенные для связи с персональными компьютерами через USB-порт на низкий рабочий цикл. Флэш-контроллеры также могут быть разработаны для сред с более высокой нагрузкой, например, твердотельные накопители (SSD), используемые в качестве хранилища данных для портативных компьютерных систем, или критически важные корпоративные массивы хранения данных . [1]
Первоначальная настройка
[ редактировать ]После первоначального изготовления флэш-накопителя контроллер флэш-памяти сначала используется для форматирования флэш-памяти. Это гарантирует правильную работу устройства, определяет поврежденные ячейки флэш-памяти и выделяет запасные ячейки для замены будущих вышедших из строя ячеек. Некоторая часть запасных ячеек также используется для хранения встроенного ПО , которое управляет контроллером и другими специальными функциями конкретного устройства хранения. Создается структура каталогов, позволяющая контроллеру преобразовывать запросы логических секторов в физические местоположения на реальных микросхемах флэш-памяти. [1]
Чтение, запись и стирание
[ редактировать ]Когда системе или устройству необходимо прочитать данные или записать данные во флэш-память, они будут обмениваться данными с контроллером флэш-памяти. Более простые устройства, такие как SD-карты и USB-накопители, обычно имеют небольшое количество одновременно подключенных кристаллов флэш-памяти. Операции ограничены скоростью отдельного кристалла флэш-памяти. Напротив, высокопроизводительный твердотельный накопитель будет иметь больше кристаллов, организованных с параллельными путями связи, что обеспечит скорость, во много раз превышающую скорость одного флэш-накопителя. [ нужна ссылка ]
Выравнивание износа и подбор блоков
[ редактировать ]Флэш-память выдерживает ограниченное количество циклов программного стирания. Если бы определенный блок флэш-памяти был запрограммирован и удален неоднократно без записи в какие-либо другие блоки, один блок изнашивался бы раньше всех других блоков, тем самым преждевременно заканчивая срок службы устройства хранения. По этой причине флэш-контроллеры используют метод, называемый выравниванием износа , для максимально равномерного распределения операций записи по всем флэш-блокам SSD. В идеальном сценарии это позволило бы записать каждый блок до максимального срока его службы, чтобы все они вышли из строя одновременно. [2]
Уровень трансляции Flash (FTL) и отображение
[ редактировать ]Обычно контроллеры флэш-памяти также включают в себя «уровень трансляции флэш-памяти» (FTL), уровень ниже файловой системы, который сопоставляет адреса логических блоков (LBA) на стороне хоста или файловой системы с физическим адресом флэш-памяти (логически-физический адрес). картографирование). LBA относятся к номерам секторов и к единице отображения размером 512 байт. Все LBA, которые представляют логический размер, видимый и управляемый файловой системой, сопоставляются с физическим местоположением (идентификатором блока, идентификатором страницы и идентификатором сектора) флэш-памяти. В рамках выравнивания износа и других алгоритмов управления флэш-памятью (управление сбойными блоками, управление нарушениями чтения, безопасная обработка флэш-памяти и т. д.) физическое расположение LBA может часто динамически меняться. Единицы отображения FTL могут различаться, поэтому LBA отображаются на основе блоков, страниц или даже подстраниц. В зависимости от характера использования более высокая степень детализации сопоставления может значительно снизить износ флэш-памяти и максимально увеличить срок службы флэш-носителей. [3] [4] [5] В FTL также добавлена функция дедупликации для устранения избыточных данных и дублирования записей. [6]
Поскольку метаданные FTL занимают собственное флэш-пространство, они нуждаются в защите в случае отключения питания. Кроме того, таблица сопоставления может выйти из строя раньше, чем другие части флэш-памяти, что приведет к преждевременному прекращению срока службы устройства хранения данных. В корпоративных устройствах этого обычно избегают, выделяя слишком большое пространство для запасных частей, хотя более надежные формы хранения, такие как MRAM . для FTL также предлагаются [ нужна ссылка ] Соотношение размера метаданных FTL и емкости хранилища обычно составляет 1:1000, например, флэш-накопитель емкостью 1 ТБ может иметь 1 ГБ метаданных FTL.
Сбор мусора
[ редактировать ]После того, как каждый блок твердотельного запоминающего устройства будет записан один раз, контроллеру флэш-памяти необходимо будет вернуться к некоторым из начальных блоков, в которых больше нет текущих данных (также называемых устаревшими блоками). Данные в этих блоках были заменены вновь записанными блоками и теперь ожидают удаления, чтобы в них можно было записать новые данные. Это процесс, называемый сборкой мусора (GC). Все твердотельные накопители, CF-карты и другие флэш-накопители будут включать в себя определенный уровень сбора мусора. Скорость, с которой контроллер флэш-памяти будет это делать, может варьироваться. [7]
Ссылки
[ редактировать ]- ^ Jump up to: а б «Руководство по флэш-памяти» (PDF) . Kingston.com . Проверено 7 марта 2013 г.
- ^ Чанг, Ли-Пин (11 марта 2007 г.). «Об эффективном выравнивании износа крупномасштабных систем хранения данных с флэш-памятью». CiteSeerX 10.1.1.103.4903 .
- ^ Гудсон, Гарт; Айер, Рахул. «Компромиссы при проектировании на уровне трансляции Flash» (PDF) . Архивировано из оригинала (PDF) 23 июня 2015 г.
- ^ «Понимание Flash: уровень трансляции Flash» . 17 сентября 2014 г.
- ^ Гейдрих, Сьюзен (февраль 2015 г.). «Новая архитектура управления флэш-памятью позволяет использовать MLC для промышленных систем хранения данных» (PDF) .
- ^ Чен, Фэн; Ло, Тянь; Чжан, Сяодун (2011). CAFTL: уровень трансляции флэш-памяти с учетом содержимого, увеличивающий срок службы твердотельных накопителей на основе флэш-памяти . ФАСТ' 11. с. 6.
- ^ «Твердотельные накопители — усиление записи, TRIM и GC» (PDF) . Технология OCZ. Архивировано из оригинала (PDF) 26 мая 2012 г. Проверено 31 мая 2010 г.