Вопреки бытующему мнению, название Flash применительно к типу памяти переводится не как «вспышка». По одной из версий это слово впервые было использовано в 1989-90 году компанией Toshiba в значении «быстрый, мгновенный» при описании ее новых микросхем. Вообще же, первопроходцем в этой области была Intel, представившая в 1988 году флэш-память с архитектурой NOR. Годом позже Toshiba разработала архитектуру NAND, которая и сегодня используется наряду с той же NOR в микросхемах флэш. Собственно, на сегодняшний день это два различных вида памяти, имеющие в чем-то схожую технологию производства. В этой статье мы попытаемся понять их устройство, принцип работы, а также рассмотрим различные варианты практического использования.
NOR
Поскольку память с архитектурой NOR считается первой представительницей семейства Flash, с нее и начнем. Схема логического элемента, собственно, давшего ей название (NOR Not OR в булевой математике обозначает отрицание «ИЛИ»), приведена на рисунке 1 (справа). С ее помощью осуществляется преобразование входных напряжений в выходные, соответствующие «0» и «1». Эти преобразования необходимы, потому что для чтения/записи данных в ячейки памяти используются различные напряжения. Схема ячейки приведена на рисунке 2. Она характерна для большинства флэш-чипов и представляет собой транзистор с двумя изолированными затворами управляющим (control) и плавающим (floating). Важной особенностью последнего является способность удерживать электроны, то есть заряд. Также в ячейке имеются так называемые «сток» и «исток». При программировании между ними под воздействием положительного поля на управляющем затворе создается канал поток электронов. Некоторые из электронов благодаря наличию большей энергии преодолевают слой изолятора и попадают на плавающий затвор. На нем они могут храниться в течение нескольких лет. Определенный заряд на плавающем затворе соответствует логической единице, а все, что больше него, нулю. При чтении эти состояния распознаются путем измерения порогового напряжения транзистора. Для стирания же информации на управляющий затвор подается высокое отрицательное напряжение, и электроны с плавающего затвора переходят (туннелируют) на исток. В технологиях различных производителей этот принцип работы может отличаться по способу подачи тока и чтению данных из ячейки.
Хочу также обратить ваше внимание на то, что в структуре флэш-памяти для хранения 1 бита информации задействуется только один элемент (транзистор), в то время как в энергозависимых типах памяти для этого требуется несколько транзисторов и конденсатор. Это позволяет существенно уменьшить размеры выпускаемых микросхем, упростить технологический процесс, а следовательно, и снизить себестоимость.
Но и один бит, оказывается, не предел. Intel уже выпускает память StrataFlash, каждая ячейка которой может хранить по 2 бита информации. Кроме того, существуют пробные образцы с 4-битными ячейками! В такой памяти используется технология многоуровневых ячеек. Они имеют обычную структуру. Отличие заключается в том, что их заряд делится на несколько уровней, каждому из которых в соответствие ставится определенная комбинация бит. Теоретически прочитать/записать можно и более 4-х бит, однако на практике возникают проблемы с устранением шумов и с постепенной утечкой электронов при продолжительном хранении.
Вообще же, для ячеек существующих на сегодняшний день микросхем памяти характерно время хранения информации, измеряемое годами, и число циклов чтения/записи от 100 тысяч до нескольких миллионов.
Из недостатков, в частности у флэш-памяти с архитектурой NOR, стоит отметить плохую масштабируемость. То есть нельзя уменьшать площадь чипов путем уменьшения размеров транзисторов. Данная ситуация объясняется способом организации матрицы ячеек: в NOR архитектуре к каждому транзистору надо подвести индивидуальный контакт. Гораздо лучше в этом плане обстоят дела у флэш-памяти с архитектурой NAND.
NAND
Итак, NAND (Not AND в той же булевой математике обозначает отрицание «И»). Отличается такая память от предыдущей разве что логической схемой (рис. 1, слева). Устройство и принцип работы ячеек у нее такой же, как и у NOR. Хотя, кроме логики, все-таки есть еще одна важна отличительная особенность архитектура размещения ячеек и их контактов. В отличие от вышеописанного случая, в NAND имеется контактная матрица, в пересечениях строк и столбцов которой располагаются транзисторы (рис. 3). Это сравнимо с пассивной матрицей в дисплеях :-) (а NOR же можно соотнести с активной TFT). В случае с памятью такая организация несколько лучше площадь микросхемы можно значительно уменьшить за счет размеров ячеек.
Недостатки, куда уж без них, заключаются в более низкой, по сравнению с NOR, скорости работы в операциях побайтового произвольного доступа. И все же, как бы там ни было, NOR и NAND на сегодняшний день выпускаются «на равных» и практически не конкурируют между собой, потому как в силу своих особенностей находят применение в разных областях хранения данных. Об этом и пойдет речь далее...
Где нужна память…
Сфера применения какого-либо типа флэш-памяти зависит, в первую очередь, от его скоростных показателей и надежности хранения информации. Адресное пространство NOR-памяти позволяет работать с отдельными байтами или словами (2 байта). В NAND ячейки группируются в небольшие блоки (по аналогии с кластером жесткого диска). Из этого следует, что при последовательном чтении и записи преимущество в скорости будет у NAND. Однако с другой стороны, NAND значительно проигрывает в операциях с произвольным доступом и не позволяет напрямую работать с байтами информации. К примеру, для изменения одного байта требуется:
считать в буфер блок информации, в котором байт находится;
изменить в буфере нужный байт;
записать блок с измененным байтом обратно.
Да, если еще ко времени выполнения перечисленных операций прибавить задержки на выборку блока и на доступ, то получим отнюдь неконкурентоспособные с NOR показатели (отмечу, что именно для случая побайтовой записи). Другое дело, последовательная запись/чтение здесь NAND, наоборот, показывает значительно более высокие скоростные характеристики. Именно поэтому, а также благодаря возможности увеличения объема памяти без увеличения размеров микросхемы, NAND-флэш нашел применение в устройствах хранения и переноса больших объемов информации. Наиболее распространенные сейчас устройства, основанные на этом типе памяти, это флэш-брелоки и карты памяти.
Что касается NOR-флэша. Чипы с такой организацией используются для хранения программного кода (BIOS, RAM карманных компьютеров, мобилок и т.п.). Они обеспечивают требуемый для таких случаев уровень надежности хранения информации и более гибкие возможности по работе с ней.
Примеры практического применения
За последние два года флэш-память значительно подешевела. Связано это с разработкой новых технологических процессов и последующим их интенсивным освоением большим количеством китайцев :-). Судя по ассортименту устройств с флэш-памятью, редкий китаец сейчас не занимается ее производством. Фирма NONAME тоже не осталась в стороне. Да, устройства таких производителей дешевле, но и контроль брака у них соответствующий. Причем здесь речь идет не столько о качестве чипов, сколько о качестве контроллеров и другой сопутствующей электроники (как, к примеру, во флэш-брелоках). Так автору статьи приходилось наблюдать, как noname-флэш-брелоки, вопреки заявленной «бездрайверной» совместимости c Win Me и 2000, распознавались этими ОС как USB-концентраторы и начинали работать только после принудительной установки драйверов (а вот в WinXP все работало нормально).
Кроме того, не известно, как такие устройства контролируют равномерность износа ячеек. Приведу такой редкий, но имеющий место пример: допустим, у нас есть брелок с 32 Мб, из которых 30 Мб заняты, а на свободное место постоянно что-то записывается и удаляется. Получается, что одни ячейки простаивают, а другие интенсивно исчерпывают свой ресурс (около миллиона циклов), что приводит к сокращению срока службы памяти. В фирменных же устройствах применяются специальные алгоритмы коррекции «бэдов» (как и в случае с HDD, в таблице размещения файлов они отмечаются как занятые), позволяющие, помимо всего прочего, следить за равномерностью использования свободных ячеек. Да, такие вот пироги с памятью. Ну ладно, как говорят истинные шотландцы, не время еще играть запрещенные песни на запрещенных волынках на практике, кроме драйверных неприятностей, о других проблемах с подобными носителями информации слышать не доводилось.
Идем далее. Итак, в каком же виде флэш-память имеется в продаже? Начнем с упоминавшихся уже флэш-брелоков (рис. 4). По сути, это «кусочек» памяти, с помощью которого можно быстро переносить информацию с компьютера на компьютер. Существующие модели имеют объем от 16 Мб до 4 Гб. Они легкие, компактные, имеют хороший дизайн, не нуждаются в источниках питания, совместимы с распространенными ОС (Windows, MacOS, Linux), плюс ко всему, в связи с отсутствием движущихся частей и механики очень надежны. Есть модели с поддержкой USB 1.1 и USB 2.0. В первом случае скорость чтения порядка 1 Мб/с, записи от 500 до 900 Кб/с. Использование же USB 2.0 не приводит к ожидаемым 400 Мбит/с (50 Мб/с) скорость записи не превышает 1 Мб/с, хотя скорость чтения может достигать 5 Мб/с. Наиболее известные производители флэш-брелоков Transcend, Kingmax, M-Systems (DiskOnKey), Canyon, Samsung.
Кроме брелоков, есть еще флэш-карты (рис. 5), которые на данный момент по большей части используются в качестве устройства памяти в цифровых фотоаппаратах и т.п. и обладают всеми характеристиками, присущими флэш-памяти. То есть они энергонезависимы и могут хранить информацию в течение нескольких лет. Одна такая карточка представляет собой тонкую пластинку, на которой содержится чип флэш-памяти с выведенными наружу контактами. Для работы с ней понадобится специальный кардридер (рис. 6), подключаемый к USB. По сути, кардридер можно сравнить с дисководом, а карточки с дискетами. Однако объем их гораздо больше до 4 Гб! В отличие от брелоков, карточки бывают разных стандартов (Multimedia Card, CompactFlash (type I, II), SmartMedia, SecureDigitall, xD-Picture Card и MemoryStick). Связанные с этим неудобства сводятся на нет при покупке универсального кардридера, умеющего работать с картами различных стандартов.
Кстати, встречаются и карточки с собственным контроллером ATA CompactFlash (рис. 7), которые можно подключать через стандартный IDE-интерфейс, но они не получили такого широкого распространения.
Из недостатков обычных флэш-карт (без контроллера) стоит отметить их хрупкость. К тому же при загрязнении или окислении контактов возможна некорректная работа, а разряд статического электричества вообще способен вывести карту из строя. Благодаря своей компактности, большому объему и отсутствию механики, карты памяти используются в цифровых фотокамерах и других подобных девайсах. В качестве средства переноса информации все же более уместны флэш-брелоки.
Мы рассмотрели самые распространенные варианты практического использования микросхем флэш NAND о NOR особо рассказывать нечего, так как это бойцы невидимого фронта. Они есть у вас на материнской плате или, к примеру, в мобильном телефоне, а также в других электронных устройствах. Вот, собственно и все.
Да, чуть не забыл. В завершении просто не могу не упомянуть еще об одном недавно появившемся в продаже интересном флэш-устройстве. Итак, часы и флэш-брелок в одном корпусе GEMBIRD F-WATCH (рис. 8). По внешнему виду и размерам они ничем не отличаются от обычных часов, но в то же время могут выступать в качестве устройства хранения и переноса информации. Объем встроенной флэш-памяти от 32 до 256 Мб! Вес такой замечательной вещицы всего 15 грамм, к тому же она имеет очень стильный дизайн и хорошо смотрится на руке. Добавлю также еще, что часы эти ударопрочные, водонепроницаемые, не требуют батареек (встроенный аккумулятор подзаряжается от USB-порта) и сочетают в себе лучшие качества часов и технические параметры флэш-брелока (USB 1.1, чтение 1 Мб/с, запись 800 Кб/с). По-моему, это отличный подарок компьютерщику, да и просто полезная и удобная вещь :-).
Что ж, на этом позвольте окончить повествование. Надеюсь, статья была вам интересна. Выражаю благодарность сотрудникам харьковской фирмы «Смит» за оказанную помощь в написании материала.
Рекомендуем ещё прочитать:
Цвета палитры HP. (№7/230 `2003) Андрей Голота, Инженер Сервисного Центра