...

пятница, 8 февраля 2019 г.

SSD на базе QLC — убийца жёстких дисков? На самом деле нет

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

В этой статье мы хотим рассказать о новом этапе эволюции SSD — очередном повышении уровня записи данных в NAND: о четырехуровневых ячейках, хранящих по 4 бита, или QLC (Quad-Level Cell). Накопители, сделанные по этой технологии имеют большую плотность записи, это упрощает увеличение их объема, а стоимость оказывается меньше, чем у SSD с «традиционными» ячейками MLC и TLC.

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

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

Сейчас на рынке представлен огромный выбор накопителей от самых разных компаний, как первого эшелона А-брендов, так и от китайских фирм, которые постарались, чтобы SSD хватило на всех

Что нам предлагает технология QLC?


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

С увеличением количества уровней заряда очень сильно меняются характеристики накопителя: падает скорость доступа, уменьшается надежность хранения информации, но при этом возрастает ёмкость, а соотношение цена/объем становится привлекательнее для покупателей. Соответственно, чипы, построенные по технологии QLC, дешевле, чем предыдущее поколение TLC, в которых хранится по три бита в одной ячейке. В то же время QLC менее надежны, потому что вероятность выхода ячейки из строя существенно увеличивается с каждым новым уровнем.

В дополнение к сложностям одной отдельно взятой ячейки, возникают другие. Вследствие того, что чипы памяти делаются по технологии 3D NAND, они представляют собой трехмерные массивы ячеек, плотно упакованных один над другим, и ячейки в соседних «этажах» взаимно влияют друг на друга, портя жизнь своим соседям. К тому же современные чипы содержат больше слоев, чем изделия предыдущих поколений. Например, одна из технологий повышения плотности памяти подразумевает увеличение количества слоёв в кристалле с 48 до 64. В рамках другой технологии производится «спайка» двух 48-слойных кристаллов, доводя общее количество до 96, что налагает очень высокие требования к совмещению границ в этом «бутерброде», становится больше точек отказа и растёт доля брака. Несмотря на сложность процесса, такая технология получается выгоднее, чем пытаться наращивать слои в одном кристалле, потому что отбраковка при увеличении числа слоев растет нелинейно, и невысокий выход пригодных чипов обошелся бы слишком дорого. Справедливости ради надо заметить, что только компании высшего эшелона могут позволить себе такие разработки. Некоторые китайские фирмы, производящие чипы, так и не перешли на 64-слойные кристаллы, а технологией «склеивания» двух 48-слойных кристаллов пока обладают только такие гиганты электроники, как Intel и Micron.


3D NAND

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

Возросшая плотность ячеек помогает бороться и с более быстрой деградацией памяти. С этой задачей разобрались «в лоб», с помощью еще большей избыточности массива ячеек.

Прототипы QLC-чипов показали прошлым летом, а первые обещания о выпуске SSD по новой технологии прозвучали в начале этого года. Летом практически все фирмы производящие накопители, сообщили о том, что они уже готовы к массовому выпуску, озвучили названия новых моделей, их цены и характеристики. Сейчас уже можно приобрести SSD с QLC-чипами. Большинство моделей выпускается в форм-факторе M.2 и 2.5", с емкостями 512 гигабайт, 1 и 2 терабайта.

Позиционирование QLC-накопителей


Для начала стоит честно признать, что накопители, созданные по новой технологии QLC, категорически не годятся для серьёзных/критических задач. И причиной тому целый ряд технических трудностей, которые приходится решать инженерам как крупных корпораций-изобретателей, так и китайских «последователей».

К примеру, на сайте Intel новые SSD предлагаются только в сегменте для домашних компьютеров среднего уровня. Особенно оправдано их применение в малопроизводительных нетбуках, в чьи задачи не входят игры или работа с базами данных, а стоимость, наоборот, очень важна. Подобные «печатные машинки» становятся всё более востребованы. Для работы в сегменте «энтерпрайз» предлагаются исключительно накопители с чипами MLC и TLC.

