Лучшая m 2 на 3d nand flash. Вывод. Что выгоднее купить? Отличия SSD от HDD

Продолжаем обсуждать устройство и принцип работы запоминающих устройств на нашем сайте. В прошлый раз мы обсуждали Flash-память (), а сегодня сконцентрируем внимание на одном из типов уже упомянутой Flash-памяти, а именно на NAND-памяти. Частично мы уже разобрались с устройством и работой NAND, так что перейдем к рассмотрению основных алгоритмов, способов подключения и некоторых тонкостей, о которых нельзя забывать, работая с NAND.

Начнем с того, что рассмотрим два типа NAND-памяти – а именно SLC-(single-level cell ) и MLC-(multi-level cell ) устройства. В SLC приборах одна ячейка памяти хранит один бит информации – именно такие устройства мы обсуждали в предыдущей статье. Возможно только два состояния ячейки памяти (полевого транзистора с плавающим затвором). Первое состояние соответствует заряженному затвору, а второе, соответственно, разряженному. Тут все просто – подаем пороговое напряжение и по наличию или отсутствию тока стока можем определить, какой бит записан в данную ячейку памяти.

MLC приборы отличаются тем, что одна элементарная ячейка может хранить несколько бит информации, чаще всего два бита. В таких устройствах различают 4 уровня заряда плавающего затвора, что соответствует 4 возможным сохраненным состояниям:

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

MLC-память имеет меньшее количество максимально возможных циклов перезаписи по сравнению с SLC. Кроме того, SLC быстрее – то есть операции чтения/записи/стирания выполняются за меньшее количество времени. А поскольку для определения состояния ячейки памяти используется только одно пороговое значение напряжения, при использовании SLC-памяти меньше вероятность возникновения ошибки. Но это не значит, что MLC хуже. MLC-память, во-первых позволяет сохранять большее количество информации, а во-вторых дешевле. То есть с точки зрения отношения цена/качество MLC, в принципе, выглядит предпочтительнее.

Переходим к структуре NAND-памяти 😉

Как мы помним, в отличие от NOR-памяти, при использовании NAND мы не имеем доступа к произвольной ячейке памяти. Все ячейки объединены в страницы. А страницы объединены в логические блоки. Каждая страница помимо сохраненной пользователем информации содержит некоторые дополнительные данные – информация о “плохих” блоках, дополнительная служебная информация для коррекции ошибок.

Сложность при работе с NAND заключается в том, что невозможно получить доступ к какой-то конкретной ячейке информации. Запись данных можно производить только постранично, то есть если мы хотим изменить какой-то бит, то нам нужно перезаписать все страницу целиком. А стирать данные и вовсе можно только блоками. Вот для примера характеристики микросхемы NAND-памяти NAND128W3A: размер страницы – 512 байт + 16 байт дополнительной служебной информации, размер блока – 16 кБайт, то есть 32 страницы.

Еще одной проблемой при использовании NAND является то, что количество циклов перезаписи не бесконечно. Таким образом, если запись всегда будет производиться в одну и ту же страницу, она рано или поздно окажется поврежденной. И для того, чтобы обеспечить равномерный износ всех ячеек памяти, контроллер NAND-памяти ведет учет количества циклов записи в каждый отдельный блок памяти. Если контроллер видит, что блок “плохой”, то он может пропустить его и произвести запись в следующий блок. Благодаря этому срок службы носителей информации значительно увеличивается. Если мы хотим записать большой массив данных, то внутри микросхемы памяти все данные будут перемешаны по блокам (работает алгоритм записи в наименее изношенные блоки), а когда встает задача чтения этих данных, контроллер NAND-памяти упорядочит данные и выдаст их нам в первозданном виде.

Со структурой разобрались, напоследок я бы еще хотел немного рассказать о том, как осуществляется подключение микросхем NAND-памяти.

А для этого используется параллельная шина передачи данных, Ширина шины – 8 или 16 байт, в зависимости от конкретного устройства. Линии данных объединены с линиями адреса, что позволяет уменьшить количество занятых выводов. Вот тут хорошо описаны управляющие сигналы и их назначение:

Если мы хотим подключить память к микроконтроллеру, то лучше всего выбрать контроллер, в котором есть аппаратная поддержка передачи данных по параллельному интерфейсу. Например, многие STM32 оснащены модулем FSMC, который позволяет подключить внешнее устройство памяти. Но в это мы сейчас не будем углубляться, лучше оставим эту тему до будущих статей 😉 Возможно, в ближайшее время как раз и попробуем соорудить небольшой пример для STM32, в котором будем записывать и считывать данные из NAND-памяти, так что до скорых встреч!)

Флэш-память NAND использует логический элемент NOT AND, и, как и многие другие типы памяти, хранит данные в большом массиве клеток, где каждая ячейка содержит один или несколько битов данных.

Любой вид памяти может подвергаться влиянию внутренних и внешних факторов, таких как износ, физическое повреждение, ошибки аппаратного обеспечения и прочие. В таких случаях мы рискуем расстаться со своими данными на совсем. Что же делать в таких ситуациях? Не стоит волноваться, поскольку существуют программы восстановления данных , которые восстанавливают данные легко и быстро, без необходимости покупать дополнительное оборудование или, в крайнем случае, начинать работу над утерянными документами заново. Рассмотрим NAND флэш-память детальнее.

