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

КОДИРОВАНИЕ И ПЕРЕДАЧА ИНФОРМАЦИИ X

УДК 621.391

doi:10.15217/issn1684-8853.2016.3.64

ТЕОРЕТИКО-ИНФОРМАЦИОННЫЙ АНАЛИЗ МНОГОУРОВНЕВОЙ FLASH-ПАМЯТИ Часть 2: Оценка параметров кодов, обеспечивающих заданную надежность хранения данных

А. Н. Трофимова, канд. техн. наук, доцент Ф. А. Таубина, доктор техн. наук, профессор

аСанкт-Петербургский государственный университет аэрокосмического приборостроения, Санкт-Петербург, РФ

Введение: многоуровневая flash-память благодаря высокой плотности записи занимает доминирующее место на рынке энергонезависимых устройств хранения данных и интенсивно используется для хранения данных в весьма обширной сфере приложений. Повышение плотности записи, достигаемое за счет уменьшающегося физического размера ячейки наряду с возрастающим количеством используемых состояний, приводит к снижению надежности хранения данных, что требует использования помехоустойчивого кодирования. Цель: исследование потенциальных возможностей помехоустойчивого кодирования для одной из основных моделей многоуровневой NAND flash-памяти в зависимости как от условий записи и хранения данных, так и заданного уровня надежности хранения данных. Результаты: в явном виде получены соотношения, связывающие между собой основные параметры гипотетических кодов, обеспечивающих заданный уровень надежности хранения данных для одной из возможных моделей flash-памяти, которая описывает страницу чипа памяти как систему с независимыми многоуровневыми ячейками. С использованием полученных соотношений устанавливаются обменные соотношения между скоростью гипотетического кода, его длиной и минимальным расстоянием. Показано, что функция, описывающая зависимость минимального расстояния кода от его скорости, имеет минимум, который соответствует параметрам (гипотетического) кода с наименьшим расстоянием и, следовательно, с потенциально невысокой сложностью декодирования. Скорости таких кодов для типичных случаев оказываются весь-ма близкими к пропускной способности канала (разница составляет примерно 2-3 %). Практическая значимость: полученные результаты позволяют оценить степень близости параметров конкретной схемы кодирования для flash-памяти к их предельным значениям. Показано, что для типичных значений параметров канала хранения данных flash-памяти минимальное расстояние гипотетического кода с потенциально невысокой сложностью декодирования составляет 4 или 5, а длины соответствующих кодов варьируются в пределах примерно от 600 до 900. При этом оказывается, что увеличение числа циклов перезаписи и (или) длительности хранения данных при сохранении требуемой надежности хранения данных приводит к уменьшению длины гипотетического кода с потенциально невысокой сложностью декодирования.

Ключевые слова — многоуровневая NAND flash-память, канал записи, граница случайного кодирования, граница Варшамова — Гилберта.

Введение

Увеличение плотности записи в многоуровневой flash-памяти достигается за счет уменьшения разницы между соседними пороговыми уровнями напряжения в ячейке. Это приводит к возрастанию влияния шума записи/считывания и других факторов, снижающих надежность хранения данных. Как отмечалось в работе [1], вероятность ошибки (raw bit error rate) в многоуровневой NAND flash-памяти оказывается неприемлемо высокой — порядка 10-4 и более, тогда как требуемая вероятность ошибки лежит в диапазоне 1012^-1016. В результате обеспечение требуемой надежности хранения данных может быть достигнуто лишь при использовании помехоустойчивого кодирования.

К настоящему времени предложено довольно много вариантов помехоустойчивого кодирования, предназначенного для многоуровневой NAND flash-памяти: коды БЧХ, коды Рида — Соломона, низкоплотностные коды, решетчатые

коды (см., например, публикации [2-8]). Отметим, что на практике в большинстве чипов с многоуровневой NAND ПавИ-памятью используются коды БЧХ, что объясняется приемлемой (для индустрии) сложностью реализации декодеров БЧХ-кодов.

Как представляется, объективный сравнительный анализ эффективности предложенных вариантов помехоустойчивого кодирования для ПавИ-памяти должен включать, наряду с традиционными характеристиками, и сопоставление с характеристиками, полученными на основе теоретико-информационного анализа. В данной работе в качестве таких характеристик рассматриваются параметры гипотетических кодов, обеспечивающих заданный уровень надежности хранения данных. Под гипотетическим кодом далее понимается код, для которого вероятность ошибки декодирования Ре кодового блока (слова) по максимуму правдоподобия удовлетворяет неравенству Ре < 2-"Е(Д), где Е(Е) — экспонента случайного кодирования. Как правило, гипотетиче-

скии код является случайным кодом и поэтому не имеет регулярной структуры. Параметры гипотетических кодов находятся с использованием а) границ случайного кодирования для многоуровневой NAND ПавИ-памяти, полученными в работе [1], и б) границы Варшамова — Гилберта для д-ичных блоковых кодов. Полученные таким образом параметры представляют собой своего рода опорные отметки, т. е. они позволяют оценить, в какой степени конкретная схема кодирования для ПавИ-памяти близка к потенциально предельным возможностям.

Модель канала

Модель, описывающая канал записи ПавИ-памяти и используемая в настоящей работе, с необходимыми деталями, обоснованиями и ссылками подробно рассмотрена в работе [1]. Здесь для связности изложения приводится краткое формальное описание этой модели.

В изучаемой модели блок ПавИ-памяти рассматривается как множество независимых ячеек. В работе [1] и здесь полагается, что физический носитель может рассматриваться как стационарный канал без заметной тенденции к пакетированию ошибок, поэтому математическая модель представляет собой модель канала без памяти, которая полностью определяется моделью одиночной ячейки ПавИ-памяти. Входные уровни каждой ячейки принимают некоторые фиксированные значения х0, х1, ..., хд-1, а выходные значения представляют собой случайные величины. Распределения этих случайных величин параметризованы значениями х0, х1, ..., х1 и описываются условными функциями плотности вероятности ру|х(у\х), где -н<у<н, х = х0, х1; ..., хд-1. Условные функции плотности вероятности ру|х(у|х) задаются следующим образом:

Ру\х(У \х) =

Ро (У I х),

если х = хо;

Ро (У \х) * Рг (У) * Рс (У) * Ра (У)' если х = х^, х2,..., .

В равенстве (1) использованы следующие обозначения: р0(  \  ) — функции плотности вероятности, задающие распределения номинальных выходных значений; рг(  ), рс(  ), рл(  ) — функции плотности вероятности, определяющие соответственно влияние записи/стирания, взаимную интерференцию ячеек и влияние времени хранения (детали и пояснения — см. [1]). Знаком * в правой части равенства (1) обозначена операция свертки.

Как и в работе [1], будем далее считать, что д = 4 и в рассматриваемом примере значения но-

минальных, или начальных, уровней х0, х1, ..., х3 равны: х0 = 1,4, х1 = 2,6, х2 = 3,2, х3 = 3,93.

Функции плотности вероятности р0(  \  ), задающие распределения начальных уровней, определены как гауссова плотность для х = х0

Ро (У I хо) =

1

-\/2лст

_

_ 2ст2

ст = 0,35

и как равномерные плотности для х = х1, ..., хд-1, т. е.

' 1 I I дг

—, если У _хЛ <-к-; А,- |У и 2

Ро (У \ Ч) =

о в противном случае,

I = 1, 2, ..., д - 1; А1 = А2 = А3 = 0,2.

Функция плотности вероятности рг(  ) задается как двусторонняя симметричная экспоненци-

альная плотность

1 _М Рг(У)=217е "г,

где параметр Хг связан с числом циклов записи/стирания N зависимостью Хг = , Кх = 0,00025.

Функция плотности вероятности рс(  ) в рассматриваемой модели задана как усеченная гауссова плотность, т. е. она имеет вид

Рс(У) =

_ (х_у-с) С _ 2ст?

, если У _цс <и>с;

,лстс

о в противном случае,

где с — нормирующий коэффициент, обеспечивающий выполнения равенства | Рс (у)йу = 1, а остальные параметры имеют значения юс = 0,1цс и стс = 0,4цс, цс = 0,2. Функция плотности вероятности ра(  ) задается как нормальная плотность вероятности

(У_Ца)2

Ра(У) =

1

Т2л<

2ст2а

пста

где величины ца и ста определяются как

ца = _К (х _ хо )Ка№>51п(1 + Т / То);

ста = К (х _ хо)Кт№'6 1п(1 + Т / То).

В этих выражениях, как и ранее, N обозначает число циклов перезаписи; Т — время хранения; Т0 — интервал времени, соответствующий одному часу; Кв = 0,38, Кй = 10-4 и Кт = 4  10-6

Функции плотности вероятности ру|х

мо-

гут быть найдены численно в соответствии с равенствами (1). Для некоторых значений величин N и Т функции ру|х(у|х) могут быть с приемлемой точностью аппроксимированы гауссовыми

е

плотностями. Детали аппроксимации приведены в работе [1]. Рассмотренная модель, определяемая функциями плотности вероятности py|x(y|x) или их гауссовыми аппроксимациями, называемая также моделью с гауссовым шумом, стандартное отклонение которого зависит от входного значения (input-dependent additive Gaussian noise) [9], допускает обобщение на большее число входных уровней, в частности, на шесть, восемь и двенадцать уровней [3]. Такое обобщение не представляется сложным и может быть при необходимости выполнено.

Параметры кодов, обеспечивающих заданный уровень надежности

С использованием построенных границ случайного кодирования для вероятности ошибки на блок можно оценить параметры гипотетического блокового кода, позволяющего достичь требуемого уровня надежности хранения данных. Оценивание основных параметров корректирующего гипотетического кода для канала flash-памяти далее выполняется на основе границы случайного кодирования, рассмотренной в работе [1], для декодера максимального правдоподобия, использующего непрерывный выход канала (мягкие решения). Практическая реализация такого, строго оптимального, алгоритма декодирования может оказаться затруднительной и даже неприемлемой для систем flash-памяти из-за высокой сложности. Возможным выходом может быть применение субоптимальных алгоритмов [10, 11]. Ключевая особенность этих и подобных им алгоритмов состоит в том, что сравнительно простой алгоритм декодирования выполняется несколько раз для различных вариантов формирования жесткого выхода канала (квантования), а окончательное решение принимается с использованием результатов этих попыток декодирования и непрерывного выхода канала. Такие алгоритмы были разработаны несколько десятилетий назад, но интерес к ним вновь возник, и они оказались востребованными при проектировании высокоскоростных систем передачи и хранения информации. Алгоритмы декодирования из этого класса очень незначительно уступают по вероятности ошибки декодирования оптимальным алгоритмам, использующим непрерывный выход канала, но в ряде случаев значительно превосходят их по сложности реализации. Заметную долю сложности таких алгоритмов составляет сложность алгебраического или комбинаторного декодирования жесткого выхода канала, поскольку на этой стадии выполняется несколько попыток декодирования. Сложность алгебраического декодирования зависит от многих параметров, и одним из важнейших факторов, влияющих на слож-

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

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

Предположим, что канал описывается рассмотренной моделью многоуровневой ячейки ПавИ-памяти. Теорема кодирования для канала без памяти [12] утверждает, что существует блоковый код длины п, объема M слов, со скоростью Я, Я = ге-1^2М бит/символ канала, для которого вероятность ошибки на блок Ре ограничена сверху как

Ре < 2~пЕ

где Е(Я) — показатель экспоненты случайного кодирования, вычисляемый по формуле

E(R) = max max (E0 (P, Px)- pR),

Px 0<P<1

где

E0p Px) = -log2 j

\1+P

X Px(x) Pyjx(^lx)1+P

dy.

Важное следствие из теоремы кодирования состоит в том, что пропускная способность канала С и функция Галлагера (4) связаны соотношением

,^Е0

C = max-

Px

dp

P=0

Важной характеристикой канала является вычислительная скорость канала R0, определяемая как

Ro = max Eo (Px, 1) =

Px

~ (

log2 min j XPx

dy.

Эта величина может рассматриваться как предельное значение практически достижимой скорости кода.

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

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

Р* « ^Ре = 5 Ре

где 5 = й/п. Вероятность ошибки на символ и вероятность ошибки на бит связаны неравенствами

(1 /1ся2 q)Ps < Pb < Ps.

Тогда с использованием выражений (3)-(6) можно записать, что существует код, для которого

P «5Ре <52

l_nE

Величина 5 и скорость кода И могут быть связаны между собой границей Варшамова — Гилберта. Для случая д-ичных кодов эта граница может быть сформулирована как [14]

Я =

1сИ2 М > 1 ^^

>- 1сИ2-

п п

X СП ^ _ 1)'

1=о

= 1сИ2 q _11сИ2 £ СП ^ _ 1)г

п 1=о

и при п ^ н представлена в виде Я > 1сЯ2 q _ й(5),

где Л(х) = xlog2q - xlog2x - (1 - х)^2(1 - х). Полагая в выражениях (7) и (8) выполнение равенств, можно записать, что параметры кода п и 5 для требуемого значения вероятности ошибки на бит Рь могут быть заданы как функции от скорости кодирования И, 0 < И < С, в виде

5(Я) = Ы1 (1сЯ2 q _ Я);

п(Я) =

1сИ2 (Рь / 5(Я)) Е(Я) "

Определим также величину а(Я) = 5(Я)п(Я).

Итак, выражения (9)-(11) в совокупности устанавливают взаимосвязь между длиной и минимальным расстоянием гипотетического кода, который обеспечивает заданную вероятность ошибки на бит Рь.

Численные результаты

Зависимости й(И) и п(И) вычислены согласно выражениям (9)-(11) при заданных значениях вероятности ошибки на бит Рь = 10-12 и Рь = 10-14. Результаты вычислений представлены на рис. 1-4.

Как видно из приведенных графиков, кривая й(И) имеет минимум, который соответствует параметрам (гипотетического) кода с наименьшим расстоянием и, следовательно, с малой сложностью декодирования. Этому минимуму соответствует точка на графике п(И), определяющая длину этого кода с потенциально невысокой сложностью декодирования. Как следует из рис. 1, для Рь = 10-12, N = 100, Т = 1 мес. этот код имеет минимальное расстояние й = 4, длину 850 и скорость И « 1,95 бит/символ канала (бит/ячейку). Из рис. 2, представляющего канал записи с другими параметрами, следует, что для Рь = 10-12, N = 1000, Т = 12 мес. параметры кода с потенциально небольшой сложностью имеют значения й = 4, п « 600, И « 1,93 бит/символ канала. Рис. 3 и 4 иллюстрируют взаимосвязь параметров (гипотетического) кода для случая, когда требуемая вероятность ошибки и Рь = 10-14. При числе циклов перезаписи N = 100 и времени хранения Т = 1 мес. код с потенциально невысокой сложностью декодирования имеет параметры й = 4, п « 900 и скорость И « 1,95 бит/символ канала. При увеличении числа циклов перезаписи N до 1000 и длительности хранения данных Т до 12 мес. параметры кода с потенциально небольшой сложностью принимают следующие значения: й = 5, п « 700, И « 1,93 бит/символ канала.

Как видим, снижение требуемой вероятности ошибки Рь на два порядка — с 10-12 до 10-14 — сопровождается увеличением длины гипотетического кода примерно в 1,07-1,2 раза. Увеличение числа циклов перезаписи и (или) длительности хранения данных при сохранении требуемой надежности хранения данных, наоборот, приводит к уменьшению длины гипотетического кода с потенциально невысокой сложностью декодирования. Отметим также, что скорость указанных гипотетических кодов (с потенциально невысокой сложностью декодирования) оказывается весьма близка к пропускной способности канала записи — разница составляет

1 1 1 1 1 1 1 1 1 к:

л 1 ----1-

г т г -1 т г

1,6

--d

1,7 1,8 R,бит/ячейку

1,9

— dmin = 4, R = 1,9544, n = 854

104 103 102 101

: : : i i i ' ' J

6 •  ' !|----^----*---- -----!----- /! iiiii!insa"fisi

:;;;l;;;;LEEEElEEEEEli j jiiiiMiMM -----1----1: 111111111111

—т—г—:-----:—i—т— i i i i

1,6

— R0 = 1,9918

1,7 1,8 1,9 2

R, бит/ячейку

•• — асимптота R = C = 1,9994

Рис. 1. Графики функций d(R) и n(R) для Pb = 10-12, N = 100, T = 1 мес.

2

12 10 8 6 4

1,7 1,8 1,9

R, бит/ячейку

104 103 102 101

-1 4 Ц 1 1 iiiiiiiiiiiiiiii!!!!!!!!!!!!! Ti iiiiiiiiiiiiiiii1Je

" iii ^!!!щ!!!!|!!!!р!!!!!!!!!!!!!| A iiiiliiiipii ! = 1

г гmnr I

: т i t T r г ! , , , , , , , , , 1

1,6

--d(R) О — dmin = 4, R = 1,9337, n = 598 ----R0 = 1,9882

1,7 1,8 1,9 2

R, бит/ячейку

•• —асимптота R = C = 1,9987

Рис. 2. Графики функций d(R) и n(R) для Pb = 10-12, N = 1000, T = 12 мес.

1,6

1,7 1,8 R, бит/ячейку

1,9

— d(R) о— dmin = 4, R = 1,9494, n = 914

104 103 102 101

N¡¡NN¡NNNN¡NN¡¡N¡¡NN¡N111111^111 ===i====F====F===4====^====i====F= ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡И

= == = l= = EEEEE = iliiii=lii = ii = ii = ii = i =1== = =!= = == != = = =

1,6

1,7 1,8

R, бит/ячейку

1,9

— R0 = 1,9918

— асимптота R = C = 1,9994

Рис. 3. Графики функций d(R) и n(R) для Pb = 1014, N = 100, T = 1 мес.

2

2

14 12 10 8 6 4

1 1 1 1 1 1 4.

----- _____

1 --- о —x i: -----.— + '

1,6

1,7 1,8

R, бит/ячейку

1,9

2

104 103 102 101

¡N¡N¡¡¡¡N¡¡N"¡N¡¡NN¡N¡¡¡¡N¡¡NN¡¡11 : : : : />

::::::::i::::c----;-----;----.j^^-i—"^T-1: :c : : t

= = = ^ = = ЕЕ^ееёеёеее|1ЕЕЕЕ ЭЕЕЕЕЁЕЕЕЕЁЕЕЕЕ1ЕЕЕЕ|1ЕЕЕ =

1,6

1,7 1,8 1,9

R, бит/ячейку

2

--d(R) о— dmin = 5, R = 1,9337, n = 719 ----R0 = 1,9882

Рис. 4. Графики функций d(R) и n(R) для Pb = 1014, N = 1000, T = 12 мес.

— асимптота R = C = 1,9997

примерно 2,4 % (в случае N = 100, T = 1 мес.) и примерно 3,3 % (в случае N = 1000, T = 12 мес.).

Разумеется, приведенные значения могут служить лишь предварительными и приблизительными ориентирами для поиска параметров реа-

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

велика) для практических приложений, то следует сместиться по графикам й(И) и п(И) вправо и выбрать код с большим минимальным расстоянием и большей длиной. Например, для достижения скорости кода И = И0 = 1,9982 бит/символ канала при N = 1000, Т = 12 мес., Рь = 10-12 параметры кода должны быть порядка п = 7000...8000 и й = 8...9, и в этих пределах следует проводить дальнейший поиск приемлемых вариантов. Еще раз стоит обратить внимание, что приведенное рассмотрение и примеры справедливы при использовании непрерывного выхода канала. Указанный подход может быть непосредственно распространен для исследования схем кодирования в канале записи с квантованным выходом. Также полученные оценки могут быть полезны для выбора параметров кодов и для важных для практики субоптимальных алгоритмов декодирования, использующих мягкий выход канала.

Заключение

В работе был рассмотрен круг вопросов, связанных с оценкой параметров гипотетических кодов, обеспечивающих заданный уровень надежности хранения данных применительно к одной из возможных моделей ПавИ-памяти. Эта модель описывает систему с независимыми многоуровневыми ячейками. Распределение выходных значений представляет собой случайную величину, определенную на множестве одиночных элементов памяти, распределение которой существенно зависит от ряда мешающих факторов, включающих влияние циклов записи/стирания, взаимную интерференцию ячеек и влияние времени хранения данных. В рассматриваемой модели предполагается отсутствие группирования искажений, поэтому канал хранения данных описывается моделью без памяти с непрерывным выходом. Такая модель задает наилучшее использование выхода канала. Параметры гипотетических кодов определялись путем комбинирования границ случайного кодирования для многоуровневой NAND ПавИ-памяти, полученными в работе [1], и границы Варшамова — Гилберта для д-ичных блоковых кодов.

На основе представленных результатов можно сформулировать следующие выводы:

— функция й(И), описывающая зависимость минимального расстояния кода от скорости И,

Литература

1. Трофимов А. Н., Таубин Ф. А. Теоретико-информационный анализ многоуровневой йавИ-памяти. Ч. 1: Модель канала и границы случайного кодирования // Информационно-управляющие системы. 2016. № 2. С. 56-67. Лэ1:10.15217Дввп1684-8853.2016.2.56

имеет минимум, который соответствует параметрам (гипотетического) кода с наименьшим расстоянием и, следовательно, с потенциально невысокой сложностью декодирования;

— для типичных значений параметров канала хранения данных flash-памяти минимальное расстояние гипотетического кода с потенциально невысокой сложностью декодирования составляет 4 или 5; при этом длины кодов n варьируются в ориентировочных пределах 600-900;

— снижение требуемой вероятности ошибки Pb на два порядка (с 10 12 до 10 14) сопровождается увеличением длины гипотетического кода примерно в 1,07-1,2 раза;

— увеличение числа циклов перезаписи и (или) длительности хранения данных при сохранении требуемой надежности хранения данных приводит к уменьшению длины гипотетического кода с потенциально невысокой сложностью декодирования;

— скорость указанных гипотетических кодов (с потенциально невысокой сложностью декодирования) оказывается весьма близкой к пропускной способности канала — разница составляет примерно 2,4 % (в случае N = 100, T = 1 мес.) и примерно 3,3 % (в случае N = 1000, T = 12 мес.).

Приведенные результаты получены, как отмечалось, для модели канала с непрерывным выходом. На практике сигнал, считываемый из ячейки flash-памяти, подвергается равномерному квантованию (uniform sensing quantization) на 16-32 уровня. Предложенный в данной работе подход может быть непосредственно распространен и на модель с квантованным выходом. Представляется весьма вероятным, что введение 16-уровневого и тем более 32-уровне-вого квантования не приведет к сколько-нибудь существенному изменению приведенных выше основных выводов. В пользу этого говорит и тот факт, что введение квантования для конкретных кодовых схем (см., например, [6, 7]) не приводит к заметному снижению эффективности кодирования.

Работа выполнена при поддержке Минобр-науки РФ при выполнении научно-исследовательской работы в рамках проектной части государственного задания в сфере научной деятельности по заданию № 2.2716.2014/К от 17.07.2014.

2. Sun F., Devarajan S., Rose K., Zhang T. Design of On-Chip Error Correction Systems for Multilevel NOR and NAND Flash Memories // IET Circuits Devices and Systems. 2007. Vol. 1. N 3. P. 241-249.

3. Sun F., Rose K., Zhang T. On the Use of Strong BCH Codes for Improving Multilevel NAND Flash Memo-

ry Storage Capacity. http://www.researchgate.net/ publication/254376882_On_the_Use_of_Strong_ BCH_Codes_for_--Improving_Multilevel_NAND_ Flash_Memory_Storage_Capacity (дата обращения: 26.10.2014).

4. Kurkoski B. M. The E8 Lattice and Error Correction in Multi-Level Flash Memory // Proc. of the IEEE Intern. Conf. on Communications, 5 June-9 June 2011, Kyoto, Japan. 2011. P. 1-5.

5. Dong G., Xie N., Zhang T. On the Use of Soft-Decision Error-Correction Codes in NAND Flash Memory // IEEE Transactions on Circuits and Systems I: Regular Papers. 2011. Vol. 58. N 2. P. 429-439.

6. Li S., Zhang T. Improving Multi-Level NAND Flash Memory Storage Reliability Using Concatenated BCH-TCM Coding // IEEE Transactions on VLSI Systems. 2010. Vol. 18. N 10. P. 1412-1420.

7. Xu Q., Gong P., Chen T. M. Concatenated LDPC-TCM Coding for Reliable Storage in Multi-level Flash Memories // Proc. of the 9th Intern. Symp. on Communication Systems, Networks & Digital Signal Processing (CSNDSP 2014). July 2014. P. 166-170.

8. Kurkoski B. M. Coded Modulation Using Lattices and Reed-Solomon Codes, with Applications to Flash Memories // IEEE Transactions on Selected Areas in Communications. 2014. Vol. 32. N 5. P. 900-908.

9. Huang X., et al. Multilevel Flash Memories: Channel modeling, Capacities and Optimal Coding Rates / X. Huang, A. Kavcic, X. Ma, G. Dong, T. Zhang // Intern. Journal on Advances in Systems and Measurement. 2013. Vol. 6. N 3&4. P. 364-373. http://www. iariajournals.org/systems_and_measurements/ sysmea_v6_n34_2013_paged.pdf (дата обращения: 26.10.2014).

10. Chase D. A Class of Algorithms for Decoding Block Codes with Channel Measurement Information // IEEE Transactions on Information Theory. 1972. Vol. 18. N 1. P. 170-182.

11. Weldon E. Decoding Binary Block Codes on Q-ary Output Channel // IEEE Transactions on Information Theory. 1971. Vol. 17. N 6. P. 713-718.

12. Gallager R. G. Information Theory and Reliable Communication. — N. Y.: John Wiley & Sons, 1968. — 588 p.

13. Clark G., Cain J. Error-Correction Coding for Digital Communications. — N. Y.: Plenum Press, 1981. — 422 p.

14. Van Lint J. H. Introduction to Coding Theory (Graduate Texts in Mathematics, vol. 86). 3rd edition. — Berlin: Springer, 1999. — 227 p.

UDC 621.391

doi:10.15217/issn1684-8853.2016.3.64

Information Theory Analysis for Multilevel Flash Memory.

Part 2: Evaluation of Code Parameters for Given Data Storage Reliability

Trofimov A. N.a, PhD, Tech., Associate Professor, andrei.trofimov@vu.spb.ru Taubin F. A.a, Dr. Sc., Tech., Professor, ftaubin@yahoo.com

aSaint-Petersburg State University of Aerospace Instrumentation, 67, B. Morskaia St., Saint-Petersburg, 190000, Russian Federation

Introduction: Multilevel flash memory due to its higher recording density has a dominant position at the market of non-volatile storage devices, being used extensively in a very wide range of applications. Increasing the recording density achieved by decreasing the physical size of a cell, and the increasing number of states lead to a decrease in the reliability of the data storage and to the need of error-correcting coding. Purpose: The goal is to study the capabilities of error-correcting coding for a model of multilevel NAND flash memory depending on the conditions of the recording and on a given level of the data storage reliability. Results: Explicit relations have been obtained connecting the main parameters of the hypothetical codes which provide a given level of data storage reliability for a flash memory model specifying a memory page as a system with independent multilevel cells. Using the obtained dependencies, trade-off relationships are set up for a hypothetical code between its rate, length and minimum distance. It is shown that the function describing the dependence of the minimum distance on the code rate has a minimum which corresponds to a code with the smallest distance and, hence, with a potentially low decoding complexity. Rates of such codes for typical cases are very close to the channel capacity (the difference is about 2-3%). Practical relevance: The obtained results allow us to estimate how close the parameters of a coding scheme for flash memory are to their limit values. It is shown that for the typical values of flash memory data-storage channel parameters, the minimum distance of a hypothetical code with a potentially low decoding complexity is 4 or 5, and the length of the respective codes are in the range from 600 to 900. A larger number of the rewriting cycles and/or longer duration of data storage with the same required reliability lead to a shorter hypothetical code with a potentially low decoding complexity.

Keywords — Multilevel NAND Flash Memory, Recording Channel, Random Coding Bound, Varshamov-Gilbert Bound.

References

1. Trofimov A. N., Taubin F. A. Information Theory Analysis of Multilevel Flash Memory. Part 1. Channel Model and Random Coding Bounds. Informatsionno-upravliaiuschie sistemy [Information and Control Systems], 2016, no. 2, pp. 56-67 (In Russian). doi:10.15217/issn1684-8853.2016.2.56

2. Sun F., Devarajan S., Rose K., Zhang T. Design of On-chip Error Correction Systems for Multilevel NOR and NAND

Flash Memories. IET Circuits Devices and Systems, 2007, vol. 1, no. 3, pp. 241-249.

3. Sun F., Rose K., Zhang T. On the Use of Strong BCH Codes for Improving Multilevel NAND Flash Memory Storage Capacity. Available at: http://www.researchgate. net/publication/254376882_On_the_Use_of_Strong_ BCH_Codes_for_--Improving_Multilevel_NAND_Flash_

Memory_Storage_Capacity (accessed 26 October 2014).

4. Kurkoski B. M. The E8 Lattice and Error Correction in Multi-Level Flash Memory. Proc. of the IEEE Intern. Conf. on Communications, 5 June-9 June 2011, Kyoto, Japan, 2011, pp. 1-5.

5. Dong G., Xie N., Zhang T. On the Use of Soft-Decision Error-Correction Codes in NAND Flash Memory. IEEE Transactions on Circuits and Systems I: Regular Papers, 2011, vol. 58, no. 2, pp. 429-439.

6. Li S., Zhang T. Improving Multi-Level NAND Flash Memory Storage Reliability Using Concatenated BCH-TCM Coding. IEEE Transactions on VLSI Systems, 2010, vol. 18, no. 10, pp. 1412-1420.

7. Xu Q., Gong P., Chen T. M. Concatenated LDPC-TCM Coding for Reliable Storage in Multi-Level Flash Memories. Proc. of the 9th Intern. Symp. on Communication Systems, Networks & Digital Signal Processing (CSNDSP 2014), July 2014, pp. 166-170.

8. Kurkoski B. M. Coded Modulation Using Lattices and ReedSolomon Codes, with Applications to Flash Memories. IEEE Transactions on Selected Areas in Communications, 2014, vol. 32, no. 5, pp. 900-908.

9. Huang X., Kavcic A., Ma X., Dong G., Zhang T. Multilevel Flash Memories: Channel Modeling, Capacities and Optimal Coding Rates. International Journal on Advances in Systems and Measurement, 2013, vol. 6, no. 3&4, pp. 364-373. Available at: http://www.iariajournals.org/systems_and_ measurements/sysmea_v6_n34_2013_paged.pdf (accessed 26 October 2014).

10. Chase D. A Class of Algorithms for Decoding Block Codes with Channel Measurement Information. IEEE Transactions on Information Theory, 1972, vol. 18, no. 1, pp. 170182.

11. Weldon E. Decoding Binary Block Codes on Q-ary Output Channel. IEEE Transactions on Information Theory, 1971, vol. 17, no. 6, pp. 713-718.

12. Gallager R. G. Information Theory and Reliable Communication. New York, John Wiley & Sons, 1968. 588 p.

13. Clark G., Cain J. Error-Correction Coding for Digital Communications. New York, Plenum Press, 1981. 422 p.

14. Lint J. H. van. Introduction to Coding Theory (Graduate Texts in Mathematics, vol. 86). 3rd edition. Berlin, Springer, 1999. 227 p.

Научный журнал «ИНФОРМАЦИОННО-УПРАВЛЯЮЩИЕ СИСТЕМЫ» выходит каждые два месяца.

Стоимость годовой подписки (6 номеров) для подписчиков России — 4800 рублей,

для подписчиков стран СНГ — 5400 рублей, включая НДС 18%, таможенные и почтовые расходы.

Подписку на печатную версию журнала можно оформить в любом отделении связи по каталогу:

«Роспечать»: № 48060 — годовой индекс, № 15385 — полугодовой индекс,

а также через посредство подписных агентств:

«Северо-Западное агентство „Прессинформ"»

Санкт-Петербург, тел.: (812) 335-97-51, 337-23-05,

эл. почта: press@crp.spb.ru, zajavka@crp.spb.ru,

сайт: http://www.pinform.spb.ru

«МК-Периодика»

Москва, тел.: (495) 681-91-37, 681-87-47,

эл. почта: export@periodicals.ru, сайт: http://www.periodiеals.ru «Информнаука» (РФ + ближнее и дальнее зарубежье) Москва, тел.: (495) 787-38-73, эл. почта: informnauka3@yandex.ru, сайт: http://www.informnauka.еom «Деловая пресса»

Москва, тел.: (495) 962-11-11, эл. почта: podpiska@delpress.ru, сайт: http://delpress.ru/еontaеts.html «Коммерсант-Курьер»

Казань, тел.: (843) 291-09-99, 291-09-47, эл. почта: kazan@komcur.ru,

сайт: http://www.komеur.ru/еontaеts/kazan/

«Урал-Пресс»

Сайт: http://www.ural-press.ru

«Идея»

Сайт: http://idea.еom.ua

«ВТЪ»

Сайт: http://btl.sk.uz/ru/cat17.html и др.

На электронную версию нашего журнала (все выпуски, годовая подписка, один выпуск, одна статья) вы можете подписаться на сайтах НЭБ: http://elibrary.ru; РУКОНТ: http://www.rucont.ru; ИВИС: http://www.ivis.ru/

Полнотекстовые версии журнала за 2002-2015 гг. в свободном доступе на сайте журнала (http://www.i-us.ru), НЭБ (http://www.elibrary.ru) и Киберленинки (http://cyberleninka.ru/ journal/n/informatsionno-upravlyayuschiesistemy).