16 апреля 2019 г. | Автор: Александр Ким
В твердой памяти: Как устроен жесткий диск

Начало 1990‑x — время бурного роста компьютерной индустрии: десятки производителей, жесточайшая конкуренция, умопомрачительные концепты. Аппаратную гонку подстёгивал бум компьютерных игр, свежие версии которых требовали всё более мощных комплектующих. Именно тогда зародилась технология, без которой современные компьютеры просто немыслимы.

Эта статья была опубликована в журнале OYLA №3(43). Оформить подписку на печатную и онлайн-версию можно здесь.

​Медленные чудеса

Сегодня картина гораздо скучнее: в каждой отрасли есть пара гигантов, процессорная гонка замедлилась, экономичность стала важнее производительности. Поэтому острой необходимости в регулярной модернизации компьютерного парка не наблюдается — в отличие от смартфонов, флагманские модели которых стоят дороже свежего навороченного десктопа. Да и пользователи нынче не бросаются на каждую новинку, а спокойно работают на «зрелой», прошедшей испытание временем технике, по возможности «расшивая» узкие места.

Дисковый накопитель IBM 350 (ёмкостью 5 МБ) отправляется к заказчику, 1956 год

А таким до недавних пор был жёсткий диск — устройство долговременного хранения данных, недавно справившее 65‑ю годовщину. 10 февраля 1954 года к прототипу диска IBM 350 ёмкостью аж 5 мегабайт подключили перфоратор и записали фразу: «This has been a day of solid achievement» («Это был день серьёзного успеха»). Много воды утекло с тех пор, винчестеры превратились в чудо электромеханики, создаваемое при помощи самых передовых технологий, и стали неотъемлемой частью любого компьютера.

При этом даже новейший винчестер работает на архаичной технологии —крутит диски, над которыми взад-вперёд снуют коромысла с магнитными головками. Однако механика, какой бы совершенной она ни была, по скорости и надёжности проигрывает электронике. Приведём наглядный пример: механические хронометры от именитых швейцарских фирм стоимостью в автомобиль и простые кварцевые часы по цене 5 долларов показывают одно и то же время, причём погрешность швейцарских хронометров колеблется в пределах 20 секунд в сутки, а у «кварцев» подобный допуск не превышает те же 20 секунд… в месяц!

Перфокарты в хранилище Федерального центра записей США, 1959 год. Все данные, находящиеся здесь, могут поместиться на одну флешку.

Как бы ни старались инженеры-разработчики жёстких дисков, выжать что-то радикально новое из технологии полувековой давности им вряд ли удастся. Но очевидные улучшения были сделаны: стало больше «блинов» и магнитных головок, выросла скорость вращения и т. д. В результате жёсткие диски имеют два больших преимущества: стоимость единицы хранения информации и ресурс. Но и по этим параметрам их скоро обойдёт новичок — твердотельный носитель.

​Как хранить нули и единицы?

Ресурс у традиционных винчестеров практически неограничен: магнитному домену всё равно, в каком положении находиться, то есть ячейку с данными можно перемагничивать сколько угодно раз.

С твердотельными накопителями ситуация более сложная. Попробуем разобраться. Как мы знаем, компьютер работает с данными, представленными в двоичном виде. Это значит, что каждая ячейка памяти хранит и выдаёт по запросу строго определённое значение.

Простейшим электрическим устройством, в котором можно реализовать этот принцип, является конденсатор: заряжен — единичка, нет — ноль. К тому же конденсатор может хранить заряд (при условии его исправности) довольно долго, пока его не разрядят, замкнув обкладки. Но чтобы сделать из него ячейку памяти, нужна огромная схема, основная сложность которой заключается в считывании информации. Поэтому даже в первых устройствах хранения данных, таких как трубка Уильямса или память на магнитных сердечниках, конденсаторам места не нашлось.

Зато впору пришлись триггеры — сравнительно простые электронные устройства, широко применяющиеся в радиотехнике и автоматике. Благодаря транзисторам они способны сохранять заданное состояние до тех пор, пока его не сменят по команде. И когда микроэлектроника из стадии экспериментов вышла на магистраль массового производства, триггеры стали неотъемлемой частью интегральных схем.

Принцип работы конденсатора

Между металлическими обкладками находится небольшой толщины диэлектрик, благодаря чему конденсатор и накапливает заряд. Положительные и отрицательные заряды на обкладках удерживают друг друга, взаимодействуя через тонкий непроводящий слой.

Схема транзистора с плавающим затвором

Плавающий затвор транзистора — это элементарная ячейка памяти, куда мы можем поместить заряд и он сохранится там, даже если исчезнет внешнее напряжение.

Перенос заряда на плавающий затвор происходит за счёт квантового туннелирования через слой диэлектрика.

Удаление заряда с плавающего затвора происходит за счёт туннелирования Фаулера — Нордхейма: если подать повышенное напряжение на исток и затвор (на исток «плюс», на затвор «минус), то электрическое поле вытолк­нет электроны в направлении изолирующей подложки, придав им дополнительную энергию. А дальше они исчезнут, чтобы возникнуть уже с другой стороны диэлектрика!