Как правило, массив NAND делится на множество блоков. Каждый байт в одном из этих блоков может быть индивидуально написан и запрограммирован, но один блок представляет наименьшую стираемую часть массива. В таких блоках каждый бит имеет двоичное значение 1. Например, монолитное устройство NAND флэш-памяти объемом 2 Гб обычно состоит из блоков по 2048 Б (128 КБ) и 64 на каждый блок. Каждая страница вмещает 2112 Б, и состоит из 2048 байт данных и дополнительной зоны в 64 байта. Запасные области обычно используется для ECC, информации об износе ячеек и другие накладные функции программного обеспечения, хотя физически он не отличается от остальной части страницы. NAND устройства предлагаются с 8-битным или 16-битным интерфейсом. Узел данных подключен к NAND памяти через двунаправленную шину данных 8 или 16 бит. В 16-битном режиме команды и адреса используют 8 бит, остальные 8 бит приходятся на использование во время циклов передачи данных.

Типы флэш-памяти NAND

Флэш-память NAND, как мы уже отмечали, бывает двух типов: одноуровневая (SLC) и многоуровневая (MLC). Одноуровневая флэш-память – SLC NAND (single level cell) хорошо подойдет для приложений, которые требуют высокую и среднюю плотность. Это простейшая в использовании и удобная технология. Как описано выше, SLC NAND хранит один бит данных в каждой ячейке памяти. SLC NAND предлагает относительно высокую скорость чтения и записи, хорошую производительность и алгоритмы коррекции простых ошибок. SLC NAND может быть дороже других технологий NAND в расчете на один бит. Если приложению требуется высокая скорость чтения, например, высокопроизводительная медиа карта, некоторые гибридные диски, твердотельные устройства (SSD) или другие встроенные приложения — SLC NAND может стать единственным подходящим выбором.

Многоуровневая флэш-память – MLC NAND (multilevel cell) предназначена для приложений более высокой плотности и с медленным циклом.

В отличие от SLC NAND многоуровневые ячейки MLC NAND хранят два или больше бит на одну ячейку памяти. Чтобы определить место для каждого бита, применяется напряжение и ток. В устройствах SLC требуется только один уровень напряжения. Если ток обнаружен, то значение бита равно 1; если ток не обнаружен, то бит обозначается как 0. Для устройства MLC для определения значений битов используются три разных уровня напряжения.

Как правило, MLC NAND предлагает объем в два раза больше, чем SLC NAND для одного устройства и стоит также дешевле. Поскольку SLC NAND в три раза быстрее, чем MLC NAND и предлагает производительность выше, более чем в 10 раз; но для многих приложений, MLC NAND предлагает правильное сочетание цены и производительности. В самом деле, MLC NAND представляет почти 80% от всех поставок флэш-памяти NAND. И флэш-память MLC NAND доминирует по выбору потребителя по классу SSD потому, как их производительность превосходит магнитные жесткие диски.

Срок службы твердотельного накопителя зависит от количества байтов, которые были записаны в NAND флэш-память. Большинство устройств на базе MLC имеют гарантию сроком в один-три года. Однако важно понимать, как именно будет использоваться устройство, поскольку SSD на базе MLC могут прослужить меньше если предполагается множественная перезапись на диск. С другой стороны решения на базе SLC прослужат дольше предполагаемых трех лет даже при тяжелых PE циклах.

История NAND-флэш

Флэш-память NAND – это энергонезависимый твердотельный накопитель, что внес значительные изменения в индустрии хранения данных, возраст которой на сегодняшний момент составляет уже 26 лет. Флэш-память была изобретена доктором Фуджио Масуока (Fujio Masuoka) во время работы в компании Toshiba приблизительно в 1980 году. По словам Toshiba имя «флэш» было предложено коллегой доктора Масуока, г-ном Шо Цзи Аризуми (Sho-ji Ariizumi), в виду того, что процесс стирания содержимого памяти напомнил ему вспышку камеры.

Копания Toshiba поставила NAND флэш-память на коммерческую ногу в 1987 году; многое изменилось с тех пор. Рынок NAND флэш-памяти вырос быстро при продажах, в восемь раз превышающих объемы продаж памяти DRAM (Dynamic random access memory — динамическая память с произвольным доступом). NAND память стала высокопрочным устройством хранения данных и выбором многих пользователей. Такая память сегодня используется в различных картах памяти и USB-накопителях, облачных хранилищах встречается у многих пользователей, как в промышленности и предпринимательстве, так и в домашних устройствах. Устройства Apple’s iPhone, iPod и iPad, а также телефоны и планшеты на базе Android также широко используют NAND флэш-память. С тех времен это нововведение пробилось в новую эпоху, в которой потребители могут всегда воспользоваться своими файлами: видео, музыкой, книгами и документами, где бы Вы ни находились.

Высококачественная NAND запрограммирована на чтение информации небольшими блоками, или страницами, в то время, как флэш-память типа NOR считывает и записывает данные по 1 байту за раз. NOR флэш-память более предпочтительна для устройств, которые хранят и запускают коды, обычно небольших объемов.

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

