Где хранится информация флеш память
Новый Год – приятный, светлый праздник, в который мы все подводим итоги год ушедшего, смотрим с надеждой в будущее и дарим подарки. В этой связи мне хотелось бы поблагодарить всех хабра-жителей за поддержку, помощь и интерес, проявленный к моим статьям (1, 2, 3, 4). Если бы Вы когда-то не поддержали первую, не было и последующих (уже 5 статей)! Спасибо! И, конечно же, я хочу сделать подарок в виде научно-популярно-познавательной статьи о том, как можно весело, интересно и с пользой (как личной, так и общественной) применять довольно суровое на первый взгляд аналитическое оборудование. Сегодня под Новый Год на праздничном операционном столе лежат: USB-Flash накопитель от A-Data и модуль SO-DIMM SDRAM от Samsung.
Теоретическая часть
Постараюсь быть предельно краток, чтобы все мы успели приготовить салат оливье с запасом к праздничному столу, поэтому часть материала будет в виде ссылок: захотите – почитаете на досуге…
Какая память бывает?
На настоящий момент есть множество вариантов хранения информации, какие-то из них требуют постоянной подпитки электричеством (RAM), какие-то навсегда «вшиты» в управляющие микросхемы окружающей нас техники (ROM), а какие-то сочетают в себе качества и тех, и других (Hybrid). К последним, в частности, и принадлежит flash. Вроде бы и энергонезависимая память, но законы физики отменить сложно, и периодически на флешках перезаписывать информацию всё-таки приходится.
Тут можно подробнее ознакомиться с ниже приведённой схемой и сравнением характеристик различных типов «твердотельной памяти». Или тут – жаль, что я был ещё ребёнком в 2003 году, в таком проекте не дали поучаствовать…
Современные типы «твердотельной памяти». Источник
Единственное, что, пожалуй, может объединять все эти типы памяти – более-менее одинаковый принцип работы. Есть некоторая двумерная или трёхмерная матрица, которая заполняется 0 и 1 примерно таким образом и из которой мы впоследствии можем эти значения либо считать, либо заменить, т.е. всё это прямой аналог предшественника – памяти на ферритовых кольцах.
Что такое flash-память и какой она бывает (NOR и NAND)?
Начнём с flash-памяти. Когда-то давно на небезызвестном ixbt была опубликована довольно подробная статья о том, что представляет собой Flash, и какие 2 основных сорта данного вида памяти бывают. В частности, есть NOR (логическое не-или) и NAND (логическое не-и) Flash-память (тут тоже всё очень подробно описано), которые несколько отличаются по своей организации (например, NOR – двумерная, NAND может быть и трехмерной), но имеют один общий элемент – транзистор с плавающим затвором.
Схематическое представление транзистора с плавающим затвором. Источник
Итак, как же это чудо инженерной мысли работает? Вместе с некоторыми физическими формулами это описано тут. Если вкратце, то между управляющим затвором и каналом, по которому ток течёт от истока к стоку, мы помещаем тот самый плавающий затвор, окружённый тонким слоем диэлектрика. В результате, при протекании тока через такой «модифицированный» полевой транзистор часть электронов с высокой энергией туннелируют сквозь диэлектрик и оказываются внутри плавающего затвора. Понятно, что пока электроны туннелировали, бродили внутри этого затвора, они потеряли часть энергии и назад практически вернуться не могут.
NB: «практически» — ключевое слово, ведь без перезаписи, без обновления ячеек хотя бы раз в несколько лет Flash «обнуляется» так же, как оперативная память, после выключения компьютера.
Там же, на ixbt, есть ещё одна статья, которая посвящена возможности записи на один транзистор с плавающим затвором нескольких бит информации, что существенно увеличивает плотность записи.
В случае рассматриваемой нами флешки память будет, естественно, NAND и, скорее всего, multi-level cell (MLC).
Если интересно продолжить знакомиться с технологиями Flash-памяти, то тут представлен взгляд из 2004 года на данную проблематику. А здесь (1, 2, 3) некоторые лабораторные решения для памяти нового поколения. Не думаю, что эти идеи и технологии удалось реализовать на практике, но, может быть, кто-то знает лучше меня?!
Что такое DRAM?
Если кто-то забыл, что такое DRAM, то милости просим сюда.
Опять мы имеем двумерный массив, который необходимо заполнить 0 и 1. Так как на накопление заряда на плавающем затворе уходит довольно продолжительное время, то в случае RAM применяется иное решение. Ячейка памяти состоит из конденсатора и обычного полевого транзистора. При этом сам конденсатор имеет, с одной стороны, примитивное физическое устройство, но, с другой стороны, нетривиально реализован в железе:
Устройство ячейки RAM. Источник
Опять-таки на ixbt есть неплохая статья, посвящённая DRAM и SDRAM памяти. Она, конечно, не так свежа, но принципиальные моменты описаны очень хорошо.
Единственный вопрос, который меня мучает: а может ли DRAM иметь, как flash, multi-level cell? Вроде да, но всё-таки…
Часть практическая
Flash
Те, кто пользуется флешками довольно давно, наверное, уже видели «голый» накопитель, без корпуса. Но я всё-таки кратко упомяну основные части USB-Flash-накопителя:
Основные элементы USB-Flash накопителя: 1. USB-коннектор, 2. контроллер, 3. PCB-многослойная печатная плата, 4. модуль NAND памяти, 5. кварцевый генератор опорной частоты, 6. LED-индикатор (сейчас, правда, на многих флешках его нет), 7. переключатель защиты от записи (аналогично, на многих флешках отсутствует), 8. место для дополнительной микросхемы памяти. Источник
Пойдём от простого к сложному. Кварцевый генератор (подробнее о принципе работы тут). К моему глубокому сожалению, за время полировки сама кварцевая пластинка исчезла, поэтому нам остаётся любоваться только корпусом.
Корпус кварцевого генератора
Случайно, между делом, нашёл-таки, как выглядит армирующее волокно внутри текстолита и шарики, из которых в массе своей и состоит текстолит. Кстати, а волокна всё-таки уложены со скруткой, это хорошо видно на верхнем изображении:
Армирующее волокно внутри текстолита (красными стрелками указаны волокна, перпендикулярные срезу), из которого и состоит основная масса текстолита
А вот и первая важная деталь флешки – контроллер:
Контроллер. Верхнее изображение получено объединением нескольких СЭМ-микрофотографий
Признаюсь честно, не совсем понял задумку инженеров, которые в самой заливке чипа поместили ещё какие-то дополнительные проводники. Может быть, это с точки зрения технологического процесса проще и дешевле сделать.
После обработки этой картинки я кричал: «Яяяяязь!» и бегал по комнате. Итак, Вашему вниманию представляет техпроцесс 500 нм во всей свой красе с отлично прорисованными границами стока, истока, управляющего затвора и даже контакты сохранились в относительной целостности:
«Язь!» микроэлектроники – техпроцесс 500 нм контроллера с прекрасно прорисованными отдельными стоками (Drain), истоками (Source) и управляющими затворами (Gate)
Теперь приступим к десерту – чипам памяти. Начнём с контактов, которые эту память в прямом смысле этого слова питают. Помимо основного (на рисунке самого «толстого» контакта) есть ещё и множество мелких. Кстати, «толстый» < 2 диаметров человеческого волоса, так что всё в мире относительно:
СЭМ-изображения контактов, питающих чип памяти
Если говорить о самой памяти, то тут нас тоже ждёт успех. Удалось отснять отдельные блоки, границы которых выделены стрелочками. Глядя на изображение с максимальным увеличением, постарайтесь напрячь взгляд, этот контраст реально трудно различим, но он есть на изображении (для наглядности я отметил отдельную ячейку линиями):
Ячейки памяти 1. Границы блоков выделены стрелочками. Линиями обозначены отдельные ячейки
Мне самому сначала это показалось как артефакт изображения, но обработав все фото дома, я понял, что это либо вытянутые по вертикальной оси управляющие затворы при SLC-ячейке, либо это несколько ячеек, собранных в MLC. Хоть я и упомянул MLC выше, но всё-таки это вопрос. Для справки, «толщина» ячейки (т.е. расстояние между двумя светлыми точками на нижнем изображении) около 60 нм.
Чтобы не лукавить – вот аналогичные фото с другой половинки флешки. Полностью аналогичная картина:
Ячейки памяти 2. Границы блоков выделены стрелочками. Линиями обозначены отдельные ячейки
Конечно, сам чип – это не просто набор таких ячеек памяти, внутри него есть ещё какие-то структуры, принадлежность которых мне определить не удалось:
Другие структуры внутри чипов NAND памяти
Всю плату SO-DIMM от Samsung я, конечно же, не стал распиливать, лишь с помощью строительного фена «отсоединил» один из модулей памяти. Стоит отметить, что тут пригодился один из советов, предложенных ещё после первой публикации – распилить под углом. Поэтому, для детального погружения в увиденное необходимо учитывать этот факт, тем более что распил под 45 градусов позволил ещё получить как бы «томографические» срезы конденсатора.
Однако по традиции начнём с контактов. Приятно было увидеть, как выглядит «скол» BGA и что собой представляет сама пайка:
«Скол» BGA-пайки
А вот и второй раз пора кричать: «Язь!», так как удалось увидеть отдельные твердотельные конденсаторы – концентрические круги на изображении, отмеченные стрелочками. Именно они хранят наши данные во время работы компьютера в виде заряда на своих обкладках. Судя по фотографиям размеры такого конденсатора составляют около 300 нм в ширину и около 100 нм в толщину.
Из-за того, что чип разрезан под углом, одни конденсаторы рассечены аккуратно по середине, у других же срезаны только «бока»:
DRAM память во всей красе
Если кто-то сомневается в том, что эти структуры и есть конденсаторы, то тут можно посмотреть более «профессиональное» фото (правда без масштабной метки).
Единственный момент, который меня смутил, что конденсаторы расположены в 2 ряда (левое нижнее фото), т.е. получается, что на 1 ячейку приходится 2 бита информации. Как уже было сказано выше, информация по мультибитовой записи имеется, но насколько эта технология применима и используется в современной промышленности – остаётся для меня под вопросом.
Конечно, кроме самих ячеек памяти внутри модуля есть ещё и какие-то вспомогательные структуры, о предназначении которых я могу только догадываться:
Другие структуры внутри чипа DRAM-памяти
Послесловие
Помимо тех ссылок, что раскиданы по тексту, на мой взгляд, довольно интересен данный обзор (пусть и от 1997 года), сам сайт (и фотогалерея, и chip-art, и патенты, и много-много всего) и данная контора, которая фактически занимается реверс-инжинирингом.
К сожалению, большого количества видео на тему производства Flash и RAM найти не удалось, поэтому довольствоваться придётся лишь сборкой USB-Flash-накопителей:
P.S.: Ещё раз всех с наступающим Новым Годом чёрного водяного дракона.
Странно получается: статью про Flash хотел написать одной из первых, но судьба распорядилась иначе. Скрестив пальцы, будем надеяться, что последующие, как минимум 2, статьи (про биообъекты и дисплеи) увидят свет в начале 2012 года. А пока затравка — углеродный скотч:
Углеродный скотч, на котором были закреплены исследуемые образцы. Думаю, что и обычный скотч выглядит похожим образом
Во-первых, полный список опубликованных статей на Хабре:
В-третьих, если тебе, дорогой читатель, понравилась статья или ты хочешь простимулировать написание новых, то действуй согласно следующей максиме: «pay what you want»
Yandex.Money 41001234893231
WebMoney (R296920395341 или Z333281944680)
Иногда кратко, а иногда не очень о новостях науки и технологий можно почитать на моём Телеграм-канале — милости просим;)
Привет, Geektimes! Мы часто рассказываем о преимуществах SSD, развенчиваем мифы о твердотельных накопителях, вот недавно даже на производстве побывали. А как же, собственно, работает флэш-память? В чем отличие между разными типами NAND? Всех желающих разобраться в этих вопросах милости просим под кат.
Как избежать потери флешкой данных?
Раз уж деградация неизбежна, необходимо соблюдать меры предосторожности. Следует довольно часто осуществлять резервное копирование важных данных. Техника, увы, несовершенна. Специалисты по восстановлению данных в некоторых случаях способны «вытянуть» информацию с поврежденного носителя, но это стоит дорого и потребует времени. Да и уверенности в том, что данные будут спасены нет и быть не может. Поэтому резервное копирование предпочтительнее.
Учитывая ограничения флеш-технологии, данные на этих накопителях не следует обновлять слишком часто. Для важных данных и приложений лучше использовать более надежную флеш-память, однослойную SLC.
Флешку следует извлекать по правилам и никогда не отключать ее в процессе чтения и записи данных. Необходимо избегать воздействия на флеш-накопитель высоких температур, повышенной влажности и давления.
Немного практики
Все вышеперечисленное мы с вами не можем наблюдать самостоятельно (по крайней мере без специального оборудования). А вот как все это выглядит после изготовления печатных плат, пайки, установки чипов и микросхем:
OCZ Trion 150
Здесь мы видим и микросхемы флэш-памяти и буфера и контроллер, заботливо накрытый терморезинкой. Да, тема у нас не об устройстве SSD, а работе флеш-памяти, но без контроллера здесь никуда. И вот почему.
Контроллер распределяет запись в ячейки флеш-памяти, «руководит» чтение из ячеек памяти и TRIM (об этом чуть позже) — в общем, фраза «незаменимых у нас нет» — это не про него. Именно он контролирует передачу данных, как на SATA, так и на PCIe, распределяет информацию по NAND для меньшего износа. Без помощи прошивки, разумеется, здесь не обойтись.
К флэш-памяти контроллер подключается параллельно и, как видите, выполняет одну из ключевых ролей. В Trion 150, например, используется контроллер Toshiba, а в Vertex 460A 0 уже Barefoot 3 M10 от OCZ.
Ах да, чуть не забыли про кэш. Он является надежным спутником контроллера: как только дается команда изменить файл на SSD, блок сперва попадает в память кэша, где и происходит изменение. В это время неактуальные данные в NAND удаляются, а контроллер находит, куда же поместить информацию, которая была помещена в буфер. Главный принцип — выбрать ячейку с наименьшим износом, чем и занимается контроллер, после его команды измененные данные отправляются в новый «дом».
Сейчас большинство SSD, в том числе от OCZ, также поддерживают TRIM — специальную технологию, которая отмечает неактуальные данные. В этом случае ненужная информация не записывается в другие блоки памяти, что благоприятно влияет не только на количество циклов перезаписи, но и саму скорость записи.
Взгляд в прошлое
Прежде, чем начать наш разговор, давайте ненадолго вспомним о жестких дисках. Как известно, последние хранят информацию на нескольких магнитных пластинах, которые в народе называют платтерами. В упрощенной форме — актуатор со считывающими головками получает информацию, а для совершении процессов чтения/записи диск все время вращается. Вряд ли есть смысл надолго здесь останавливаться, но важно уловить суть.
Поскольку блок головок диска должен совпадать с определенной областью (дорожкой) для считывания или записи данных, а диск вращается постоянно, необходимо некоторое время, прежде чем они смогут получить доступ к информации, и нужный сектор окажется под головкой, особенно если запросы хаотичны. И хотя задержка у HDD измеряется в миллисекундах, этого достаточно, чтобы заставить ждать CPU, задержка которого измеряется в наносекундах. В одной миллисекунде один миллион наносекунд, а в среднем жесткому диску необходимо от 10 до 15 миллисекунд для поиска информации и начало ее чтения. Да, сейчас есть решения, скорость вращения которых достигает 15 тысяч оборотов в минуту, но даже самый быстрый HDD не будет настолько быстрым, как хотелось бы.
Ячейка памяти
Одна ячейка памяти — один бит. Одна буква в тексте — 8 бит или 1 байт. Этот текст занимает примерно 6 тысяч байт, то есть, чтобы сохранить его на флешку, потребуется 48 тысяч ячеек памяти. Для нового эпизода Доктора Хауса в HD потребуется примерно 11 миллиардов ячеек памяти. Трудно представить себе, что они все легко поместятся на площади в 1 квадратный сантиметр.
Ячейка памяти — это транзистор. С двух сторон у него находится два полупроводника n-типа, у которых много свободных электронов, которые могут свободно двигаться, то есть переносить ток.
Между этими полупроводниками находится полупроводник p-типа, у которого, наоборот, недостаток электронов. Ток там переносится, соответственно, дырками от недостающих электронов.
Ток не может проходить между n-полупроводниками, потому что между ними находится p-проводник, а у них разный тип проводимости.
Но над p-полупроводником находится управляющий затвор. Это такой электрод, на который можно подать положительное или отрицательное напряжение. Если на него подать положительное напряжение, то он отодвинет дырки в p-полупроводнике и притянет электроны, поскольку противоположные заряды притягиваются.
Плавающий затвор окружен диэлектриком, чтобы электрончики с него не сбежали. Теоретически, ячейка памяти может хранить свое значение бесконечно, ну или по крайней мере десятки лет.
Получится так называемый n-переход, по которому может пройти электричество с одного полупроводника n-типа на другой и транзистор сможет проводить ток.
Между управляющим затвором и p-полупроводником есть металлическая пластинка — это плавающий затвор. Если ее зарядить отрицательно, то она будет мешать работе управляющего затвора, и транзистор не будет проводить ток вне зависимости от того, есть на управляющем затворе положительное напряжение или нет.
Минутка философии
Очевидно, по сравнению с обычными жесткими дисками NAND — настоящий прорыв, но и у нее есть свои проблемы и недостатки. Да, NAND имеет огромные перспективы в плане емкости накопителей, однако цена за гигабайт оставляет желать лучшего. Вряд ли в ближайшее время по этому параметру удастся «поймать» жесткие диски.
За счет использования SLC-кэшей и быстрых стандартов данных SSD стали еще более производительными, имеют хорошую пропускную способность. Тем не менее в долгосрочной перспективе предполагается, что на смену NAND все же придет что-то другое. И на самом деле, 3D NAND — первый «звоночек», который об этом свидетельствует.
Сейчас NAND, безусловно, на коне — как говорят, true king of the hill. И останется этим королем как минимум ближайшие 4-5 лет.
Как на на маленькой карте памяти microSD размером буквально с ноготок помещается 1 терабайт данных? Такой вопрос нам задали в комментариях к видео про шифрование данных. Звучит интересно! Сегодня мы узнаем что находится внутри SD-карты и SSD-диска. Что объединяет современные чипы памяти со слоёным пирогом? И какой емкости будут наши диски и карты памяти через несколько лет?
Олды, кто помнит 2004 год? Тогда в продаже впервые появилась SD-карточка с рекордной на тот момент ёмкостью 1 гигабайт. Это было событием и карточку оценили в солидную сумму — 500 долларов США.
А спустя 15 лет представили карты памяти microSD объёмом 1 терабайт.
Но как за 15 лет мы научились размещать в тысячу раз больше информации на вдвое меньшем пространстве?
Чтобы ответить на этот вопрос, нам нужно понять.
Как устроены SD карточки?
Начнем с физической архитектуры. Если заглянуть под слой пластика SD или microSD карточки, мы увидим один небольшой чип — это контроллер памяти. И один или два больших чипа — это NAND флеш-память: самый распространенный на сегодня тип памяти. Такие же чипы можно встретить в флешках, SSD-дисках и внутри наших гаджетов. Короче, везде!
NAND И NOR
Но почему NAND флеш-память такая популярная? Чтобы ответить на этот вопрос, давайте немного разберемся в том как флеш-память работает. Мы уже как-то рассказывали, что базовая единица современной флэш-памяти — это CTF-ячейка (CTF — Charge Trap Flash memory cell), то есть Ячейка с Ловушкой Заряда.
Это не образное выражение. Ячейка, действительно способна запирать внутри себя заряд и хранить его годами! Соответственно, если в ячейке есть заряд — это 1, если нет заряда — это 0.
Все ячейки организованы в структуру NAND. NAND — это такой логический элемент NOT-AND, то есть НЕ-И. Вот таблица его значений.
Фактически, это перевернутый вентиль И. По таблице истинности на выходе вентиля И мы получаем единицу только в случае если на оба входа тоже приходит единица. В NAND всё наоборот.
Кстати, NAND обладает интересным свойством — любая логическая функция может быть реализована с помощью комбинации NAND-вентилей. Это свойство NAND называется функциональной полнотой.
Например CMOS-матрицы или КМОП-матрицы, которые используются в большинстве современных цифровых камер, в том числе во всех мобильных телефонах могут быть полностью реализованы только на вентилях NAND.
Свойство функциональной полноты NAND также разделяет с вентилями NOR, то есть НЕ-ИЛИ. К слову, NOR флеш-память тоже существует. Но почему всюду ставят именно NAND память, а не NOR?
NAND-память — интересная штука. Её можно сравнить с оптовыми закупками в супермаркете. Считывать и подавать напряжение в NAND ты можешь только на целую упаковку ячеек. Поэтому мы не можем считать или записать данные в какую-то конкретную ячейку.
В NOR памяти всё наоборот, у нас есть доступ каждой ячейке.
Вроде бы как очевидно превосходство NOR, но почему же тогда мы используем NAND?
Дело в том, что в NOR-памяти каждую ячейку нам надо подключить отдельно. Всё это делает размер ячеек большим, а конструкцию массивной.
В NAND наоборот: ячейки подключаются последовательно друг за другом и это позволяет сделать ячейки маленькими и расположить их плотно друг к другу. Поэтому на NAND-чипе может поместиться в 16 раз больше данных чем на NOR-чипе.
Также это позволяет быстро считывать и записывать большие массивы данных, так как мы всегда одновременно оперируем группой ячеек.
Структура одного столбца NAND flash с 8 ячейками
Компоновка шести ячеек NOR flash
Более того NOR-память не оптимальна для считывания и записи больших объёмов информации, но она выигрывает тогда, когда нужно считывать много мелких данных случайным образом. Поэтому NOR-память используют только в специфических задачах, например, для хранения и исполнения микропрограмм. Например BIOS вполне может быть записан в NOR-память, или даже прошивка в телефоне. По крайней мере раньше так точно делали.
А NAND-память идеально подходит для SSD, карт памяти и прочего.
2D NAND
Окей, NAND-память плотная, это выяснили. Но как её сделать еще плотнее?
Долгое время ячейки NAND укладывались столбцами горизонтально и получалась однослойная плоская структура. И производство памяти было похожим на производство процессоров — при помощи методов литографии. Такая память называлась 2D NAND или планарный NAND.
Структура 2D PLANAR NAND
Соответственно, единственным способом уплотнения информации было использование более тонких техпроцессов, что и делали производители.
Но к 2016 году производители достигли техпроцесса в 14-15 нанометров. Да-да, крутость памяти тоже можно мерить нанометрами. Но тем не менее это оказалось потолком для 2D NAND-памяти.
Получается, что в 2016 году прогресс остановился? Совсем нет.
Решение нашла компания Samsung. Понимая, что планарная, то есть плоская NAND находится на последнем издыхании, еще в 2013 году Samsung обогнала своих конкурентов и представила первое в отрасли устройство с 3D NAND-памятью.
Они взяли столбец с горизонтальными NAND ячейками и поставили его вертикально, поэтому 3D NAND ещё называют V-NAND или вертикальной NAND. Вы только посмотрите на эту красоту!
Вот эти красные штуки сверху — это битлайны (bit line), то есть каналы данных. А зелёные шутки — это слои ячеек памяти. И если раньше данные считывались с одного слоя и поступали в битлайн, то теперь данные со всех слоев стали поступать в канал одновременно!
Поэтому новая архитектура позволила не только существенно увеличить плотность информации, но и в два раза повысить скорость чтения и записи, а также снизить энергопотребление на 50%!
Первый 3D NAND-чип состоял из 24 вертикальных слоёв. Сейчас норма составляет 128 слоев. Но уже в 2021 году производители перейдут на 256 слоев, а к 2023 году на 512, что позволит на одном флеш-чипе разместить до 12 терабайт данных.
Кхм-кхм. Минуточку! Внимательный читатель мог заметить, что в приведенной табличке написано 12 терабит, откуда же тогда я взял терабайты? Дело в том, что 12 терабит помещается на одном кристалле флеш памяти, а в одном чипе можно разместить до 8 кристаллов друг над другом. Вот и получается 12 терабайт.
Но наращивать всё больше и больше этажей памяти невозможно бесконечно. Даже сейчас с производством возникает масса проблем. В отличии от 2D-памяти, которая производилась методом литографии, 3D NAND, по большей части, опирается на методы напыления и травления. Производство стало похожим на изготовление самого высокого в мире торта. Нужно было буквально наращивать идеально ровные слои памяти друг над другом, чтобы ничего не поплыло и не осело. Жуть!
Более того в этом слоёном пироге, нужно как-то проделать 2,5 миллиона идеально ровных каналов идущих сверху до низу. И если, когда было 32 слоя, производители с этим легко справлялись. Но с увеличением количества слоев возникли проблемы. Всё как в жизни!
Поэтому производители стали использовать разные хаки: например, делать по 32 слоя и накладывать их друг на друга через изолятор. Но такие методы дороже в производстве и чреваты браком. Кстати, для любознательных, на текущий момент эти каналы проделываются не сверлом, а методом реактивного ионного травления (RIE). Проще говоря, бомбардировкой поверхности ионами.
SLC, MLC, TLC, QLC
Так что же, мы снова уперлись в потолок? Теперь уже в буквальном смысле. Нет! Ведь на самом деле, можно не только увеличивать количество ячеек. Можно увеличивать количество данных внутри ячейки!
Те кто интересуется темой, или выбирал себе SSD диск наверняка знают, что бывает четыре типа ячеек памяти SLC, MLC, TLC, QLC.
SLC-ячейка (Single Layer Cell) может хранить всего 1 бит информации, то есть лишь нолик или единичку. Соответственно MLC-ячейка хранит уже 2 бита, TLC — 3, QLC — 4.
Вроде бы круто! Но чем больше бит мы можем поместить в ячейку, тем медленнее будет происходить чтение, и главное — запись информации. А заодно тем менее надежной будет память.
Сейчас не будем на этом подробно останавливаться, но в двух словах в потребительских продуктах сейчас золотой стандарт — это TLC-память, то есть три бита. Это оптимальный вариант, по скорости, надежности и стоимости.
SLC и MLC — это крутые профессиональные решения.
А QLC — это бюджетный вариант, который подойдет для сценариев, в которых не надо часто перезаписывать данные.
Кстати, Intel уже готовит преемника QLC — пятибитную PLC-память (Penta Level Cell).
Ответ на вопрос
Это, конечно, всё очень интересно, но может, вернёмся к изначальному вопросу: Как уже сейчас в простой microSD-карточке помещается 1 терабайт?
Ну что ж, теперь когда мы всё знаем, отвечаем на вопрос.
Внутри карточки Micron (и скорее всего карточки SanDisk) используется одинаковый чип памяти. Это 96-слойная 3D NAND QLC-память. На одном кристалле такой памяти помещается 128 гигабайт данных. Но откуда же тогда 1 терабайт?
Как мы уже говорили раньше, в одном флеш-чипе помещается 8 кристаллов. Вот вам и 1 терабайт. Вот так всё просто!
Что нас ждёт в будущем?
Что ж, технологии производства флеш-памяти развиваются очень быстро. Уже через 2-3 года нам обещают чипы на 12 терабайт. А еще лет через 10, ну может 20, и за сотню терабайт перескочим. Тем более SD-карточки нового формата SD Ultra Capacity поддерживают емкость до 128 терабайт.
Информация на флешке хранится в ячейках памяти, каждая из которых может запомнить один бит: 0 или 1. Флешка состоит из миллиардов таких ячеек памяти.
Причины повреждений и постепенной деградации флеш-накопителя
Большей частью к повреждению флеш-накопителя ведут те же причины, которые заставляют аккумулятор терять свой заряд после нескольких сот циклов перезарядки. Тысячи циклов перезаписи ведут к тому, что модули NAND-флеш теряют свою способность удерживать данные. SLC-флеш в десять раз более устойчива в этом отношении, чем MLC-флеш, и в двадцать раз, чем TLC-флеш. По этой причине для промышленных задач используется самый надежный тип: SLC, а в потребительских устройствах «средненький» MLC.
Чем старше флешка, тем она менее надежна. Этот процесс называется постепенной деградацией. Происходит это по мере старения даже в тех случаях, когда флешка не подвергалась явно выраженному неблагоприятному воздействию окружающей среды и не была физически повреждена.
Фактор, влияющий на надежность и долговечность флешки называют [способностью к] удержанию [информации]. По-английски просто «удержанием» («retention»). «Удержание» характеризует то, как долго ячейка памяти способна поддерживать свое ранее запрограммированное состояние. Этот фактор очень чувствителен к окружающей среде. Воздействие высоких температур ведет к сокращению времени «удержания». Число циклов перезаписи тоже ведет к удержанию, в особенности это ощутимо при работе с TLC-накопителями.
Под воздействием высоких температур и повышенной влажности образуется конденсат, который ведет к коррозии контактов и неблагоприятно воздействует на микросхему.
Но наиболее частой причиной потери данных на флешке является ее некорректное отключение от компьютера или иного устройства. Последствием неправильного отключения может стать повреждение файловой системы. Обычно в этой ситуации, даже если данные потеряны, сам накопитель остается физически исправным.
Но в некоторых редких случаях, неправильное отключение флешки может вести к повреждению ячеек флеш-памяти, в которых хранится внутренняя информация флеш-накопителя. В таких случаях к накопителю становится невозможно получить доступ средствами операционной системы и, следовательно, не получается и восстановить его работоспособность при помощи соответствующих программных утилит. Чтобы извлечь информацию в такой ситуации, потребуется помощь профессионала. Чтобы избежать подобного повреждения, следует всегда корректно отключать флешку. Особую опасность представляет для флешки ее отключение в процессе чтения или записи данных.
Поскольку флешка в любом случае подвергается неблагоприятному воздействию, она так или иначе подвержена постепенной деградации. Идеальных условий в реальном мире просто не бывает. В более благоприятных условиях (при отсутствии других повреждений и воздействия иных факторов) флешка прослужит дольше, но тоже не вечно. С годами желтеет и становится ломкой бумага, ржавеет и порой рассыпается в пыль железо. Флешка не является исключением из общего правила, распространяющегося на все предметы, которые подвергаются тем или иным воздействиям.
Как записываются
Чтобы записать единичку в ячейку памяти, надо на плавающий затвор закинуть электронов. Но это не так-то просто сделать, потому что плавающий затвор окружен диэлектриком, который, как известно, не проводит ток.
Туннельный эффект — явление, возможное только в квантовой механике, когда, благодаря своим волновым свойствам, электрон перепрыгивает с одного места на другое. То есть он оказывается по ту сторону диэлектрика, не проходя через него. В классической механике такое невозможно.
Для того, чтобы поместить электроны в плавающий затвор, на управляющий затвор подают положительное напряжение — гораздо выше, чем при чтении. Часть проходящих электронов запрыгивают на плавающий затвор благодаря туннельному эффекту.
Стирание данных происходит точно так же, только вместо положительного напряжение на управляющий затвор подается отрицательное, и электроны спрыгивают с плавающего затвора.
Немного теории
Возможно, так бы мы с вами и довольствовались «очень» быстрыми HDD (как говорил Генри Форд: «если бы я спросил у людей, что они хотят, они бы попросили меня создать быстрых лошадей»), однако производители накопителей, среди которых и ваш покорный слуга, благо не стоят на месте. Появились SSD (Solid-state drives или твердотельные накопители), где информация хранится не на вращающихся дисках, а при помощи флэш-памяти NAND. На ней мы и остановимся подробно.
В случае с NAND информация хранится в массиве ячеек памяти — это транзисторы с плавающим затвором (Floating Gate). В зависимости от направления напряжения происходит перемещение электронов между Control Gate (управляющим затвором) и каналом NAND.
Как только на управляющий затвор подается напряжение, электроны начинают притягиваться вверх — полученное электрическое поле помогает им достичь плавающего затвора, преодолев при этом препятствие из оксида. Последний выступает в качестве изолятора, так как именно благодаря нему электроны не двигаются дальше плавающего затвора. Так происходит программирование ячейки.
Процесс стирания ячейки выглядит с точностью наоборот — напряжение подается на канал, электроны перемещаются от плавающего затвора через оксид обратно посредством заземления управляющего затвора.
Ячейка с одним транзистором работает следующим образом. В зависимости от наличия или отсутствия заряда на плавающем затворе определяется состояние транзистора — открыт он или закрыт. При рассмотрении подачи напряжения на управляющий затвор в качестве инициализации ячейки памяти можно судить о наличии или отсутствии заряда на плавающем затворе по напряжению между истоком и стоком. Если на плавающий затвор поместить электрон и подать напряжение на управляющий затвор, транзистор будет закрыт. Получим ячейку памяти, которая способна хранить один бит. При использовании метода инжекции горячих электронов происходит подача напряжения на сток и управляющий затвор, что приводит к движению электронов сквозь барьер.
Ячейка с двумя транзисторами представляет собой модификацию однотранзисторной. В этом случае транзистор (обычный) изолирует битовую линию от транзистора с плавающим затвором.
Удаление заряда с плавающего затвора происходит при помощи подачи отрицательного напряжения на управляющий затвор (на исток — положительное напряжение). В результате имеем туннелирование Фаулера — Нордхейма: электроны перемещаются (туннелируют) из области плавающего затвора в исток.
Цикл перезаписи. Прежде, чем программировать новую ячейку с новыми электронами, необходимо сначала очистить старые. На практике большинству пользователей не приходится обращать внимание на количество циклов перезаписи, поскольку ресурса SSD запросто хватает на любые объемы записываемых данных. Правда, попадаются и досадные исключения, но на то и нужна гарантия от производителя.
В твердотельных накопителях флэш-память состоит из блоков, а последние — состоят из страниц. Запись информации осуществляется именно в эти страницы, а для обновления данных недостаточно просто перезаписать неактуальные страницы. Так что сперва данные перемещаются из старых страниц в новые, затем отправляются в другой блок, и только после этого происходит стирание блока с неактуальными данными. Как только блок будет стерт, он будет свободен для записи новых данных. Такой вот хитрый процесс — в визуальном формате он кажется гораздо более понятным.
Очевидно, отсутствие движущихся дисков (да и вообще подвижных частей) — одно из главных преимуществ SSD над жесткими дисками, и именно это дает твердотельным накопителям работать на скоростях, заметно превосходящих HDD. Для наглядности — вот сводная таблица по времени задержки различных типов NAND и HDD.
SLC, MLC, TLC — не просто аббревиатуры, они обозначают количество бит в каждой ячейке. Для SLC (Single) это один бит, для MLC (Multi) — два бита, для TLC (Triple) — соответственно, три бита. За счет этого MLC хранит в два раза больше информации, чем SLC, и это при том, что количество ячеек то же самое. В целом, принцип работы у этих типов NAND одинаковый, что нельзя сказать о выносливости.
В течение определенного времени физическая структура ячеек может быть подвержена износу за счет уменьшения слоя оксида, вызванного активностью электронов. Как результат — электроны накапливают отрицательный заряд и застревают, подается более высокое напряжение, слой оксида опять уменьшается. Такой вот замкнутый круг получается.
SLC, MLC и TLC отличаются по выносливости. Если, к примеру, взять кристалл NAND плотностью 16 Гбит, получим SLC 16 Гбит при том, что в каждой ячейке один бит. Соответственно, для MLC это будет 32 Гбит, а для TLC — 48 Гбит. Правда, в последнем случае кристалл NAND все равно приходится резать, в итоге получается эквивалент 32 Гбит у MLC. Кто же по-вашему способен выдержаться самые большие изменения в напряжении?
С двумя уровнями (0,1) у SLC по этому параметру самый лучший показатель — этот тип NAND выдерживает широкий диапазон колебаний напряжения. С увеличением уровней этот диапазон уменьшается, поэтому у TLC с ее 8 уровнями и 3 битами в ячейке самое малое количество циклов перезаписи.
Поскольку с уменьшением кристалла уже давно возникли проблемы, на смену современной планарной флеш-памяти NAND приходит 3D NAND. Она меньше подвержена износу за счет отсутствия необходимости в подаче высокого напряжения при записи данных в ячейку. Производители активно развивают данное направление и дают технологии собственные названия (у Samsung — 3D V-NAND, у Toshiba — BiCS 3D NAND и так далее). Смысл в том, что в этом случае мы получаем цилиндр с верхним слоем в роли управляющего затвора, при этом внутренний слой выполняет роль изолятора. Сами Ячейки располагаются друг под другом, образуя стек. Управляющая логика размещается под массивом памяти, освобождается площадь чипа, где впоследствии находят себе «дом» ячейки памяти.
Как читаются данные
Чтобы проверить, что записано в ячейке памяти, ноль или единица, на управляющий затвор подают напряжение и проверяют, может ли идти по транзистору ток:
- — Если на управляющем затворе есть избыток электронов, то ток идти не будет, значит это единица.
- — Если на управляющеи затворе избытка электронов нет, то ток пойдет, значит это ноль.
Какой бывает флеш-память?
- SLC (Single Layer Cell, однослойная ячейка). Способна хранить в одной ячейке только один бит данных. Является самым дорогостоящим типом флеш-накопителей, поскольку потребляет меньше энергии, характеризуется более высокой скоростью записи и применяется в промышленности, а также для хранения важных данных.
- MLC (Multi Layer Cell, многослойная ячейка). Содержит два бита в одной ячейке. А следовательно, способна хранить в два раза больше информации. MLC чаще всего используют в продуктах потребительского класса. В большинстве случаев такая память дешевле, чем SLC. Она характеризуется более низким пределом выносливости (по сравнению с однослойной) и способна выдержать меньше циклов перезаписи.
- TLC (Triple Layer Cell, трехслойная ячейка). Содержит в одной ячейке целых три бита. TLC является самым дешевым типом флеш-памяти, обладая при этом максимальной плотностью хранения информации. Ее предел выносливости значительно ниже, чем у ранее рассмотренных типов флеш-памяти. Ее характеризует довольно низкая скорость чтения и записи данных. Обычно применяется в дешевых продуктах. TLC не рекомендуется использовать для хранения важных данных.
Как это часто бывает, существуют две стороны рассматриваемого вопроса. Те флеш-накопители, которые способны хранить в одной ячейке два, а то и три бита дешевле. На их базе можно сделать более емкие накопители. Но при этом страдают скорость и надежность. Вышеизложенная информация отвечает также и на вопрос: почему флешки меньшего объема порой стоят значительно дороже своих значительно более емких аналогов?
Флеш-накопители лишены движущихся деталей, они работают бесшумно и быстро. На фоне других типов хранилищ информации они выделяются своей компактностью. Флеш-память используется в принтерах, располагаясь на их платах и будучи покрытой пластиком или специальной резиной. Флеш-накопители вставляют в USB-порт компьютера или в его картридер при помощи специального адаптера. В современных компьютерах нет нужды ставить специальные драйверы для обеспечения поддержки флеш-накопителей. Не нужен им и дополнительный источник питания.
Читайте также: