Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
29
Добавлен:
31.05.2015
Размер:
1.87 Mб
Скачать

NAND архитектура

Операция NAND дает нулевое значение только в том случае, когда все операнды равны нулю, и единичное значение во всех остальных случаях. Как мы уже отмечали, «0» соответствует открытому состоянию транзистора, поэтому архитектура NAND подразумевает, что битовая линия имеет нулевое значение в случае, когда все подсоединенные к ней транзисторы открыты, и «1» — когда хотя бы один из транзисторов закрыт.

Такую архитектуру можно организовать, если подключать транзисторы с битовой линии не по одному (как в архитектуре NOR), а последовательными сериями.

Кроме рассмотренных нами архитектур NOR и NAND, во флэш-памяти используются и другие архитектуры, например AND, DiNOR и т.д., но они не получили массового распространения.

Physics Faculty, Electronic Computing Devices & Systems, 6th semester,2011 Dr. Mokhovikov Alexander Yurievich

Размер ячейки, страницы, блока NAND-памяти

Для более эффективного использования элементарных ячеек памяти они были объединены в массивы с несколько уровневой структурой.

Одна ячейка хранящая один (для SLC) или, как правило, два/четыре (для нынешнего поколения MLC) бита данных, объединена в группу названную страницей и вмещающую 4 КБ данных.

Далее 128 страниц объединены

Управление данными в

в блок объемом 512 КБ,

одном массиве обычно

а 1024 блока дают массив,

осуществляется одним

представляющий 512 МБ.

контроллером.

 

Physics Faculty, Electronic Computing Devices & Systems, 6th semester,2011 Dr. Mokhovikov Alexander Yurievich

Специальные алгоритмы

Ввиду ограниченности циклов записи/стирания ячеек флеш-памяти разработчикам пришлось составить правильный алгоритм работы

Записали информацию на страницу, не получиться, пока не будет очищена страница полностью. Проблема заключается в том, что минимальный размер записываемой информации не может быть меньше 4 КБ, а стереть данные можно минимум блоками по 512 КБ. Для этого контроллер группирует и переносит данные (этот алгоритм мы опишем ниже) для освобождения целого блока.

Physics Faculty, Electronic Computing Devices & Systems, 6th semester,2011 Dr. Mokhovikov Alexander Yurievich

Специальные алгоритмы

После запроса на запись от операционной системы, контроллер носителя определяет размер и структуру информации.

При наличии достаточного числа пустых блоков выделяется новый блок, на который и копируются переданные ОС для записи данные.

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

Physics Faculty, Electronic Computing Devices & Systems, 6th semester,2011 Dr. Mokhovikov Alexander Yurievich

Алгоритм удаления

Операция удаления данных тоже напрямую зависит от объема и размещения удаляемых данных. Если вся информация, записана в одном блоке или в группе блоков, полностью занимая их, то блок/блоки попросту очищаются и помечаются как пустые и готовые для последующей записи с максимально возможной скоростью.

Но данный идеальный случай встречается не всегда.

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

Physics Faculty, Electronic Computing Devices & Systems, 6th semester,2011 Dr. Mokhovikov Alexander Yurievich

Адресация

После выборки адреса блока и страницы, данные могут быть физически записаны в энергонезависимую память.

Как говорилось ранее, страницы, в свою очередь, сгруппированы в блоки (blocks)

Для адресации страницы используется специальная таблица LBA->NAND. В ней каждому логическому адресу LBA ставится в соответствие физическая координата текущего местоположения данных, т. е. номера блока и страницы в нем.

Physics Faculty, Electronic Computing Devices & Systems, 6th semester,2011 Dr. Mokhovikov Alexander Yurievich

Адресация

Биты готовой к записи ячейки всегда хранят значение 1 (низкий заряд). Переключение 1 в 0 является штатной операцией над индивидуальными ячейками. А вот переключение из 0 в 1 в flash NAND возможно только стиранием блока целиком.

После этой операции все ячейки опять переводятся в состояние 1, а все страницы блока получают статус Erased. Первая запись данных в страницу изменяет ее статус на Valid.

Любая повторная операция модификации переключает состояние страницы на Invalid, а измененная информация записывается в какую-либо другую Erased страницу, переводя ее в состояние Valid и, естественно, меняя ссылку на нее в таблице LBA- >NAND.

Physics Faculty, Electronic Computing Devices & Systems, 6th semester,2011 Dr. Mokhovikov Alexander Yurievich

Адресация

Когда все страницы блока имеют статус Invalid, она снова очищается. Однако даже несколько страниц в состоянии Valid не позволят очистить блок, что приводит к внутренней фрагментации и не оптимальной утилизации ресурсов. Поэтому если в нескольких блоках страниц со статусом Erased уже не осталось, а количество Valid страниц стало меньше заданного уровня, содержимое этих блоков загружается в кэш, после чего все Valid данные консолидируются и вместе записываются в один из уже очищенных блоков. Ссылки на LBA перестраиваются, а освободившиеся блоки очищаются. Контроллер старается делать такую оптимизацию в периоды пониженной нагрузки.

Physics Faculty, Electronic Computing Devices & Systems, 6th semester,2011 Dr. Mokhovikov Alexander Yurievich

Соседние файлы в папке Презентации ЭВУ в пдф