Большие флеш-чипы делятся на подстраницы, кратные степени 264 (256 + 8), которые кратны степени двойки, страницам, кратным степени двойки, и блокам, которые являются степень двойки этого. Пустая страница будет читаться как все FF. Можно написать страницу одновременно; наименьшая единица, которую можно написать, это подстраница. Как только подстраница написана, она не может быть переписана, пока весь блок, содержащий ее, не будет удален. Обратите внимание, что на меньших чипах флэш-памяти можно записывать байты страницы по отдельности, при условии, что запись выполняется только в пустые байты, но на многих больших чипах это невозможно. Я думаю, что в чипах нынешнего поколения размер подстраницы составляет 528 байт, размер страницы - 2048 + 64 байта, а размер блока составляет 128 КБ + 4096 байт.
Карта MMC, SD, CompactFlash или другая подобная карта (в основном все, что угодно, кроме SmartMedia) объединяет флэш-чип с процессором для обработки записей в стиле ПК. По сути, происходит следующее: когда записывается сектор, контроллер находит пустую страницу, записывает новую версию этого сектора вместе с 16-ю байтами информации «заголовка», указывающей, что это за сектор, и т. Д. Затем контроллер сохраняет карта расположения всех разных страниц информации.
Карта SmartMedia напрямую предоставляет интерфейс флэш-памяти и использует камеру, кард-ридер или другое устройство, использующее ее для выполнения такого управления данными в соответствии со стандартными методами.
Обратите внимание, что для отслеживания местонахождения всех 4 000 000 страниц на 2-гигабайтной карте потребуется либо 12-16 мегабайт ОЗУ, либо использование 12-16 мегабайт флэш-памяти в качестве вторичной таблицы поиска. Использование последнего подхода будет означать, что каждая запись на флэш-страницу также потребует записи в справочную таблицу. Я совсем не удивлюсь, если такой подход используют медленные флеш-устройства (чтобы отслеживать только около 16 000 «косвенных» страниц).
В любом случае, наиболее важным наблюдением является то, что время записи флэш-памяти непредсказуемо, но обычно вам не нужно беспокоиться об износе флэш-памяти.