В электронике многоуровневая ячейка ( MLC ) — это ячейка памяти, способная хранить более одного бита информации, по сравнению с одноуровневой ячейкой ( SLC ), которая может хранить только один бит на ячейку памяти. Ячейка памяти обычно состоит из одного плавающего затвора MOSFET (полевой транзистор металл-оксид-полупроводник), таким образом, многоуровневые ячейки уменьшают количество MOSFET, необходимых для хранения того же объема данных, что и одноуровневые ячейки.
Ячейки с тремя уровнями ( TLC ) и ячейки с четырьмя уровнями ( QLC ) являются версиями памяти MLC, которые могут хранить три и четыре бита на ячейку соответственно. Название « многоуровневая ячейка» иногда используется специально для обозначения « двухуровневой ячейки». В целом, память называется следующим образом:
Обратите внимание, что эта номенклатура может вводить в заблуждение, поскольку « n -уровневая ячейка» на самом деле использует 2 n уровней заряда для хранения n бит (см. ниже).
Обычно с увеличением количества «уровней» производительность (скорость и надежность) и потребительская стоимость снижаются; однако эта корреляция может различаться у разных производителей.
Примерами MLC-памяти являются MLC NAND flash , MLC PCM ( память с изменением фазы ) и т. д. Например, в технологии SLC NAND flash каждая ячейка может находиться в одном из двух состояний, сохраняя один бит информации на ячейку. Большинство MLC NAND flash-памяти имеет четыре возможных состояния на ячейку, поэтому она может хранить два бита информации на ячейку. Это уменьшает величину поля, разделяющего состояния, и приводит к возможности большего количества ошибок. Многоуровневые ячейки, которые разработаны для низкого уровня ошибок, иногда называются enterprise MLC ( eMLC ).
Новые технологии, такие как многоуровневые ячейки и 3D Flash, а также возросшие объемы производства продолжат снижать цены. [2]
Флэш-память хранит данные в отдельных ячейках памяти, которые сделаны из плавающих затворов MOSFET транзисторов. Традиционно, каждая ячейка имела два возможных состояния (каждое с одним уровнем напряжения), причем каждое состояние представляло либо единицу, либо ноль, поэтому один бит данных хранился в каждой ячейке в так называемых одноуровневых ячейках или флэш-памяти SLC. Преимущество памяти SLC заключается в более высокой скорости записи, меньшем энергопотреблении и более высокой выносливости ячеек. Однако, поскольку память SLC хранит меньше данных на ячейку, чем память MLC, ее производство обходится дороже за мегабайт памяти. Из-за более высокой скорости передачи данных и ожидаемого более длительного срока службы технология флэш-памяти SLC используется в высокопроизводительных картах памяти . В феврале 2016 года было опубликовано исследование, которое показало небольшую разницу на практике между надежностью SLC и MLC. [3]
Срок службы одноуровневой ячейки флэш-памяти может составлять около 50 000–100 000 циклов программирования/стирания. [4]
Одноуровневая ячейка представляет 1, когда почти пуста, и 0, когда почти заполнена. Между двумя возможными состояниями существует область неопределенности (граница чтения), в которой данные, хранящиеся в ячейке, не могут быть точно прочитаны. [5]
Основным преимуществом флэш-памяти MLC является ее более низкая стоимость за единицу хранения из-за более высокой плотности данных, а программное обеспечение для чтения памяти может компенсировать большую частоту ошибок битов . [6] Более высокая частота ошибок требует кода коррекции ошибок (ECC), который может исправлять множественные ошибки битов; например, флэш-контроллер SandForce SF-2500 может исправлять до 55 бит на сектор размером 512 байт с невосстановимой частотой ошибок чтения менее одного сектора на 10 17 считанных битов. [7] Наиболее часто используемый алгоритм — это алгоритм Боуза–Чоудхури–Хоквенгема ( код BCH ). [8] Другими недостатками MLC NAND являются более низкая скорость записи, меньшее количество циклов программирования/стирания и более высокое энергопотребление по сравнению с флэш-памятью SLC.
Скорость чтения также может быть ниже для MLC NAND, чем SLC из-за необходимости считывать те же данные при втором пороговом напряжении для устранения ошибок. Устройствам TLC и QLC может потребоваться считывать те же данные до 4 и 8 раз соответственно, чтобы получить значения, которые можно исправить с помощью ECC. [9]
Флэш-память MLC может иметь срок службы около 1000–10 000 циклов программирования/стирания. Обычно это требует использования файловой системы флэш-памяти , которая разработана с учетом ограничений флэш-памяти, таких как выравнивание износа для продления срока службы флэш-устройства.
Intel 8087 использовал технологию двух бит на ячейку для своего микрокода ROM , [10] и в 1980 году был одним из первых устройств на рынке, использовавших многоуровневые ячейки ROM. [11] [12] Позже Intel продемонстрировала 2-битную многоуровневую ячейку (MLC) NOR flash в 1997 году . [13] NEC продемонстрировала четырехуровневые ячейки в 1996 году с чипом флэш-памяти емкостью 64 Мбит , хранящим 2 бита на ячейку. В 1997 году NEC продемонстрировала чип динамической памяти с произвольным доступом (DRAM) с четырехуровневыми ячейками, удерживая емкость 4 Гбит. STMicroelectronics также продемонстрировала четырехуровневые ячейки в 2000 году с чипом флэш-памяти NOR емкостью 64 Мбит . [14]
MLC используется для обозначения ячеек, которые хранят 2 бита на ячейку, используя 4 значения заряда или уровня. 2-битный MLC имеет один уровень заряда, назначенный каждой возможной комбинации единиц и нулей, следующим образом: при заполнении около 25% ячейка представляет двоичное значение 11; при заполнении около 50% ячейка представляет 01; при заполнении около 75% ячейка представляет 00; и при заполнении около 100% ячейка представляет 10. Опять же, существует область неопределенности (граница чтения) между значениями, в которой данные, хранящиеся в ячейке, не могут быть точно прочитаны. [15] [5]
По состоянию на 2013 год [обновлять]некоторые твердотельные накопители используют часть кристалла MLC NAND так, как если бы это была однобитная SLC NAND, что обеспечивает более высокую скорость записи. [16] [17] [18]
По состоянию на 2018 год [обновлять]почти все коммерческие MLC являются планарными (т. е. ячейки построены на поверхности кремния) и, таким образом, подвержены ограничениям масштабирования. Чтобы решить эту потенциальную проблему, отрасль уже ищет технологии, которые могут гарантировать увеличение плотности хранения за пределами сегодняшних ограничений. Одной из самых многообещающих является 3D Flash, где ячейки располагаются вертикально, тем самым избегая ограничений планарного масштабирования. [19]
В прошлом некоторые устройства памяти шли в другом направлении и использовали две ячейки на бит, чтобы обеспечить еще более низкий уровень ошибок по битам. [20]
Enterprise MLC (eMLC) — более дорогой вариант MLC, оптимизированный для коммерческого использования. Он, как утверждается, служит дольше и надежнее обычных MLC, обеспечивая при этом экономию по сравнению с традиционными дисками SLC. Хотя многие производители SSD выпускают диски MLC, предназначенные для корпоративного использования, только Micron продает необработанные чипы NAND Flash под этим обозначением. [21]
Трехуровневая ячейка ( TLC ) — это тип флэш-памяти NAND , которая хранит 3 бита информации на ячейку. Toshiba представила память с трехуровневыми ячейками в 2009 году. [22]
При использовании современных технологий максимальный срок службы может достигать 3000 циклов программирования/стирания. [23]
Samsung анонсировала тип флэш-памяти NAND, которая хранит 3 бита информации на ячейку с 8 общими состояниями напряжения (значениями или уровнями), что дало начало термину «ячейка с тремя уровнями» («TLC»). Samsung Electronics начала ее массовое производство в 2010 году, [24] и впервые она была замечена в твердотельных накопителях Samsung серии 840. [25] Samsung называет эту технологию 3-битной MLC . Отрицательные аспекты MLC усиливаются с TLC, но TLC выигрывает от еще более высокой плотности хранения и более низкой стоимости. [26]
В 2013 году Samsung представила V-NAND (вертикальная NAND, также известная как 3D NAND) с трехуровневыми ячейками, которые имели емкость памяти 128 Гбит . [27] Они расширили свою технологию TLC V-NAND до 256 Гбит памяти в 2015 году [24] и 512 Гбит в 2017 году [28].
Память, которая хранит 4 бита на ячейку, обычно называется четырехуровневой ячейкой ( QLC ), следуя соглашению, установленному TLC . До своего изобретения термин «QLC» был синонимом MLC в отношении ячеек, которые могут иметь 4 состояния напряжения, т. е. тех, которые хранят 2 бита на ячейку – то, что теперь однозначно называется DLC. [ необходима цитата ]
Из-за экспоненциального увеличения числа требуемых ступеней напряжения для флэш-памяти более высокого уровня срок службы QLC дополнительно сокращается до максимум 1000 циклов программирования/стирания. [23]
В 2009 году Toshiba и SanDisk представили чипы флэш-памяти NAND с четырехуровневыми ячейками, хранящими 4 бита на ячейку и имеющими емкость 64 Гбит. [22] [29]
Карты флэш-памяти SanDisk X4, представленные в 2009 году, были одним из первых продуктов на основе памяти NAND, которая хранит 4 бита на ячейку, обычно называемую четырехуровневой ячейкой (QLC), использующей 16 дискретных уровней заряда (состояний) в каждом отдельном транзисторе. Чипы QLC, используемые в этих картах памяти, были произведены Toshiba, SanDisk и SK Hynix . [30] [31]
В 2017 году Toshiba представила чипы памяти V-NAND с четырехуровневыми ячейками, которые имеют емкость хранения до 768 Гбит. [32] В 2018 году ADATA , Intel , Micron и Samsung выпустили несколько продуктов SSD с использованием памяти QLC NAND. [33] [34] [35] [36]
В 2020 году Samsung выпустила QLC SSD с объемом памяти до 8 ТБ для клиентов. Это SATA SSD с самой большой емкостью памяти для потребителей по состоянию на 2020 год. [37] [38]