Научная статья на тему 'ОЦЕНКА СТАТИСТИЧЕСКИХ ХАРАКТЕРИСТИК ФУНКЦИОНИРОВАНИЯ LDPC-ДЕКОДЕРА НА ИМИТАЦИОННОЙ МОДЕЛИ'

ОЦЕНКА СТАТИСТИЧЕСКИХ ХАРАКТЕРИСТИК ФУНКЦИОНИРОВАНИЯ LDPC-ДЕКОДЕРА НА ИМИТАЦИОННОЙ МОДЕЛИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
27
6
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЭЛЕКТРОСВЯЗЬ / КОДИРОВАНИЕ / НИЗКОПЛОТНОСТНЫЕ КОДЫ / МОДЕЛИРОВАНИЕ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Важенин Николай Афанасьевич, Кирьянов Иван Андреевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Важенин Николай Афанасьевич, Кирьянов Иван Андреевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «ОЦЕНКА СТАТИСТИЧЕСКИХ ХАРАКТЕРИСТИК ФУНКЦИОНИРОВАНИЯ LDPC-ДЕКОДЕРА НА ИМИТАЦИОННОЙ МОДЕЛИ»

Электронный журнал «Труды МАИ». Выпуск № 59

www.mai.ru/science/trudy/

УДК 621.391.2

Оценка статистических характеристик функционирования LDPC-декодера на имитационной модели

Н.А. Важенин, И.А. Кирьянов

Аннотация

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

Ключевые слова: электросвязь; кодирование; низкоплотностные коды; моделирование

1. Введение

Коды с малой плотностью проверок на четность (LDPC-коды от англ. Low-density parity-check code или низкоплотностные коды) описываются проверочной матрицей, в которой содержатся в основном нули и малое число единиц [1,2,3,4]. В частности, у (n, j, к) низкоплотностного кода, проверочная матрица состоит из n строк, а вес единиц в столбцах и строках матрицы равен j и к соответственно. Таким образом, описываются регулярные низкоплотностные коды. Наряду с ними, существуют нерегулярные конструкции низкоплотностных кодов. Они задаются весовыми распределениями единиц в строках и столбцах проверочной матрицы. Первой работой по этой теме стал труд Р. Галлагера «Low-density parity-check code» [5]. В работе были описаны требования к низкоплотностным кодам, возможные способы их построения и некоторые способы декодирования. В настоящий момент данные коды считаются одними из наиболее эффективных. Так известен низкоплотностный код, обеспечивающий отличие на рекордные 0.0045 дБ от предела Шеннона [7].

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

2. Декодирование низкоплотностных кодов

В своей работе [5] Галлагер предложил два базовых алгоритма декодирования низкоплотностных кодов: алгоритм с перевёртыванием символа «Bit flip» и алгоритм с распространением доверия «Belief propagation (BP)». Позднее, в работе [6] были рассмотрены две модификации алгоритма с распространением доверия: APP - Based Decoding Algorithm и BP-Based Decoding Algorithm, обеспечивающие большую скорость декодирования, но проигрывающие в энергетике базовому алгоритму с распространением доверия. Однако для работы этих алгоритмов не требуется знать отношение сигнал шум в канале, чего нельзя сказать об алгоритме BP, который использует эту информацию для вычисления вероятностей. На ряду с перечисленными, существуют и другие алгоритмы декодирования LDPC-кодов, позволяющие при незначительном ухудшении вероятности ошибки обеспечить еще большую скорость работы [6]. В данной работе описаны алгоритмы «Bit flip»» и «Belief propagation (BP)».

2.1 Алгоритм с перевёртыванием символа «Bit flip»

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

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

превысит этот порог, то изменяем символ xl = xl Ф1.

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

Всё это приводит к следующей процедуре декодирования: 1. Вычисление синдрома по принятому слову, на нулевой итерации. Если получен

нулевой синдром или проделано итераций больше выбранного максимального

значения, процедура завершается.

