Обновление информации в микросхемах EEPROM – страшно медленный процесс. Во-первых, каждую ячейку требуется сначала стереть – ведь запись, т. е. помещение на плавающий затвор зарядов тем или иным способом, лишь приводит ее в состояние «логического 0», а восстанавливать «логическую 1» приходится отдельно. Во-вторых, из-за большого потребления тока в процессе записи приходится каждую ячейку записывать фактически отдельно, а т. к. этот процесс занимал миллисекунды, то для перезаписи даже сравнительно небольших массивов требовались уже секунды. Правда, чтение из EEPROM – процесс очень быстрый, даже быстрее, чем из обычной компьютерной памяти DRAM.
Термин «flash-память» придумал в июне 1984 года некто Шойи Аризуми (Shoji Ariizumi), сотрудник корпорации Toshiba, уже после того, как его руководитель доктор Фуджио Масуока (р. 1943) послал сообщение о новом, изобретенном им типе энергонезависимой памяти на конференцию разработчиков электронных приборов IEDM в Сан-Франциско. Причем в сообщении Масуоки содержится описание сразу обеих главных современных архитектур flash-памяти: как NOR, так и NAND.
Флэш-память (будем в дальнейшем ее так, по-русски, и называть) отличается от обычной EEPROM тем, что запись (и стирание) в ней производятся целыми блоками, обычно равными классическому размеру сектора на жестком диске – 512 байтов. Это значительно ускоряет процесс записи, но одновременно придает флэш-памяти элементы устройства последовательного доступа, когда для перезаписи одного байта приходится перезаписывать целый блок. Для обычных применений флэш-памяти – в качестве носителей медиаинформации – это небольшой недостаток, к тому же она в этом отношении не отличается от жестких дисков. В такой схеме записи некий массив данных готовится заранее (помещается в специальный временный буфер SRAM, который имеется на том же кристалле, что и основная память), затем все нужные ячейки разом стираются, и разом же в них записывается информация из буфера. В современных типах флэш-памяти скорости чтения и записи практически сравнялись, а емкость отдельных устройств доведена до 32128 Гбайт и даже до 160–250 Гбайт для твердотельных жестких дисков.
Крупнейший недостаток флэш-памяти – ограниченное в сравнении с магнитными носителями или обычной памятью число циклов перезаписи информации, обычно на уровне нескольких десятков тысяч, в крайнем случае сотен тысяч. В жестком диске такой ресурс мог бы исчерпаться за несколько недель или месяцев. Для того чтобы обойти эту проблему, используют метод равномерного распределения записываемой информации по объему карты. В некоторых устройствах, имеющих собственный встроенный контроллер (твердотельные жесткие диски, карты Secure Digital, Compact Flash, USB-накопители), это обеспечивает само устройство, для других были созданы специальные файловые системы: exFAT для Windows и JFFS2 и YAFFS для GNU/Linux.
Наиболее распространены три типа потребительских устройств на основе флэш-памяти: флэш-карточки, флэш-накопители и твердотельные диски. Кратко рассмотрим каждый из типов и их потребительские свойства.
4.2.1. Флэш-карточки
Флэш-карточки существуют во многих разновидностях, из которых последнее время доминирует тип SD (Secure Digital). Названный так за возможность шифрования содержимого (первоначально SD-карты собирались приспособить к распространению медийного контента, вроде кинофильмов), этот тип карт, однако, стал применяться просто как носитель информации во всяческих мобильных устройствах: от сотовых телефонов и MP3-плееров до фотокамер и электронных книг. SD делятся по скоростным характеристикам, и если на карточке указан класс карты (2, 4, 6 и т. д., что означает скорость записи в Мбайт/с), то обычно перед вами медленная старая карта. На современных образцах тип не указывают, потому что они заведомо опережают устаревшую скоростную классификацию. Современные видеокамеры пишут видео при скорости 24 Мбит/сек (3 Мбайт/сек) – это самая скоростная задача в бытовой области (больший поток требует разве что многокадровая автоматическая съемка фотокамер с большой матрицей). Таким образом, для FullHD-видео требуется SD-карта класса не ниже 4, и это требование перекрывают все современные карты.
Карты SDHC (High Capacity – высокой емкости) совместимы с обычными SD «сверху вниз» – устройства, способные работать с SDHC-картами, поддерживают также и SD-карты. SD/SDHC-карты существуют в нескольких типоразмерах: обычные, microSD и miniSD, причем по форм-фактору они не совместимы друг с другом – miniSD короче и несколько уже обычной, а microSD вообще значительно ее мельче, потому без соответствующих переходников их в слот для обычной карты вставить нельзя..