​Быстро… и сложно

Итак, с ячейкой, способной сохранять нули и единицы, мы разобрались. Победа? Успех хотя бы? Не совсем, возникла следующая проблема: расход транзисторов на одну запоминающую ячейку оказался довольно велик, поэтому у микросхем, рассчитанных на хранение больших объёмов данных, быстро возникает предел плотности. Он заключается в невозможности увеличения числа элементов на единицу площади кристалла без смены технологии производства. Новым импульсом стало изобретение в 1967 году полевых транзисторов с плавающим затвором, ознаменовавшее переход к идеологии «один бит — один элемент памяти». Вообще, появление полевых транзисторов можно без преувеличения назвать революцией, сравнимой по значимости с изобретением самих транзисторов.

В полевом транзисторе сопротивление токопроводящего канала определяется не током, как у традиционных устройств, а электрическим полем заряда (или потенциалом) на затворе. Таким образом, схемы на полевых транзисторах не нуждаются в управляющих токах и уже по этой причине экономичней традиционных.

Теперь о роли затвора. Помните, мы говорили о конденсаторах? Так вот, если затвор дополнить ещё одной полупровод­никовой пластиной (так называемым плавающим затвором), способной накапливать заряд, то полевой транзистор превращается в прекрасную ячейку памяти, сам принцип действия которой как нельзя лучше подходит для определения состояния затвора. Идёт ток через полевой транзистор — значит, на затворе нет заряда («ноль»); нет тока — наоборот, то есть в ячейке-транзисторе «единица». И всё это без изменения данных!

​На пробой!

Как менялся объём флеш-памяти в 2004—2013 годах. На графике показаны максимальные возможные объёмы данных для кристаллов, использующих однобитные (SLC) или двухбитные (MLC) ячейки.

Другая проблема возникает, когда эти данные нужно всё-таки изменить, ведь полноценный накопитель не только хранит информацию, но и манипулирует ею (стирает, записывает, перезаписывает и т. д.). А этот процесс связан с изменением заряда плавающего затвора — эффект, невозможный в обычной физике. Почему? Всё дело в покрывающем затвор диэлектрике — веществе, через которое ток не идёт. Но под действием сильного электрического поля поток электронов способен всё-таки «прошивать» тонкие слои изолирующих материалов — происходит так называемое туннелирование. Таким образом, при каждом изменении заряда затвора мы сталкиваемся с крайне нежелательным в обычной жизни явлением — пробоем диэлектрика. Инженерам-разработчикам фирмы Toshiba Фудзио Масуоке и Сёдзи Ариидзуми всё это напомнило фотовспышку — по-английски flash. Этим словом они и назвали свою знаменитую разработку 1984 года. Вы, конечно, догадались, что речь идёт о флешках.

Центральное место во флеш-накопителях занимает двумерный массив из проводников: на пересечении строк и столбцов установлено по одному транзистору.

Классическая матричная конструкция флеш-памяти. На пересечении строк и столбцов установлено по одной ячейке памяти — транзистору. При этом проводник строк подключён к стоку транзистора, а столбцов — ко второму затвору. Исток подключён к общей для всех подложке

Но даром ничего не даётся: тонкий слой изолятора при прохождении тока деградирует, движущиеся электроны нарушают его структуру и постепенно превращают в проводник. Этим объясняется небольшой ресурс перезаписи ячеек памяти — всего несколько тысяч циклов. Проблема усугубляется тем, что большинство современных флеш-накопителей использует не один плавающий затвор (SLC — single level cell), а два и более (MLC и TLC — multi- и triple level cell). Они способны хранить два, три (в экспериментальных устройствах и четыре) бита. 

Но за такую плотность приходится платить повышенным временем доступа и радикальным снижением ресурса перезаписи.

​Промежуточная станция

Именно ресурс перезаписи остаётся ахиллесовой пятой флеш-памяти, причём проблема эта неустранима в принципе. Фактически развитие индустрии твердотельных накопителей идёт по двум направлениям: растёт их номинальная ёмкость («многоэтажные» ячейки, организация структуры матриц — плоские NOR и трёхмерные NAND, пакетное устройство микросхем, переход на технологию CTF и т. д.), всё более сложным становится электронное управление. Контроллеры, управляющие работой матрицы (флешки, карты памяти, SSD-накопители), «умнеют» на глазах и уже напоминают специализированные микро-ЭВМ, на лету исправляющие ошибки чтения-записи и регулирующие равномерный износ ячеек. Так что качество, надёжность и быстрота теперь определяются не инженерными решениями, а классом используемого контроллера.

Несмотря на существующие трудности, твердотельные накопители прочно вписались в вычислительную архитектуру и зачастую дарят вторую жизнь старой технике. Что ждёт нас дальше? Вариантов много. Среди них сегнетоэлектрики (FeRAM), магниторезистивные элементы (MRAM), резистивная память (ReRAM). Все они свободны от «проклятия ограниченного ресурса». Кто победит, узнаем уже в ближайшем будущем.