Флэш-память хранит информацию в массиве, состоящем из ячеек памяти и транзисторов с плавающим затвором. В устройствах с ячейками одного уровня (SLC), каждая ячейка хранит только один бит информации. Некоторые более новые типы флэш-памяти, известные как устройства многоуровневых ячеек (MLC), могут хранить больше, чем один бит на ячейку, выбирая между несколькими уровнями электрического заряда с целью применить к транзистору с плавающим затвором и его ячейкам.

Ключевые факты, касающиеся NAND Flash

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

Флэш-чипы: увеличение объемов и более низкая цена флэш-памяти и твердотельных накопителей напрямую зависят от процесса производства микросхем флэш-памяти NAND. SanDisk и Toshiba теперь предлагают линию MLC на 128 ГБ и чип с ячейкой в 3 бита каждая. Среди крупных мировых производителей флэш-памяти находятся такие компании, как: Intel, Samsung, Seagate, Nvidia, LSI, Micron и Western Digital.

Флэш-ключи (или флэшки): первые USB-флэш были разработаны в конце 1990-х годов компанией M-Systems, которая позже была приобретена компанией SanDisk. В 2001 году в США компания IBM начала производить версию памяти объемом в 8 Мб, называемую «память ключей». Сейчас объем такой памяти достигает 128 ГБ и цены были значительно снижены.

Та же компания M-Systems стала первым производителем SSD в 1995 году. С 1999, SN.com зафиксировали 590 разных моделей, запущенных в производство 97 компаниями. Среди остальных, BiTMICRO Networks в 1999 выпустили модель E-Disk SNX35 размером в 3.5 дюйма и объемами от 128MB до 10GB, временем доступа в 500 мс и со скоростью чтения и записи в 4MБ/с с помощью интерфейса SCSI-2. В следующий год M-Systems произвели FFD SCSI объемом в 3 ГБ, 2,5 дюймовый SSD с максимальной скоростью чтения в 4 МБ/с и записи в 3 МБ/с.

Сегодня же можно получить память объемом 16 ТБ (PCIe SSD от компании OCZ) со скоростью чтения до 4 ГБ/с и записи до 3,8 ГБ/с. Компания OCZ также объявила в 2012 году о максимально малом времени записи и чтения информации: 0.04 мс для чтения и 0.02 мс для операций записи.

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

Критерии выбора устройства с NAND-флэш

Итак, когда дело доходит до выбора устройства (на примере SSD) с технологией NAND-флэш необходимо учитывать несколько критериев выбора:

Убедитесь в том, что SSD устройство, операционная и файловая система поддерживает TRIM, особенно, если карта использует контроллер жёсткого диска, что усложняет процесс сбора «мусора», ненужных данных:

— узнайте о том, поддерживает ли Ваша ОС трим можно узнать в любом источнике информации; — существуют приложения, которые способствуют добавлению трим-технологии для Вашей ОС, если такова не поддерживается. Но прежде узнайте, не повредит ли это общей производительности устройства. SSD с памятью NAND станет отличным выбором, когда нужна высокая производительность, отсутствие шума, устойчивость к внешним факторам влияния или малое потребление энергии: — непоследовательное считывание даст возможность увеличить производительность по сравнению с HDD; — узнайте о максимально возможной производительности устройства, чтобы не превысить пределы; Для лучшего выполнения операций и круглосуточного их проведения лучше выбирать SLC, чем MLC: — SSD на базе NAND отлично ускоряет работу серверов, но помните, что для этого также понадобиться запасное место для «мусора» и/или трим. — Система RAID с SSD даст высокие показатели производительности и устойчивости, но используйте специально разработанные для SSD рэйд-контроллеры, иначе накопиться столько «мусора», что не справиться даже трим или система сбора. Устройства SSD с большими показателями выносливости, конечно же, прослужат дольше: — Например, выбирайте устройство объемом в 100 ГБ вместо 128 ГБ, 200 ГБ вместо 256 ГБ и так далее. Тогда Вы будете точно знать, что 28 или 56 и так далее гигабайт памяти это, возможно, зарезервированное место для расчета износа, реорганизации файлов и дефектных ячеек памяти. Для использования в промышленности, на производстве или в офисах, лучше выбирать устройства бизнес-класса, например, PCI Express (PCIe) SSD устройство:

Карты PCIe со специально настроенным контроллером SSD может дать очень высокую производительность ввода-вывода данных и хорошую выносливость.

2017-05-25 Дата последнего изменения: 2018-10-10

В статье рассматриваются: Особенности применения микросхем NAND FLASH , методы разметки страниц и управления плохими блоками. Рекомендации по программированию на программаторах.

CОДЕРЖАНИЕ:

1. ТЕОРИЯ

1.1. Отличие микросхем NAND FLASH от обычных микросхем

Если не вникать в тонкости технологий, то отличие микросхем NAND от других микросхем памяти заключается в следующем:

  • Микросхемы NAND имеют очень большой объем .
  • Микросхемы NAND могут иметь плохие (сбойные) блоки .
  • Размер страницы записи не является степенью 2 .
  • Запись в микросхему осуществляется только страницами , стирание - минимум блоками .

Есть еще несколько отличий, но первые две особенности являются ключевыми. Больше всего проблем доставляет наличие плохих блоков .

1.2. Организация микросхем NAND FLASH

Более подробно об организации и структуре микросхем NAND можно прочитать в специальной литературе, мы же отметим, что:

  • Микросхемы NAND организованы в страницы (pages ), страницы в блоки (bloks ), блоки в логические модули (lun ).
  • Размер страницы NAND не кратен степени 2 .
  • Страница состоит из основной и запасной (spare ) областей.

По замыслу разработчиков NAND в основной области должны находятся сами данные , а в запасной (резервной) области - маркеры плохих блоков , контрольные суммы основной области, прочая служебная информация .

Если говорят о размере страницы микросхемы NAND 512 байт или байт, то речь идет о размере основной области страницы, без учета запасной .

1.3. Способы использования запасной области страницы

Еще раз напомним, что по замыслу разработчиков NAND микросхем в запасной области должны находится: маркеры плохих блоков , контрольные суммы основной области данных, прочая служебная информация.

Большинство разработчиков описывает только место расположения маркеров плохих блоков в поставляемых микросхемах. По остальным аспектам использования запасной области даются общие рекомендации и алгоритм вычисления ЕСС, обычно по Хэмингу. Samsung идут несколько дальше, разработав рекомендации с названием "Запасная область флэш-памяти NAND. Стандарт назначения " ("NAND Flash Spare Area. Assignment Standard", 27. April. 2005, Memory Division, Samsung Electronics Co., Ltd).

Итак, этот стандарт предполагает следующее использование запасной области:

Для микросхем с размером страницы 2048+64 бай т основная и запасная область страницы разбивается на 4 фрагмента (сектора) каждая:

Область Размер (байт) Фрагмент
Основная 512 Сектор 1
512 Сектор 2
512 Сектор 3
512 Сектор 4
Запасная 16 Сектор 1
16 Сектор 2
16 Сектор 3
16 Сектор 4

Каждому фрагменту их основной области ставится в соответствие фрагмент запасной области .

Использование запасной области (для каждого из четырех фрагментов)
у микросхем с размером страницы 2048+64 байт:
Смещение
(байт)
Размер
(байт)
Назначение Описание
Маркер плохого блока
Зарезервировано
Логический номер сектора
Зарезервировано для номера сектора
Зарезервировано
ECC код для основной области страницы
ECC код для логического номера сектора
Зарезервировано

Но это не единственный "стандарт" для распределения памяти страниц, только нам известны их несколько десятков, например:

  • "NAND FLASH management under WinCE 5.0 ", NXP;
  • "Bad Block Management for NAND Flash using NX2LP ", December 15, 2006, Cypress Semiconductor;
  • "OLPC NAND Bad Block Management ", OLPC.

1.4. Образ NAND и двоичный образ

Вы можете столкнуться с двумя вариантами образа для записи :

  1. Двоичный файл не разбитый на страницы и без запасной области .
    Такой вариант возможен если вы - разработчик устройства с использованием NAND или получили такой файл от разработчика. Такой образ подходит для записи в микросхемы со страницами любого объема и любым распределением запасной области, только нужно знать каким методом будет формироваться запасная область.
  2. Образ, считанный из другой микросхемы (образца), содержащий запасную область с разметкой плохих блоков, служебной информацией и контрольными кодами.
    Такой образ можно записать только в микросхему с точно такими же размерами страниц и блоков.

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

1.5. Заводская маркировка плохих блоков

Единственное что более или менее стандартизовано, так это заводская маркировка плохих блоков .

  • Плохие блоки маркируются на 0-й или 1-й странице для микросхем с размером страницы менее 4К.
  • Для страниц 4К и более , маркировка может находиться на последней странице блока.
  • Сам маркер плохих блоков располагается в запасной области страницы в 5-м байте для маленьких страниц (512 байт) и в 0-м байте для больших (2K).
  • Маркер плохого блока может иметь значение 0x00 или 0xF0 для маленьких страниц и 0x00 для больши х.
  • Хорошие блоки всегда маркируются 0xFF .
  • В любом случае значение отличное от 0xFF программатор воспринимает как маркер плохого блока .
  • Как правило, в современных NAND плохой блок полностью заполнен значением 0x00 .

Есть одна проблема: плохой блок можно стереть . Таким способом можно потерять информацию о плохих блоках микросхемы.

Однако, если микросхема уже работала в устройстве, далеко не всегда используется такая методика маркировки плохих блоков. Иногда даже информация о плохих блоках не хранится в памяти NAND. Но, чаще всего, если даже разработчик программного обеспечения устройства использует иную схему управления плохими блоками, заводскую разметку предпочитает не стирать.

1.6. Управление плохими блоками

Разработчики NAND микросхем предлагают использовать следующие схемы управления плохими блоками:

  • Пропуск плохих блоков
  • Использование запасной области

Также к методам управления плохими блоками иногда относят использование коррекции ошибок (ECC). Необходимо отметить, что использование коррекции одиночных ошибок не избавляет от множественных ошибок и все равно вынуждает использовать одну из приведенных выше схем. Кроме этого, большинство NAND микросхем имеют гарантировано бессбойную область, в которой не появляются плохие блоки. Бессбойная область, как правило, располагается в начале микросхемы.

