Flash memory - память как молния
Стремительному появлению в нашей повседневной жизни запоминающих устройства принципиального нового вида предшествовали десятилетия незаметной кропотливой работы
Моя старшая сестра Ута сказала мне однажды, что в кристаллике, вделанном в этот перстень, спрятали голос дедушки - когда тот ещё был жив, молод и любил бабушку. Это меня удивило до глубины души. Однажды за игрой я незаметно приложил ухо к перстню, но ничего не услышал и пожаловался бабушке, что Ута сказала неправду.
Станислав Лем, «Магелланово облако» (1955)
В середине 1980-х годов появились первые образцы компьютерной памяти нового образца - не только энергонезависимой, то есть сохранявшей данные при отключении источника питания, но и позволявшей эти данные читать и писать относительно быстро, сразу целыми блоками. Термин «flash-память» (flash - вспышка) придумал в июне 1984 года Сёдзи Ариизуми (Shoji Ariizumi), сотрудник корпорации Toshiba, уже после того, как его руководитель доктор Фудзи Масуока (Fujio Masuoka) послал сообщение о новом изобретении на конференцию разработчиков электронных приборов IEDM в Сан-Франциско.
На потребительский рынок flash-память вывела Intel, и только спустя четыре года, в 1988 году - слишком велики оказались трудности внедрения в производство. На тот момент чип емкостью в 32 Кбайта стоил примерно $20. В середине 1990-х автор этих строк покупал за ту же цену микросхемы емкостью уже порядка мегабайта. Но настоящая революция произошла за последовавшее десятилетие: сейчас никого не удивишь емкостью карманной «флешки» в 32 и даже 64 Гбайта, а цена в пересчете на единицу хранения информации с момента появления первых образцов снизилась примерно на пять порядков (те же $20 сейчас просят за 2-4 Гбайта емкости).
Именно такое удешевление flash-памяти в совокупности с увеличением её объема в значительной степени обусловило, например, революцию в области цифровой фотографии. Что толку в самой качественной матрице, если снимок больших размеров потом приходится минутами писать на магнитную кассету или пусть и значительно быстрее, но на дорогой и ненадежный миниатюрный жесткий диск? А «флешку» можно испортить, разве что уронив её в костер: известен случай, когда из утопленной в осенней реке и найденной следующей весной фотокамеры извлекли flash-карту, и спокойно прочли все содержимое.
Вот ещё несколько областей, где прогресс в области flash-памяти сыграл решающую роль. Обострение противостояния между «пиратами» и владельцами авторских прав в музыкальной области в немалой степени обусловлено появлением миниатюрных носителей, вмещающих целую фонотеку. Ещё одна область, где прогресс просто не смог бы состояться без дешевой и надежной flash-памяти, - сотовая связь. SIM-карта, хранящая не только все секретные данные об абоненте, но и вмещающая телефонную книгу, и иногда кое-что ещё - по сути та же «флешка».
Секрет двойного затвора
Генетически flash-память происходит от обычной оперативной компьютерной памяти (ОЗУ - расшифровку некоторых терминов и сокращений см. во врезке), хранящей информацию в виде электрических зарядов. Её ячейка состоит фактически из всего двух элементов - конденсатора и транзистора. Конденсатор хранит заряды, а транзистор управляет процессом записи и чтения.
Но как не изолируй конденсатор в такой системе, заряды из него будут утекать, причем довольно быстро. То есть информация не только не сохранится при выключении питания, но даже если такую память просто оставить в покое в работающей системе, она все «забудет» уже через доли секунды.
Куда лучше ведет себя статическая память (SRAM), которую регенерировать не приходится - пока есть питание, информация никуда не денется, и она может работать даже быстрее динамической. Но у нее есть другой недостаток - она куда сложнее по устройству (информация хранится на триггерных ячейках, включающих в себя порядка десятка и более транзисторов), а значит, намного дороже и менее емкая, потому что ячейка занимает большую площадь на кристалле. Ну и, конечно, она тоже ничего не сохранит при выключении питания. На практике SRAM применяют, например, в устройстве процессорных регистров и кэша - небольших областей памяти, куда процессор оперативно обращается за данными для текущей операции, так оказывается быстрее, чем постоянно искать их в массиве основной памяти.
Фирма Dallas Semiconductor (ныне - подразделение фирмы Maxim) в свое время придумала, как приспособить удобную во многих отношениях SRAM к долговременному хранению информации: она стала встраивать в каждую микросхему литиевую батарейку. Такой способ гарантировал сохранение информации как минимум лет на десять. Но понятно, что способ этот недешевый, принципиально ограничен по срокам, и другой принципиальный недостаток SRAM - малая удельная информационная емкость в расчете на один чип, - никуда не делся.
Потому с самого начала разработчики пошли по другому пути. Исторически первой разновидностью чисто электронной энергонезависимой памяти была простая и дешевая OTPROM, которая основана на принципе «пережигаемых» перемычек. Память состояла из строк и столбцов, которые сначала соединялись перемычками (что соответствовало всем «логическим нулям» во всех ячейках). Затем подачей повышенного напряжения перемычки в нужных местах «пережигались», и такое состояние считалось за «логическую единицу». Однократно программируемая память, например, широко употреблялась для хранения базовых программ, необходимых при запуске компьютера - BIOS, пока её не вытеснила более удобная flash-память. Недостаток дешевой и надежной OTPROM очевиден: перезаписать однажды записанную информацию уже невозможно.
В 1967 году в знаменитых «Лабораториях Белла» (Bell Labs) был построен первый образец EPROM - энергонезависимой памяти, которую можно было неоднократно перепрограммировать, стирая информацию лучом в ультрафиолетовом или рентгеновском диапазоне через специальное окошко. Спустя четыре года появились и коммерческие образцы. Идея оказалась очень плодотворной: такую память выпускали ещё лет двадцать пять, вплоть до середины 1990-х. В нашей стране устройства такого типа называли УФ ППЗУ. Но обращаться с ними было не слишком удобно - специальное стирание занимало много времени (и не дай бог было недодержать кристалл под лампой!), зато память могла постепенно деградировать на обычном свету, отчего в процессе эксплуатации окошко приходилось заклеивать.
В 1974 году в Intel пришел некто Джордж Перлегос (George Perlegos), грек по происхождению, и будущий основатель компании Atmel. Под его непосредственном руководством была разработана микросхема EEPROM под названием 2816 - электрически перепрограммируемое ПЗУ. Это и был прообраз сегодняшней flash-памяти. Основой EEPROM стал транзистор с плавающим затвором, изобретенный в той же Intel Доном Фрохманом (Don Frohman). И в последующем, несмотря на смены технологических эпох, принцип устройства ячейки энергонезависимой памяти остался неизменным.
С чего это так быстро утекают заряды с конденсатора в динамической памяти? Неужели нельзя изолировать его получше? Можно, конечно, но как потом считывать и записывать информацию? Ведь основным фактором утечки в DRAM служит тот самый транзистор, через который информация и записывается и читается. Вот Дон Фрохман и придумал, как это препятствие обойти.
Если исключить из нее то, что обозначено надписью «плавающий затвор», то мы получим самый обычный полевой транзистор. Наличие плавающего затвора, который, собственно, и хранит информацию, меняет картину кардинально. Если на плавающем затворе нет зарядов, то он никак не влияет на работу транзистора: при наличии на его управляющем затворе соответствующего напряжения, транзистор откроется, и от истока к стоку потечет ток (это считается состоянием «логической единицы»). Такое состояние характерно для чистой flash-памяти, в которую ещё ни разу ничего не записывали.
Наоборот, если на плавающем затворе имеются заряды (о том, как их там разместить, пойдет речь дальше), то транзистор окажется запертым независимо от напряжения на управляющем затворе. Это - состояние «логического нуля». Важно тут то, что плавающий затвор как бы «купается» в толще изолятора, и однажды размещенные заряды на нем уже никуда деваться не смогут. В теории flash-память может хранить информацию неограниченно долго, а на практике производители гарантируют десятилетия.
Система нипель
Так как же все же размещать и удалять заряды? Тут мы вступаем в область загадочных квантово-механических эффектов. Согласно им, подвижные носители заряда, электроны, могут «просачиваться» через любой барьер (в том числе - и через изолятор). Правда, делают они это с тем меньшей вероятностью, чем ниже их энергия, и чем выше и шире этот барьер. По-научному этот эффект называется квантовым туннелированием. На практике толщина изолирующего слоя вокруг плавающего затвора составляет единицы нанометров, а повышенную энергию электронам можно сообщить, если подать в нужный момент повышенное напряжение.
Свободные электроны в проводнике движутся с относительно высокими энергиями. Из-за этого потенциальный барьер нанометровой толщины (преодолеть который согласно законам классической электродинамики они не могут) они проскакивают с довольно высокой вероятностью. Но на этом квантово-механическом скачке они теряют бóльшую часть своей энергии и, попав на плавающий затвор, оказываются в связанном состоянии, причем на очень низком энергетическом уровне. Вероятность «просочиться» через тот же барьер назад без посторонней помощи для них крайне низка.
Нельзя сказать, что путь к современным «флешкам» был простым. Первые микросхемы EEPROM требовали нескольких источников питания разной полярности, и, главное, работали при записи страшно медленно, требуя при этом довольно больших токов. Количество процедур записи было ограничено несколькими сотнями, потом ячейки необратимо деградировали. Для ранних образцов таких микросхем даже приходилось создавать специальную карту «битых» ячеек, причем прямо сразу в начале эксплуатации.
Со временем трудности были преодолены и вот мы имеем емкие и недорогие устройства памяти, которые работают по крайней мере не медленнее жестких дисков, но куда меньше размерами, надежнее и удобнее в обращении. Жесткие диски пока ещё держатся за счет дешевизны в расчете на единицу сохраняемой информации, и огромной емкости, которая уже составляет терабайты. Но уже на подходе - иные принципы записи и хранения информации, которые, возможно, отправят вообще всю иерархию разновидностей компьютерной памяти, от DRAM до жестких дисков и «флешек», разом на свалку истории. Речь, разумеется, о случившемся год назад первом удачном физическом воплощении давней идеи мемристора, но это уже совсем другая история.
Некоторые термины и аббревиатуры, относящиеся к электронной памяти
RAM (Random Access Memory) - «память с произвольным доступом». На самом деле это любая память, содержимое которой уничтожается при выключении питания (в чистом виде, без приставок, сокращение RAM часто применяется для обозначения основной памяти ПК). Русское наименование «оперативное запоминающее устройство» (ОЗУ) следует признать более соответствующим смыслу, так как понятию «с произвольным доступом» соответствуют и многие типы EPROM (см. далее).
ROM (Read-Only Memory) - «память только для чтения». Русское название «постоянное запоминающее устройство» (ПЗУ) более соответствует смыслу, так термин относится ко всем видам энергонезависимой памяти, не только к тем, что для «чтения» (то есть и к перезаписываемым тоже - CD-ROM или EEPROM). В чистом виде сокращение ROM употребляется редко.
DRAM (Dynamic RAM) - «динамическая RAM». Так называют электронную память, которая требует постоянного восстановления (регенерации) своего содержимого даже при включенном питании. По-русски - динамическое ОЗУ или ЗУПВ («запоминающее устройство с произвольной выборкой»). Хотя последнее есть фактически перевод более общего термина RAM, но применяется обычно к динамической её разновидности.
SRAM (Static RAM) - «статическая RAM», статическое ОЗУ. Энергозависимая память, построенная на триггерах, и потому в отличие от DRAM регенерации не требующая, но намного более дорогая и менее емкая.
SDRAM (Synchronous DRAM) - «синхронная DRAM». Отличается от обычной наличием специального логического блока и двухбанковой структурой. Все операции записи/чтения синхронизированы с основным тактовым сигналом. Практически вся оперативная память в современных ПК относится именно к этой разновидности.
RDRAM (Rambus Direct RAM) - разновидность DRAM от компании Rambus.
VRAM (Video RAM) - «видео RAM», то есть попросту «видеопамять». Специально разработанная для использования в видеоадаптерах разновидность DRAM с двухпортовой организацией (то есть с возможностью обращения от двух разных устройств одновременно).
WRAM (Windows RAM) - не поверите, но есть и такая разновидность! На самом деле это просто торговая марка одной из разновидностей VRAM, якобы оптимизированной для работы в Windows.
NRAM (Nano RAM) - экспериментальная разновидность энергонезависимой памяти на основе углеродных нанотрубок.
FRAM, FeRAM (Ferroelectric RAM) - экспериментальная разновидность энергонезависимой памяти на основе ферроэлектрического принципа хранения информации.
MRAM (Magnetic RAM) - экспериментальная разновидность скоростной энергонезависимой памяти на основе магниторезистивного эффекта.
NVRAM (Nonvolatile RAM) - «энергонезависимая RAM» (от латинского volatilis -летучий). В принципе охватывает все разновидности EPROM и EEPROM (в том числе и Flash-память, см. далее). NVRAM - более корректный термин, чем все остальные, так как «памятью только для чтения» ни одна из современных разновидностей ROM, строго говоря, не является. Иногда NVRAM употребляют в узком смысле для обозначения специальной разновидности SRAM со встроенной прямо в микросхему литиевой батарейкой (до самого последнего времени такие выпускалась фирмой Dallas Semiconductor, ныне - подразделением Maxim).
OTPROM (One Time Programmable ROM) - «однократно программируемое ПЗУ».
PROM (Programmable ROM) - «программируемое ПЗУ» (ППЗУ). В чистом виде, без приставок, обычно относят к OTPROM. К PROM также относят такую разновидность, как «масочное ПЗУ» - вариант OTPROM, который программируется не самим пользователем, а прямо на фабрике в процесс изготовления.
EPROM (Erasable Programmable ROM) - «стираемая/программируемая ROM». По-русски иногда называют ПППЗУ («перепрограммируемое ПЗУ»). Иногда употребляется, как синоним UV-EPROM.
EEPROM (Electrically Erasable Programmable ROM) - «электрически стираемое перепрограммируемое ПЗУ», ЭСППЗУ.
UV-EPROM (Ultra-Violet EPROM) - «ультрафиолетовая EPROM», УФППЗУ. Исторически первая коммерческая разновидность EPROM, операция стирания в которой производится ультрафиолетом через специальное окошко.
Flash memory (flash - «вспышка», «молния») - первоначально термин придуман для обозначения прогрессивной разновидности EEPROM, в которой чтение/запись для ускорения процесса производятся сразу целыми блоками. Позднее (когда медленная EEPROM почти исчезла из обращения) стал фактическим синонимом EEPROM и теперь обозначает любые разновидности ЭСППЗУ.
Юрий Ревич vokrugsveta
Источник: Newsland
blog comments powered by Disqus