Если сравнивать характеристики брендовых SSD (дешёвые китайские рассматривать нет смысла, недорогие контроллеры убивают все характеристики), то средняя цена QLC-накопителей примерно на 20-30 % ниже MLC, при одинаковом форм-факторе и объёме.

Скорость доступа. Для модели с чипами QLC она составляет: на чтение до 1500 Мб/сек, на запись до 1000 Мб/сек. Для модели на чипах TLC — 3210 Мб/сек и 1625 Мб/сек соответственно. Скорость записи у QLC-накопителя в полтора раза ниже, а чтения — в два. Разница существенная, но для серфинга в инете и редактирования текстов — более чем достаточная.

TBW (Total Bytes Written). Критичный параметр, характеризующий ресурс SSD. Он говорит о том, какое максимальной количество терабайтов можно записать на накопитель. Чем TBW выше, тем более живучий диск и тем дольше он сможет проработать без сбоев. У всех моделей серии 760p ресурс составляет 288 TBW, а у 660p — всего 100 TBW. Практически трехкратная разница.

DWPD (Drive Writes Per Day). Этот показатель надёжности говорит о том, сколько раз в день можно перезаписать весь накопитель целиком, и рассчитывается по формуле:

DWPD = TBW / 0,512 * 365 * 5

где 0,512 — объем накопителя в терабайтах;
365 — количество дней в году;
5 — количество лет гарантии.

DWPD более объективен, потому что при расчете учитывается время, в течение которого производитель обязуется бесплатно решать проблемы с накопителем. Для QLC-модели DWPD равен 0,1, а для TLC-моделей — 0,32. Другими словами, в данном примере каждый день QLC может полностью перезаписывать 50 Гб — это его штатный режим работы. Учитывая, что при той же цене ёмкость QLC-накопителей выше MLC, то средний пользователь «печатной машинки с интернетом» вряд ли успеет выработать этот ресурс.

Эти два устройства — яркий пример того, как инженерам приходится решать множество технических сложностей, которые в QLC проявились ярче, чем в TLC. В частности, у QLC ниже скорость доступа на запись и чтение, ниже ресурс, выше коэффициент WAF (подробнее о нём — ниже). Давайте рассмотрим подробнее основные трудности и методы их решения.

Скорость доступа


Начнём с одной из наиболее заметных для пользователя особенностей QLC SSD — снижения скорости записи при заполнении кэша накопителя. Поскольку скорость доступа у QLC и так сравнительно невысокая, то производители стараются увеличить её с помощью кэширования. В SSD для этого используется собственный массив ячеек диска, которые переводятся в однобитный режим работы — SLC.

Существует несколько алгоритмов кэширования. Зачастую под кэш выделяется небольшая часть ёмкости самого накопителя — в среднем, от 2 до 16 Гб, в некоторых моделях может быть до нескольких десятков гигабайтов. Недостаток метода в том, что если при работе компьютера идет интенсивный обмен данными, то небольшой объем кэша может быстро заполнится и скорость чтения/записи резко упадет.

Более технологичные компании используют продвинутые контроллеры, которые умеют динамически переводить часть ячеек в быстрый режим SLC, в этом случае объем кэша зависит от общего объема накопителя и может достигать 10 %. В современных SSD используются оба метода: сравнительно небольшое количество статического кэша дополняется динамически выделяемым объемом, который получается в разы больше. Чем больше свободного места, тем больше размер кэша и тем сложнее исчерпать его объем. Логично, что более объемный накопитель имеет кэш большего размера, а значит в нем динамический кэш будет работать эффективнее.


Наглядная зависимость размера SLC-кэша от объема накопителя и свободного места на нем.

Ошибки чтения


Усложнение архитектуры QLC по сравнению с TLC привело и к росту количества ошибок чтения данных. Для их исправления потребовалось внедрить принудительное использование алгоритмов ECC (Error correction code, коды коррекции ошибок). С их помощью контроллер самостоятельно исправляет почти все ошибки чтения данных. И разработка эффективных алгоритмов коррекции — одна из сложнейших задач при создании QLC-накопителей, поскольку требуется не только обеспечить высокую эффективность коррекции (выражается в количестве исправленных битов на 1 Кб данных), но и как можно меньше обращаться к ячейкам памяти, чтобы экономить их ресурс. Для этого производители внедряют более производительные контроллеры, но главное — задействуют мощные научно-статистические аппараты для создания и совершенствования алгоритмов.

Ресурс


Особенности архитектуры QLC не только снижают надёжность, но и приводит к явлению «усиления записи» (Write amplification, WA). Хотя корректнее было бы говорить «умножение записи», однако вариант «усиление» пока что больше распространён в Рунете.

В чём суть WA? В SSD физически с ячейками выполняется гораздо больше операций чтения/записи, чем требуется для того объёма данных, непосредственно принятого от операционной системы. В отличие от традиционных HDD, у которых очень небольшой «квант» перезаписываемых данных, данные на SSD хранятся довольно большими «страницами», обычно по 4 КБ каждая. Также есть понятие «блок» — минимальное количество страниц, которые могут быть перезаписаны. Обычно блок содержит от 128 до 512 страниц.

Например, цикл перезаписи в SSD состоит из нескольких операций:

  1. переместить страницы из стираемого блока в место временного хранения,
  2. очистить место занимаемое блоком,
  3. переписать временный блок, добавив новые страницы,
  4. записать обновленный блок на старое место,
  5. очистить место, используемое для временного хранения.

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

Степень «усиления записи» выражается коэффициентом WAF (Write amplification factor): отношение фактически перезаписываемого объёма данных к объёму, который требуется перезаписать. В идеале, когда не используется компрессия, WAF равен 1. Реальные же значения очень сильно зависят от разных факторов, например, от размера перезаписываемых блоков и алгоритмов используемых в контроллерах.

А поскольку ячейки QLC гораздо чувствительнее к количеству циклов перезаписи, то размер WAF стал намного важнее, чем для TLC и MLC.

Какие ещё факторы негативно влияют на WAF в QLC-накопителях?

  • Алгоритм «сборки мусора», который ищет неравномерно заполненные блоки, которые одновременно содержат пустые и заполненные страницы, перезаписывая их таким образом, чтобы блоки содержали только пустые или только заполненные страницы, что, в дальнейшем, уменьшает количество операций, приводящих к WA.

  • Wear leveling (Равномерное распределение нагрузки). Блоки, к которым система обращается часто, регулярно перемещаются в ячейки вместо блоков, которые менее востребованы. Это сделано для того, чтобы в накопителе все ячейки памяти изнашивались равномерно. Но в результате общий ресурс накопителя постепенно снижается, даже если вы используете его как архивное хранилище.

    Вот пример «усиления записи» из-за работы механизмов wear leveling и сборки мусора:

  • Также на величину WAF влияет работа механизма коррекции ошибок (ECC). Как уже говорилось, снизить его вклад в «умножение записи» можно с помощью совершенствования алгоритмов, в том числе LDPC.
  • При достаточном количестве свободного места на SSD, некоторые контроллеры могут переводить часть ячеек NAND в режим с меньшим количеством уровней записи: из QLC в SLC. Это очень существенно ускоряет работу накопителя и повышает его надежность. Но, при уменьшении свободного места, ячейки снова будут перезаписываться в режиме с максимальным количеством уровней. Чем больше свободного места на SSD, тем быстрее и эффективнее он будет работать, при условии, что его контроллер достаточно продвинутый и поддерживает эту функцию. Если часть самых активно используемых ячеек держать в режиме SLC, это повышает общий WAF, но снижает износ.

С ростом WAF в QLC борются различными методами.

Например, с помощью over-provisioning (OP) — выделяя для служебных нужд часть объёма, который не доступен пользователю.

OP = (физическая ёмкость — доступная пользователю ёмкость) / доступная пользователю ёмкость

Чем больше выделяемая область, тем больше свободы у контроллера и быстрее работа его алгоритмов. Например, раньше под OP выделяли разницу между «реальным» и «маркетинговым» гигабайтом, то есть между 109 = 1 000 000 000 байтов и 230 = 1 073 741 824 байтов и, что равняется 7,37 % от общего объёма накопителя. Есть и ряд других ухищрений для выделения служебного пространства. Например современные контроллеры позволяют динамически задействовать под OP весь текущий свободный объём накопителя.

Примерная зависимость WAF от размера OP:

Позволяет снизить WAF и алгоритм разделения статических и динамических данных (Separating static and dynamic data). Контроллер вычисляет, какие данные перезаписываются часто, а какие преимущественно читаются, или вообще не изменяются, и соответствующим образом группирует блоки данных на диске.

К прочим инструментам уменьшения WAF в QLC-накопителях относятся методики последовательной записи (очень примерно это можно сравнить с привычной нам дефрагментацией HDD). Алгоритм определяет блоки, которые могут принадлежать одному большому файлу и не требуют обработки сборщиком мусора. Если операционная система даст команду на удаление или изменение этого файла, то его блоки будут стираться или перезаписываться целиком, не включаясь в цикл WA, что повышает скорость и меньше изнашивает ячейки памяти. Наконец, свой вклад в борьбу с WA вносит компрессия данных перед записью и дедупликация.

Как вы уже поняли, надёжность и ресурс QLC-накопителей зависит далеко не только от используемых чипов памяти, но и от производительности контроллера, а главное — от продвинутости всевозможных алгоритмов, заложенных в контроллер. Многие компании, даже крупные, покупают контроллеры у других фирм, специализирующихся на их выпуске. Небольшие китайские фирмы пользуются недорогими и простыми контроллерами прошлых поколений, руководствуясь не качеством и новизной алгоритмов, а ценой. Крупные компании не экономят на железе для своих SSD и выбирают контроллеры, обеспечивающие накопителю долгую жизнь и бо̒льшую скорость работы. Лидеры среди производителей контроллеров для SSD постоянно меняются. А ведь кроме сложных контроллеров огромную роль играют и алгоритмы прошивок, которые крупные производители разрабатывают самостоятельно, не доверяя это важное дело сторонним компаниям.

Выводы


Главное преимущество QLC перед накопителями на TLC- и MLC-чипах заключается в том, что в тот же физический объём удалось поместить ещё больше памяти. Так что QLC не вытеснят с рынка предыдущие технологии, и уж тем более не станут конкурентами для HDD.

Разница между QLC и TLC по скорости будет заметна при запуске тяжелых программ и при интенсивном обмене данными. Но обычный пользователь этого может не заметить, потому что в компьютерах того уровня, для которых рекомендуются QLC-накопители, программа дольше ожидает действий пользователя, чем работает с данными.

Можно смело сказать, что ниша недорогих накопителей для компьютеров небольшой производительности, когда не имеет смысла переплачивать за повышенную надежность или максимальные скорости записи и чтения, успешно занята. В таких компьютерах QLC SSD может быть единственным накопителем, на котором будут установлены система и необходимые программы, а также храниться данные пользователя. А в энтерпрайзе — революции не произошло, здесь по прежнему пока будут отдавать предпочтение более надёжным TLC и медленным, но неприхотливым HDD.

Однако технологии не стоят на месте, уже в этом году производители обещают начать переход на техпроцесс в 7 нм, а в перспективе, в 2021 году и позже — грядут техпроцессы 5 и 3 нм. Совершенствуются алгоритмы контроллеров, некоторые фирмы обещают «умные» SSD-накопители, которые будут в несколько раз быстрее, при некоторых специфичных сценариях использования, планируется развитие технологий 3D NAND.

Так что, подождем пару лет и посмотрим, что ещё смогут нам предложить производители.

Для получения дополнительной информации о продукции Kingston обращайтесь на официальный сайт компании.

Let's block ads! (Why?)

Комментариев нет:

Отправить комментарий