Указанные методы управления плохими блоками хорошо описаны в технической документации производителей NAND и широко обсуждены в литературе по использованию NAND . Однако коротко напомним их суть:

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

Поэтому логическим развитием является схема использования запасной области :
По этому методу весь объем памяти разбивается на две части: основная и резервная. При появлении сбойного блока в основной памяти он заменяется блоком из запасной памяти, а в таблице переназначения блоков делается соответствующая запись. Таблица переназначения хранится или в гарантировано бессбойном блоке или в нескольких экземплярах. Формат таблицы разный, хранится она в разных местах. Опять таки Самсунг описывает стандарт на формат и расположение таблицы, но ему мало кто следует.

2. ПРАКТИКА

2.1. Сканирование плохих блоков микросхемы NAND

Программатор ChipStar позволяет быстро сканировать микросхему NAND на наличие плохих блоков в соответствии с заводской маркировкой плохих блоков.

Выберите пункт меню "Микросхема|Искать плохие блоки ", микросхема будет проверена на наличие плохих блоков. Результат показан в виде таблицы.

Это действие необходимо выполнить только в том случае, если вы хотите просто просмотреть список плохих блоков. Во всех остальных случаях поиск плохих блоков выполняется автоматически, когда это необходимо.

2.2. Плохие блоки в образе NAND

При считывании образа микросхемы NAND программатор дополнительно сохраняет информацию о размере страницы и блока микросхемы. Информация сохраняется в отдельном файле. Так если вы считали и сохранили образ микросхемы в файле <имя_файла>.nbin программа создаст еще один файл: <имя_файла>.cfs . При открытии файла <имя_файла>.nbin файл <имя_файла>.cfs так же будет считан. В файле <имя_файла>.cfs записывается информация о размере страницы и блока микросхемы. После считывания микросхемы или открытия файла типа .nbin , производится фоновое сканирование образа на наличие плохих блоков исходя из информации о размере страницы и блока.

Параметры NAND и информацию о плохих блоках можно посмотреть в закладке "NAND " редактора программатора:

Двоичный образ NAND можно просматривать в закладке "Основная память ":

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

2.3.Стирание NAND

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

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

2.4. Тестирование микросхемы на отсутствие записи

По умолчанию программатор игнорирует все плохие блоки при проверке, но если отключить опцию "Сканирование и пропуск плохих блоков " плохие блоки будут проверены что, естественно, приведет к ошибкам тестирования.

2.5. Запись готового образа в микросхему

Запись образа NAND в микросхему несколько отличается от обычных FLASH микросхем. Прежде всего должны совпадать размеры страниц образа и целевой микросхемы. Если используется управление плохими блоками должны совпадать размеры блоков образа и микросхемы.

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

Способ 1: игнорирование плохих блоков

Простое копирование с игнорированием плохих блоков (плохие блоки пишутся так же, как нормальные).

Исходный образ Микросхема
(исходное состояние)
Микросхема
(результат)
Блок 0
хороший
Блок
чистый
Блок 0
хороший
Блок 1
плохой
Блок
чистый
Блок 1
ложный
Блок 2
хороший
Блок
чистый
Блок 2
хороший
Блок 3
хороший
Блок
плохой
Блок 3
сбойный
Блок 4
хороший
Блок
чистый
Блок 4
хороший
Граница записи
Блок 5
хороший
Блок
чистый
Блок
чистый

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

Способ 2: обход плохих блоков

Исходный образ Микросхема
(исходное состояние)
Микросхема
(результат)
Блок 0
хороший
Блок
чистый
Блок 0
хороший
Блок 1
плохой
Блок
чистый
Блок
чистый
Блок 2
хороший
Блок
чистый
Блок 2
хороший
Блок 3
хороший
Блок
плохой
Блок
плохой
Блок 4
хороший
Блок
чистый
Блок 4
хороший
Граница записи
Блок 5
хороший
Блок
чистый
Блок
чистый

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

Способ 3: пропуск плохих блоков

Исходный образ Микросхема
(исходное состояние)
Микросхема
(результат)
Блок 0
хороший
Блок
чистый
Блок 0
хороший
Блок 1
плохой

Блок
чистый
Блок 2
хороший
Блок 2
хороший
Блок
чистый
Блок 3
хороший
Блок 3
хороший
Блок
плохой
Блок
плохой
Блок 4
хороший
Блок
чистый
Блок 4
хороший
Граница записи
Блок 5
хороший
Блок
чистый
Блок
чистый

Запись с пропуском плохих блоков предполагает что в устройстве используется именно такой алгоритм управления плохими блоками, а не какой-либо другой. При этих условиях гарантировано правильное копирование информации.

Способ 4: запись только гарантированно бессбойной области

Исходный образ Микросхема
(исходное состояние)
Микросхема
(результат)
Блок 0
хороший
Блок
чистый
Блок 0
хороший
Блок 2
хороший
Блок
чистый
Блок 1
хороший
Граница записи
Блок
плохой
Блок
чистый
Блок
чистый
Блок 3
хороший
Блок
плохой
Блок
плохой
Блок 4
хороший
Блок
чистый
Блок
чистый
Блок 5
хороший

Блок
чистый

Блок
чистый

В большинстве современных NAND микросхем первые блоки (как минимум один) гарантированно не имеют сбоев. Во многих устройствах в начале микросхемы располагается код загрузчика и операционной системы устройства. Часто бывает достаточно копирования только этих областей.

В диалоге настроек режимов записи укажите записываемый размер в блоках.

Другие способы управления плохими блоками

Программное обеспечение программаторов ChipStar поддерживает любые алгоритмы управления плохими блоками NAND при помощи внешних плагинов. При наличии установленных плагинов описания дополнительных методов появляются в списке "Управление плохими блоками NAND ". Настроить параметры выбранного метода можно нажав кнопку "Внешний плагин ".

Использование кодов, исправляющих ошибки (ECC)

Использование кодов, исправляющих ошибки позволяет восстанавливать одиночные ошибки на странице NAND.

Могут быть использованы разные алгоритмы, восстанавливающие одиночные ошибке в секторе. В зависимости от алгоритма ECC , может быть восстановлено разное количество ошибок на сектор (512+16 байт). Под термином "одиночные " понимается ошибка только в одном бите данных. Для NAND с размером страницы 512+16 байт понятие "сектор " и "страница " совпадают. Для NAND с большим размером страниц программатор ChipStar использует схему разметки страницы на сектора, как описано . В установках записи или верификации можно указать, сколько ошибок на сектор может исправлять используемый в вашем устройстве алгоритм. Соответственно, микросхемы с допустимым количеством ошибок не будут забракованы, информация о количестве исправимых ошибок выводится в окне статистики:

Информацию о количестве допустимых ошибок на сектор для каждой конкретной микросхемы можно уточнить в документации на микросхему. Все вновь добавляемые микросхемы NAND вносятся в базу данных программатора с учетом количества допустимых ошибок.

При самостоятельном добавлении микросхем:

  • если поддерживается ONFI , то допустимое количество ошибок на сектор считывается из таблицы параметров микросхемы и устанавливается в нужное значение.
  • если микросхема не поддерживает ONFI , пользователь должен установить значение самостоятельно , используя документацию на микросхему.

Для новых микросхем NAND производства Samsung значение допустимого количества ошибок на сектор закодировано в составе идентификатора микросхемы. Поэтому, для таких микросхем допустимое количество ошибок на сектор также будет установлено правильно.

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

Программное обеспечение программатора ChipStar предлагает косвенный статистический способ выявления и устранения одиночных ошибок. Способ позволяет выявить только неустойчивые ошибки с не гарантированной достоверностью. Для выполнения чтения с выявлением ошибок нужно выбрать режим "Выборочное чтение " и на закладке "NAND" отметить флажок "Включить режим исправления ошибок "

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

Статистический алгоритм выявления ошибок работает следующим образом:

  1. Страница NAND считывается несколько раз подряд (не менее трех).
  2. Считанные данные побайтно сравниваются.
  3. Если ошибок сравнения не выявлено, предполагается, что страница не содержит ошибок.
  4. Если обнаружены ошибки при сравнении, страница считывается еще несколько раз.
  5. По каждой ошибке подсчитывается количество считанных единиц и нулей .
  6. Правильным значением ("0" или "1") считается, то, которых оказалось больше.

Алгоритм хорошо работает в том случае, если вероятность ошибки в конкретном бите микросхемы меньше 0.5. При чтении микросхемы ведется подсчет "исправленных" ошибок и вероятности правильного чтения.

2.6. Преобразование двоичного образа в образ NAND

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

Задайте режим преобразования в формат NAND: "Образ двоичный... ", укажите размер страницы и блока NAND или выберите необходимую микросхему. Выберите формат запасной области. Программатор поддерживает простое заполнение области значениями FF встроенными средствами и другие способы при помощи плагинов. Вместе с программатором поставляется плагин, реализующий назначения запасной области, рекомендованный Самсунг.

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

2.7. Совместимость с образами NAND, считанными другими программаторами

Если у вас есть образ NAND , считанный другим программатором или полученный из другого источника, его нужно преобразовать в формат, пригодный для записи программатором ChipStar .

Для этого выполните следующие действия:

  • Откройте ваш файл, выберите пункт меню "Правка|Переключить режим NAND редактора ". Появится диалог, как показано выше.
  • Задайте режим преобразования в формат NAND : "Образ уже NAND... ", укажите размер страницы и блока NAND или выберите необходимую микросхему. Нажмите "Продолжить ".
  • В редакторе появится закладка "NAND " и начнется сканирование образа на плохие блоки.
  • Полученный файл можно сохранить в формате NAND , файл получит расширение .nbin по умолчанию.

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

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

  1. Приоткрыть завесу над невнятными спецификациями, опубликованными на сайтах производителей SSD и магазинов.
  2. Снять вопросы, которые могут у вас возникнуть при изучении технических характеристик памяти разных накопителей и чтения обзоров, написанных для «железных» гиков.

Для начала я проиллюстрирую проблему картинками.

Что указывают в характеристиках SSD

