Юрий Ревич - Занимательная электроника
Большинство выпускаемых интегральных ЗУ также сложены из таких отдельных однобитных модулей (только в наше время уже значительно большей емкости) и имеют 8, 16, 32 или большее количество параллельных выходов, но бывают кристаллы и с последовательным (побитным) доступом.
В качестве примера можно привести, скажем, ПЗУ с организацией 64Кх16 типа АТ27С1024 фирмы Atmel (рис. 18.6).
Рис. 18.6. Разводка выводов АТ27С1024
Это однократно программируемое КМОП ПЗУ с напряжением питания 5 В и емкостью 1024 Мбит, что составляет 128 Кбайт или 64 К двухбайтных слов. Следует отметить, что в области микросхем памяти сложилась хорошая традиция, когда все они, независимо от производителя и даже технологии, совпадают по выводам, разводка которых зависит только от организации матрицы (даже, как правило, не от объема!) и, соответственно, от применяемого корпуса (в данном случае — DIP-40). Для разных типов (RAM, ROM, EEPROM и т. д.) разводка различается в части выводов, управляющих процессом программирования, но можно спокойно заменять одну микросхему на другую (с той же организацией и, соответственно, в таком же корпусе) без переделки платы.
RAMТрадиционное название энергозависимых типов памяти, как и в случае ROM, следует признать довольно неудачным. RAM значит Random Access Memory, т. е. память с произвольным доступом, или, по-русски — ЗУПВ, запоминающее устройство с произвольной выборкой. Главным же признаком класса является не «произвольная выборка», а то, что при выключении питания память стирается. EEPROM (о которой далее), к примеру, тоже допускает произвольную выборку и при записи, и при чтении. Но так сложилось исторически, и не нам разрушать традиции.
Подавляющее большинство производимых микросхем ЗУПВ относится к динамическому типу. В них информация хранится в виде заряда на конденсаторе, который имеет привычку быстро утекать, и потому такая память требует периодической регенерации (раз в несколько миллисекунд). Зато она дешева (каждая ячейка состоит из одного конденсатора и одного транзистора) и упаковывается с высокой плотностью элементов, поэтому динамическое ЗУ (DRAM) является основным видом компьютерных ОЗУ.
Статическое ОЗУ (SRAM), ячейка которого представляет собой один из вариантов рассмотренных в главе 16 триггеров, устроено сложнее, имеет меньшую плотность упаковки (т. е. при тех же габаритах меньшую емкость) и стоит гораздо дороже. Главное ее преимущество, кроме того, что она не требует регенерации, — высокое быстродействие и отсутствие потребления в статическом режиме. Выпускаются отдельные микросхемы SRAM, как простые (например, UT62256 с организацией 32Кх8), так и довольно «навороченные»: так, микросхема М48Т35 кроме собственно массива памяти (32Кх8) содержит на кристалле часы реального времени, монитор питания и, главное, имеет встроенную литиевую батарейку, которая позволяет сохранять информацию при отключении питания. Но с распространением энергонезависимой flash-памяти, о которой будет рассказано далее, такие применения SRAM почти потеряли актуальность[28], и за ней остались главные области, где она незаменима: это регистры и кэш-память в микропроцессорах, а также ОЗУ данных в микроконтроллерах и ПЛИС.
По счастью, с DRAM нам в схемотехническом плане иметь дело не придется, а SRAM мы увидим только в составе микроконтроллеров. Поэтому рассмотрим подробнее более актуальные для пользователя разновидности ROM.
EPROM, EEPROM и flash-памятьНа заре возникновения памяти, сохраняющей данные при отключении питания (EPROM, Erasable Programmable ROM, стираемая/программируемая ROM, или по-русски — ПИЗУ, программируемое ПЗУ), основным типом ее была память, стираемая ультрафиолетом: UV-EPROM (Ultra-Violet EPROM, УФ-ППЗУ). Причем часто приставку UV опускали, т. к. всем было понятно, что EPROM — это стираемая ультрафиолетом, a ROM (или ПЗУ) просто, без добавлений — это однократно программируемые кристаллы OTP-ROM. Микроконтроллеры с УФ-памятью программ были распространены еще в середине 1990-х. В рабочих образцах устройств с УФ-памятью кварцевое окошечко, через которое осуществлялось стирание, заклеивали кусочком черной липкой ленты, т. к. информация в UV-EPROM медленно разрушается и на солнечном свету.
На рис. 18.7 показано устройство элементарной ячейки EPROM, которая лежит в основе всех современных типов flash-памяти. Если исключить из нее то, что обозначено надписью «плавающий затвор», мы получим самый обычный полевой транзистор — точно такой же входит в ячейку DRAM. Если подать на управляющий затвор такого транзистора положительное напряжение, то он откроется, и через него потечет ток (это считается состоянием логической единицы). На рис. 18.7 вверху изображен такой случай, когда плавающий затвор не оказывает никакого влияния на работу ячейки, — например, такое состояние характерно для чистой flash-памяти, в которую еще ни разу ничего не записывали.
Рис. 18.7. Устройство элементарной ячейки EPROM
Если же мы каким-то образом (каким — поговорим отдельно) ухитримся разместить на плавающем затворе некоторое количество зарядов — свободных электронов, которые показаны на рис. 18.7 внизу в виде темных кружочков со значком минуса, то они будут экранировать действие управляющего электрода, и такой транзистор вообще перестанет проводить ток. Это состояние логического нуля. Поскольку плавающий затвор потому так и называется, что он «плавает» в толще изолятора (двуокиси кремния), то сообщенные ему однажды заряды в покое никуда деваться не могут. И записанная таким образом информация может храниться десятилетиями (до последнего времени производители обычно давали гарантию на 10 лет, но на, практике в обычных условиях время хранения значительно больше).
* * *
Заметки на полях
Строго говоря, в NAND-чипах (о которых далее) логика обязана быть обратной. Если в обычной EPROM запрограммированную ячейку вы не можете открыть подачей считывающего напряжения, то там наоборот — ее нельзя запереть снятием напряжения. Поэтому, в частности, чистая NAND-память выдает все нули, а не единицы, как EPROM. Но это нюансы, которые не меняют суть дела.
* * *
Осталось всего ничего — придумать, как размещать заряды на изолированном от всех внешних влияний плавающем затворе. И не только размещать — ведь иногда память и стирать приходится, потому должен существовать способ их извлекать оттуда. В UV-EPROM слой окисла между плавающим затвором и подложкой был достаточно толстым (если величину 50 нанометров можно охарактеризовать словом «толстый», конечно), и работало все это довольно грубо. При записи на управляющий затвор подавали достаточно высокое положительное напряжение — иногда до 36–40 В, а на сток транзистора — небольшое положительное. При этом электроны, которые двигались от истока к стоку, настолько ускорялись полем управляющего электрода, что просто перепрыгивали барьер в виде изолятора между подложкой и плавающим затвором. Такой процесс называется еще инжекцией горячих электронов.
Ток заряда при этом достигал миллиампера — можете себе представить, каково было потребление всей схемы, если в ней одновременно программировать хотя бы несколько тысяч ячеек. И хотя такой ток требовался на достаточно короткое время (впрочем, с точки зрения быстродействия схемы не такое уж и короткое — миллисекунды), но это было крупнейшим недостатком всех старых образцов EPROM-памяти. Еще хуже другое — и изолятор, и сам плавающий затвор такого издевательства долго не выдерживали и постепенно деградировали, отчего количество циклов стирания/записи было ограничено нескольким сотнями, максимум — тысячами. Во многих образцах flash-памяти более позднего времени даже была предусмотрена специальная схема для хранения карты «битых» ячеек — в точности так, как это делается для жестких дисков. В современных моделях с миллионами ячеек такая карта тоже имеется — однако число циклов стирания/записи теперь возросло до сотен тысяч. Как этого удалось добиться?
Сначала посмотрим, как осуществлялось в этой схеме стирание. В UV-EPROM при облучении ультрафиолетом фотоны высокой энергии сообщали электронам на плавающем затворе достаточный импульс для того, чтобы они «прыгнули» обратно на подложку самостоятельно, без каких-либо электрических воздействий. Первые образцы электрически стираемой памяти (EEPROM, Electrically Erasable Programmable ROM, электрически стираемое перепрограммируемое ПЗУ, ЭСППЗУ) были созданы в компании Intel в конце 1970-х при непосредственном участии будущего основателя Atmel Джорджа Перлегоса. Он использовал квантовый эффект туннелирования Фаулера—Нордхейма. За этим непонятным названием кроется довольно простое по сути (но очень сложное с физической точки зрения) явление — при достаточно тонкой пленке изолятора (ее толщину пришлось уменьшить с 50 до 10 нм) электроны, если их слегка подтолкнуть подачей не слишком высокого напряжения в нужном направлении, могут просачиваться через барьер, не перепрыгивая его. Сам процесс показан на рис. 18.8 вверху (обратите внимание на знак напряжения на управляющем электроде).