2. Нахождение числа невыполнившихся проверок для каждого символа xl

3. Инвертирование символа или символов с наибольшим значением, найденным в п.2

4. Переход к шагу 1.

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

2.2 Алгоритм с распространением доверия «Belief propagation» по вероятностям

Этот алгоритм работает с мягкими решениями демодулятора. Обозначим через m -номер проверки, то есть номер строки в проверочной матрице низкоплотностного кода; l -номер принятого символа, то есть номер столбца в проверочной матрице низкоплотностного кода; Z(m) - множество символов, которые участвуют в m-ой проверке; /u(l) - множество проверок, в которых участвует l-ый символ. Алгоритм итеративно вычисляет два типа условных вероятностей [7]:

• qxmt - вероятность того, что l-ый символ имеет значение x по информации, полученной от всех проверочных вершин в графе Таннера, кроме вершины m.

• rxmt - вероятность того, что уравнение, соответствующее проверочной вершине m, удовлетворяется, если значение l-го символа равно х, а остальные символы независимы с вероятностями qm , где l е Z(m) \ l. Последняя запись означает, что

l изменяется по всему множеству Z(m) кроме номера l. Начальные установки. Для каждого принятого символа l следует установить априорные вероятности р\ и р0 того, что была принята единица и ноль, соответственно.

Для каждого ненулевого элемента проверочной матрицы установить значения q0mt и qlm/ так, что

q0mj = р0 qlj = р\. (1)

Шаг 1. Пересчет проверочных узлов. Для каждого ненулевого элемента проверочной матрицы вычислить

^ = nfcr- qlA (2)

и

<0= (1 + ^)/2, <0= (1 -SrJ)l2. (3)

Шаг 2. Пересчет символьных узлов. Для каждого ненулевого элемента проверочной матрицы вычислить

qij = р П rmл > qlj = р П rl-л, (4)

m'GjU(£ )\m m,GJu(0)\m

и нормировать с множителем а = 1/(q°m0 + qlmt),

q0m,t = aql,t, qlm,t = aql,o • (5)

Для каждого l вычислить апостериорные вероятности

q0 = р0 П С, ql = р П <t, (6)

и нормировать их с множителем а = l/(q° + qj),

qo0 = а0, q\ = aq\. (7)

По полученным апостериорным вероятностям q° и формируется новый жесткий вектор, так, что l-ый символ равен 1, в случае, если > 0.5, и 0 в остальных случаях. Если все

проверки сходятся, декодирование заканчивается. В противном случае следует вернуться к шагу 1.

2.3 Алгоритм с распространением доверия «Belief propagation» по надежностям

Алгоритм «Belief propagation» можно очевидным образом модифицировать так, чтобы использовать логарифм отношения правдоподобия LLR вместо вероятностей [7]. Это позволяет убрать масштабирование на шаге 2. В этом случае, на шаге 1 обработки сообщения потребуется функция tanh(L(c,)/2). При построении такого декодера задачей декодирования является максимизировать условную вероятность P(Cm | Y), где Cm - кодовое

слово, а Y - наблюдаемый на выходе канала блок символов. В случае LDPC-кодов, декодер принимает посимвольное решение. Отношение правдоподобия вычисляется по следующей формуле:

не,)=log PCiom (8)

" P(C, = 1| Y)

Начальные установки. Каждому принятому символу I приписываются логарифмические отношения правдоподобия Ь(е1) соответствующих символов принятого "мягкого" слова. Затем, декодер осуществляет итерации, каждая из которых состоит из двух шагов. Шаг 1. Пересчет проверочных узлов.

Для каждого ненулевого элемента проверочной матрицы вычислить [8]

L(rmJ) = 2• tanh-1( П tanh(!• L(qmV))). (9)

l'e^(m)M 2

Для первой итерации L(qml) инициализируется как L(cl). Шаг 2. Пересчет символьных узлов.

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

L(qmJ) = L(Ci ) + X L(rmJ). (10)