Технические характеристики NAND, публикуемые на официальных сайтах производителей и в сетевых магазинах, далеко не всегда содержат подробную информацию. Более того, терминология сильно варьируется, и я подобрал для вас данные о пяти различных накопителях.

Вам что-нибудь говорит эта картинка?

Ок, допустим, Яндекс.Маркет — не самый надежный источник информации. Обратимся к сайтам производителей — так легче стало?

Может быть, так будет понятнее?

А если так?

Или все-таки лучше так?

Между тем, во всех этих накопителях установлена одинаковая память! В это трудно поверить, особенно глядя на две последних картинки, не правда ли? Дочитав запись до конца, вы не только в этом убедитесь, но и будете читать подобные характеристики как открытую книгу.

Производители памяти NAND

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

  • Intel/Micron
  • Hynix
  • Samsung
  • Toshiba/SanDisk

Intel и Micron не случайно делят одно место в списке. Они производят NAND по одинаковым технологиям в рамках совместного предприятия IMFT .

На ведущем заводе в американском штате Юта одна и та же память выпускается под марками этих двух компаний почти в равных пропорциях. С конвейера завода в Сингапуре, который сейчас контролирует Micron, память может сходить также и под маркой ее дочерней компании SpecTek.

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

Казалось бы, при таком раскладе с памятью все должно быть просто. Однако существует несколько типов NAND, которые в свою очередь подразделяются по разным параметрам, внося путаницу.

Типы памяти NAND: SLC, MLC и TLC

Это три разных типа NAND, главным технологическим отличием между которыми является количество битов, хранящихся в ячейке памяти.

SLC является самой старой из трех технологий, и вы вряд ли найдете современный SSD с такой NAND. На борту большинства накопителей сейчас MLC, а TLC - это новое слово на рынке памяти для твердотельных накопителей.

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

Занятно, что пока широкая публика обеспокоена ограниченным количеством циклов перезаписи SSD, по мере развития технологий NAND этот параметр только снижается!

Как определить конкретный тип памяти в SSD

Вне зависимости от того, приобрели вы твердотельный накопитель или только планируете покупку, после прочтения этой записи у вас может возникнуть вопрос, вынесенный в подзаголовок.

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

На специализированных сайтах можно найти базы данных по SSD, и вот вам пример .

Я без проблем нашел там характеристики памяти своих накопителей, за исключением SanDisk P4 (mSATA), установленного в планшете.

В каких SSD установлена самая лучшая память

Давайте сначала пройдемся по основным пунктам статьи:

  • производителей NAND можно пересчитать по пальцам одной руки
  • в современных твердотельных накопителях используется два типа NAND: MLC и TLC, только набирающая обороты
  • MLC NAND различается интерфейсами: ONFi (Intel, Micron) и Toggle Mode (Samsung, Toshiba)
  • ONFi MLC NAND делится на асинхронную (дешевле и медленнее) и синхронную (дороже и быстрее)
  • производители SSD используют память разных интерфейсов и типов, создавая разнообразный модельный ряд на любой кошелек
  • официальные спецификации редко содержат конкретную информацию, но базы данных SSD позволяют точно определить тип NAND

Конечно, в таком зоопарке не может быть однозначного ответа на вопрос, вынесенный в подзаголовок. Вне зависимости от бренда накопителя, NAND соответствует заявленным спецификациям, иначе ОЕМ-производителям нет смысла ее покупать (они дают на SSD свою гарантию).

Однако… представьте, что лето вас порадовало небывалым урожаем земляники на даче!

Она вся сочная и сладкая, но вам просто не съесть столько, поэтому вы решили продать часть собранных ягод.

Самую лучшую землянику вы оставите себе или выставите на продажу? :)

Можно предположить, что производители NAND устанавливают самую лучшую память в свои накопители. Учитывая ограниченное количество компаний, выпускающих NAND, список производителей SSD получается еще короче:

  • Crucial (подразделение Micron)
  • Intel
  • Samsung

Опять же, это лишь предположение, не подкрепленное достоверными фактами. Но разве вы поступили бы иначе на месте этих компаний?

Привет друзья! На днях один наш постоянный читатель задал хороший вопрос. Он спросил, к ак узнать, сколько ещё времени проработает его или к ак узнать рабочий ресурс его SSD. Также на прошлой неделе другими пользователями были заданы ещё вопросы на эту тему, например:

Какой тип флэш-памяти для SSD лучше: NAND, 3D NAND, 3D V-NAND и NOR ?

Как узнать, из каких чипов памяти состоит купленный SSD (SLC, MLC или TLC ) и какая память лучше?

Что такое - количество циклов перезаписи или TBW?

На все эти интересные вопросы мы ответим в сегодняшней статье.

Как узнать, сколько времени проработает ваш твердотельный накопитель SSD