m 'e^(t)\m

Для каждого l вычислить оценку апостериорного логарифмического отношения правдоподобия L(Ql) для передаваемых символ cl.

L(Ql) = L(Ci ) + X L(rmJ ). (11)

mGju(f)

Мягкими решениями для Cl являются LQ ) так, что

c = Г0, если L(Ql) > 0| (12)

C [1, если L(Ql) < 0 J . (

Если все проверки сходятся, декодирование заканчивается. В противном случае следует вернуться к шагу 1.

3. Описание имитационной модели цифровой линии радиосвязи

Целью моделирования являлось получение ряда статистических характеристик декодера низкоплотностных кодов, работающего по алгоритму «Belief propagation» по надежностям. Моделирование проводилось в среде MATLAB/Simulink. Структурная схема линии цифровой радиосвязи приведена на рисунке 1.

Рисунок 1 - Структурная схема цифровой линии радиосвязи

Источник сообщений формирует бинарную последовательность блоками по 600 символов. Размер блока обусловлен размерностью порождающей и проверочной матрицы. На рисунке 2 представлена проверочная матрица, используемая при моделировании. Заполненные участки матрицы соответствуют ненулевым элементам.

Столбцы проверочной матрицы

Рисунок 2 - Проверочная матрица моделируемого низкоплотностного кода Эпюра в точке 1 представлена на рисунке 3.

Время

Рисунок 3 - Эпюра сигнала на выходе источника сообщений

Последовательность поступает на ЬБРС кодер, осуществляющий перемножение последовательности на порождающую матрицу. Эпюра на выходе кодера представлена на рисунке 4.

2

Время

Рисунок 4 - Эпюра сигнала на выходе ЬБРС кодера

Закодированная последовательность поступает на модулятор ФМ-2. При моделировании использовался метод комплексной огибающей, в котором сигнал представляется в виде двух составляющих: синфазной и квадратурной, причем для сигнала ФМ-2 квадратурная составляющая равна 0, а синфазная изменяется в диапазоне от 1 до -1.

Передаче символа 1 будет соответствовать сигнал с амплитудой по синфазной составляющей -1, а по квадратурной 0. В случае передачи символа 0, сигнал будет иметь амплитуду по синфазной составляющей 1, а по квадратурной 0. Векторное представление сигналов для модуляции ФМ-2 приведено на рисунке 5. Эпюра в точке 3 представлена на рисунке 6. Здесь малиновая линия соответствует амплитуде сигнала для квадратурной составляющей, а желтая для синфазной.

Синфазная составляющая

Рисунок 5 - Векторное представление сигнала ФМ-2

Время

Рисунок 6 - Эпюра сигнала на выходе модулятора

В канале сигнал подвергается воздействию белого шума, в результате чего сигнал меняет свои амплитуды по синфазной и квадратурной составляющей, соответственно. Векторное представление зашумленного сигнала приведено на рисунке 7. Эпюра сигнала в точке 4 на рисунке 8.

3 2

-2 -3

-3-2-1 0 1 2 3

Синфазная составляющая

Рисунок 7 - Векторное представление зашумленного сигнала ФМ-2

4

Время

Рисунок 8 - Эпюра сигнала на входе демодулятора

Сигнал поступает на демодулятор, который может выдавать как жесткие решения "0" и "1", так и мягкие решения, представляющие собой надежности принятых символов. Эпюра сигнала в точке 5 в случае жестких решений приведена на рисунке 9.

5

Время

Рисунок 9 - Эпюра сигнала на входе декодера

Последовательность на рисунке 9 декодируется. Сигнал в точке 6, в случае, если ошибок не произошло, или они были исправлены должен соответствовать сигналу в точке 1.

Время

Рисунок 10 - Сравнение эпюр в точках 6 и 1.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

4. Результаты моделирования

4.1 Характеристика помехоустойчивости

В качестве характеристики помехоустойчивости будем использовать зависимость вероятности битовой ошибки - BER (от англ. Bit Error Rate) от битового отношения сигнал-шум. На рисунке 11 приведена зависимость BER для исследуемого низкоплотностного кода при декодировании по алгоритму распространения доверия по надежностям при различном числе итераций.

Рисунок 11 - Характеристика помехоустойчивости исследуемого помехоустойчивого кода

Энергетический выигрыш при 7 итерациях по сравнению с кривой без кодирования по уровню 10-6 составляет 10 дБ. Выигрыш обусловлен применением алгоритма, исправляющего ошибки, возникшие в результате воздействия белого шума в канале.

4.2 Законы распределения кратности ошибок при различных отношениях

сигнал-шум

Полученные на основе моделирования законы распределения показывают вероятность появления ошибки определенной кратности на выходе декодера, если декодер не справляется с декодированием принятого слова. С увеличением отношения сигнал шум, математическое ожидание количества ошибок в слове (кратность ошибки) стремится к 0 (рисунок 12). Среднеквадратическое отклонение кратности ошибки так же стремится к 0 (рисунок 13).

0.5 1 1.5 2 2.5 3

Битовое отношение Сигнал/шум (дБ)

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

Битовое отношение ситнал/шум (дБ)

Рисунок 13 - Среднеквадратическое отклонение относительного количества ошибок на выходе декодера в зависимости от отношения сигнал шум.

Законы распределения количества ошибок в принятом кодовом слове в зависимости от отношения сигнал шум представлены на рисунке 14. Характеристики получены на основе ограниченной выборки в 1000 слов по 600 символов.

А

Б

1

0.9

0.3

0.7

п

ь-

и о 0.6

1

ь 0.5

к

о

а.

Л> 0.4

са

0.1

0.2

0.1

0

1 0.9 0.3 0.7 .0 и 0.6 о X К 0.5 О а ф 0.4 со 0.1 0.2 0.1

I

I.

О 2 4 9 В 10 12 14 1С 18 20 22 24 26 28 10 32 14 1В 40 42 44

Кратность ошибки

В

О 2 4 9 В 10 12 14 16 18 20 22 24 26 28 10 12 14 16 18 40 42 44

Кратность ошибки

Г

Рисунок 14 - Законы распределения ошибок при 2 итерациях и: А - 0 дБ; Б - 1 дБ; В - 2 дБ;

Г - 4 дБ.

4.3. Законы распределения итераций при различных отношениях сигнал шум

С увеличением отношения сигнал шум, математическое ожидание количества итераций стремится к 1 (рисунок 15). Законы распределения количества итераций в зависимости от отношения сигнал шум представлены на рисунке 16. Для их получения при моделировании декодеру было установлено ограничение на максимальное число итераций

равное 100. Характеристики получены при полной достоверности на ограниченной выборке в 1000 слов по 600 символов.

Рисунок 15 - Математическое ожидание количества итераций в зависимости от отношения

сигнал шум.

°о 1 : 1

Л.

Количество итераций

А

10 11 12 13

4 5 6 7 8 9 10 11 12 13

Количество итераций

В

I °

а..

\ 1 т

II.

10 11 12 13 14

Количество итераций

Б

4 5 6 7 8 9 10 11 12 13

Количество итераций

Г

Рисунок 16 - Законы распределения количества итераций при : А - 0 дБ; Б - 1 дБ;

В - 2 дБ; Г - 4 дБ;

4.4 Зависимость необходимого числа итераций для обеспечения заданной достоверности при различных отношениях сигнал шум

Необходимое ограничение на максимальное число итераций, как правило, определяется из исправляющей способности кода и времени, отведенного на декодирование кодового слова. Зависимость необходимого числа итераций, которое выставляется декодеру для обеспечения определенной вероятности битовой ошибки, представлена на рисунке 17. Зависимость получена из характеристики БЕЯ (рисунок 11).

-V-..... \ - Р~=10е-3 Р~=10е-4 - р—=1 Ое-5 10е-6

V \\

\ \ \

о 0.5 1 1.5 2 25 3 35 л 45 Отношение сигнал шум {дБ)

Рисунок 1 7 - Зависимость необходимого числа итераций для обеспечения заданной достоверности при различных отношениях сигнал шум.

На основе полученных результатов можно устанавливать ограничение на максимальное число итераций для заданных значений достоверности передачи информации и отношения сигнал-шум. Например, для вероятности битовой ошибки 10-6 и битового отношения сигнал-шум 3 дБ, как следует из рисунка 17, максимальное число итераций в декодере должно быть установлено не менее трёх.

5. Выводы

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

помощью имитационной модели цифровой линии связи с низкоплотностным кодеком, декодер которого работает по этому алгоритму, были получены оценки вероятности битовой ошибки (BER) на выходе декодера. Анализ показал, что для обеспечения вероятности битовой ошибки 10-6 требуется битовое отношение сигнал-шум 0.5 дБ при ограничении числа итераций декодирования равным 7. Использование рассмотренного кода позволяет получить энергетический выигрыш по сравнению с турбокодом порядка 2 дБ по уровню 10-6 при примерно равных условиях (длина кодового слова, скорость кодирования, канал с АБГШ). Помимо этого был проведен анализ ряда статистических характеристик, описывающих работу декодера, который показал, что с увеличением отношения сигнал/шум наблюдается уменьшение математического ожидания кратности ошибок на выходе декодера, а так же среднего числа итераций. Эти зависимости могут быть использованы для определения текущего отношения сигнал/шум. Кроме того, на основе полученных зависимостей в работе предложен метод определения ограничения на необходимое число итераций в зависимости от рабочего отношения сигнал шум и требуемой битовой вероятности ошибки.

6. Библиографический список

1. Овчинников А.А. Обработка информации при передаче LDPC-кодами по дискретным и полунепрерывным каналам, - М.: РГБ, 2005. - (Из фондов Российской государственной библиотеки)

2. Золотарев В.В., Овечкин Г.В. Обзор исследований и разработок методов помехоустойчивого кодирования, 2005.

URL: http://www.mtdbest.iki.rssi.ru/pdf/obzor_po_kodir2.pdf, (дата обращения 2.07.12).

3. Владимиров С.М. Использование кодов с малой плотностью проверок на чётность, 2007. URL: http://frtk.ru/conf/radiotechn/Vladimirov-site.pdf, (дата обращения 2.07.12).

4. Зуборев Ю.Б., Золотарев В.В., Овечкин Г.В. Труды Российского научно-технического общества радиотехники, электроники и связи имени А.С.Попова, 12-ая Международная конференция и выставка «Цифровая обработка сигналов и её применение», Москва, 2010 г.

5. R. G. Gallager. Low Density Parity Check Codes. Cambridge, MA: MIT Press, 1963.

6.M. Fossorier, M. Mihaljevic„ H. Imai. Reduced Complexity Iterative Decoding of Low-Density Parity-Check Codes Based on Belief Propagation. IEEE Transactions on Communications1 47(5), May 1999.

7. Р. Морелос Сарагоса «Искусство помехоустойчивого кодирования. Методы, алгоритмы, применение». Техносфера. Москва, 2005 г.

8. fec.ldpcdec. URL: http://www.kxcad.net/cae_MATLAB/toolbox/comm/ug/fec.ldpcdec.html,

(дата обращения 2.07.12)

Сведения об авторах

Важенин Николай Афанасьевич, доцент Московского авиационного института

(национального исследовательского университета), к.т.н.;

МАИ, Волоколамское ш., 4, Москва, А-80, ГСП-3, 125993;

тел.: (499) 158-40-82, 8-916-175-19-95; e-mail: N.Vazhenin@mai.ru

Кирьянов Иван Андреевич, студент Московского авиационного института (национального исследовательского университета). Авиационная улица, 68, Москва, 123182; тел. 7-916-570-93-03; e-mail: cucutnog@bk.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.