Не побоюсь повториться и скажу, что в компьютере важно всё, в том числе и твердотельный накопитель. Перед его покупкой обязательно узнайте производительность и срок службы своего будущего SSD. Начинающему пользователю здесь легко запутаться, так как вместо срока службы SSD, в интернете все твердят о каком-то количестве циклов перезаписи . Объясню. Ц икл перезаписи, это перезапись всего объёма (всех ячеек) твердотельного диска, но контроллер равномерно перезаписывает ячейки. Для нашего удобства производители указывают (рассчитывают по формуле) не циклы перезаписи, а суммарный объем данных в терабайтах, который можно записать на накопитель . Называется такой объём - TBW (Total Bytes Written - Всего байт написано ). Ч ем больше объём диска, тем больше у него TBW. Зная TBW, вы можете точно рассчитать срок службы своего твердотельника. Лимит TBW может отличаться на разных SSD в разы!

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

Производительность и срок службы SSD зависят от двух слагаемых - типа чипов флеш-памяти NAND: (SLC, MLC, TLC) и контроллера с прошивкой. Именно от них напрямую зависит и цена накопителя.

В твердотельных накопителях существует два основных типа Flash-памяти: NOR и NAND . Технология NAND является более быстрой и она дешевле. Память NAND на сегодняшний день усовершенствовали. Появилась память 3D NAND и 3D V- NAND. Если брать рынок предлагаемых на данный момент на рынке SSD, то 5 процентов принадлежит 3D V-NAND, 15 процентов 3D NAND, остальные 80 процентов NAND. Д анные эти с погрешностью, но небольшой.

В свою очередь Flash-память: NAND может иметь три типа чипов памяти: SLC, MLC и TLC. На сегодняшний день в основном продаются SSD на основе флеш-памяти MLC и TLC. По TLC и MLC предлагаемых SSD на рынке 50 на 50. У памяти TLC лимит TBW меньше.

  1. SLC - Single Level Cell - является самой старой и быстрой из трех технологий. Имеет высокую производительность, низкое потребление электроэнергии, наибольшую скорость записи и большой лимит TBW (суммарный объем данных, который можно записать на накопитель). Стоимость твердотельника на основе чипов памяти SLC очень дорогая и с ней очень трудно найти современный SSD.
  2. MLC - Multi Level Cell – обладает меньшей стоимостью, меньшей скоростью работы и меньшим TBW .
  3. TLC - Three Level Cell – обладает ещё меньшей стоимостью, меньшей скоростью работы и меньшим TBW, по сравнению с чипами MLC . Память TLC всегда широко использовалась в обычных флешках, но с приходом новых технологий удалось использовать её и в твердотельных накопителях.

В какой программе можно увидеть тип памяти твердотельного накопителя: TLC и MLC

Показать тип памяти SSD сможет программа AIDA64, официальный сайт разработчика https://www.aida64.com/

В главном окне программы выбираем «Хранение данных»,

затем выбираем модель SSD, например у меня в системе установлено три SSD и я выберу первый - Samsung 850 Evo 250GB. Как видим, тип флеш-памяти накопителя TLC.

У второго накопителя Kingston SHSS37A/240G тип флеш-памяти MLC.

Как узнать ресурс твердотельного накопителя

Для примера узнаем ресурс Kingston SHSS37A/240G.

Переходим на официальный сайт изготовителя устройства https://www.hyperxgaming.com/ru

Выбираем «Твердотельные накопители» --> «Savage».

Ёмкость 240 Гб

и видим суммарный объем данных (TBW) , который можно записать на накопитель Kingston SHSS37A объёмом 240 Гб - 306 Тб.

Давайте сравним его с накопителем Samsung 850 Evo 250GB.

Переходим на официальный сайт изготовителя http://www.samsung.com/ru/ssd/all-ssd/

Отмечаем пункт - Накопитель SSD 850 Evo Sata III.

Ёмкость 240 Гб и жмём левой кнопкой мыши на изображение SSD.

«Показать все характеристики»

Видим в самом низу показатель. Ресурс записи: 75 Тб.

Получается, что у SSD Kingston SHSS37A/240G ресурс количества циклов перезаписи TBW больше в четыре раза.

Если у вас SSD-накопитель OCZ, то идём на сайт https://ocz.com/us/ssd/

Как узнать суммарный объем данных, который уже записан на твердотельный накопитель

Для этого воспользуемся программой CrystalDiskInfo.

В главном окне программы выберем мой SSD Samsung 850 Evo 250GB. В пункте «Всего хост-записей» видим объем записанных на накопитель данных 41,088 ТБ. Если сравнить эту цифру с указанным на официальном сайте Ресурсе записи: 75 Тб, то можно сделать вывод, что на SSD можно ещё записать 33 ТБ данных.

В случае с SSD Kingston SHSS37A/240G, программа CrystalDiskInfo не может показать суммарный объем записанных на накопитель данных.

В этом случае воспользуемся программой SSD - Z.

Официальный сайт разработчика http://aezay.dk/aezay/ssdz/

Скачиваем и запускаем программу.

В главном окне, в пункте «Bytes Written» видим объем записанных на накопитель данных 43,902 ТБ.

Если сравнить эту цифру с указанным на официальном сайте Ресурсе записи: 306 Тб, то можно сделать вывод, что на SSD можно ещё записать 262 ТБ данных.

CrystalDiskInfo начиная с версии 7_0_5 может работать с новыми дисками, использующими новейший новый протокол NVM Express (Toshiba OCZ RD400, Samsung 950 PRO, Samsung SM951). Предыдущая версия программы такие диски тупо не видела.