РАДИОТЕХНИКА И СВЯЗЬ ОМСКИЙ НАУЧНЫЙ ВЕСТНИК № 3 (123) 2013
*
управлением являются С1 — схема электрическая принципиальная, С2 — технологические требования, С3 — требования разработчика. Входом в каждый блок является, как правило, выход из предыдущего блока (рис. 6).
На рис. 6 показана диаграмма более низкого второго уровня, выражающая последовательность действий инженера-конструктора.
Таким образом, благодаря SADT-методологии проверка печатного узла становится «прозрачной» и «ступенчатой». Она позволяет проверить каждый аспект, будь это радиотехнический, как проверка на соответствие схемы электрической принципиальной, технологический на заранее предусмотренное производство и уровень класса точности, так и конструкторский на выявление определенного вида недочетов. Такая проверка позволяет предусмотреть и проверить зоны нагрева печатной платы и отвода тепла, установку экранов и их экранирующие свойства.
Библиографический список
1. Лобова, Г. Н. БЛЭТ-технология индивидуальной исследовательской деятельности : моногр. / Г. Н. Лобова. — Омск : ОмГТУ, 2009. - 102 с.
ЛОБОВА Галина Николаевна, кандидат физикоматематических наук, доцент кафедры «Средства связи и информационная безопасность» Омского государственного технического университета. ОСИНКИНА Марина Евгеньевна, ведущий инженер-конструктор Омского научно-исследовательского института приборостроения.
Адрес для переписки: [email protected]
Статья поступила в редакцию 10.06.2013 г.
© Г. Н. Лобова, М. Е. Осинкина
УДК 621391 256 И. А. БАТЫРЕВ
Г. В. СВИСТУНОВ
Омский научно-исследовательский институт приборостроения
ДЕКОДЕР LDPC В СИСТЕМЕ КАНАЛЬНОГО ДЕКОДИРОВАНИЯ ПРИЕМНИКА ЦИФРОВОГО МЕДИАВЕЩАНИЯ СТАНДАРТА РАВИС
Работа посвящена рассмотрению основных методов декодирования кодов LDPC, применимых в системе канального декодирования приемника цифрового медиасигнала стандарта РАВИС. Приведены результаты моделирования для отдельных параметров кода, предусмотренных стандартом.
Ключевые слова: РАВИС, LDPC, методы декодирования.
1. Введение. В последние два десятилетия на исследование низкоплотностных (low-density parity check — LDPC) кодов было направлено множество усилий. Одной из основополагающих работ в этой области была статья [1]. С тех пор было опубликовано немало трудов, наглядно показавших, что повышенное внимание инженеров и исследователей к кодам LDPC вполне обосновано.
Большой интерес представляет совершенствование механизмов декодирования для обеспечения лучшего быстродействия и энергоемкости, но, тем не менее, на данный момент проектирование декодеров LDPC кодов представляет довольно сложную задачу.
Анализу эффективности схем декодирования и вопросам построения низкоплотностных кодов посвящены, в частности, работы А. Г. Солтанова, А. А. Овчинникова. Аппаратная реализация декодера LDPC в подсистеме канального декодирования стандарта DVB-S2 рассматривается в работах таких
авторов, как Г. В. Овечкин, А. В. Чикин, F. Kienle, T. Brack, N. Wehn.
Целью данной работы является рассмотрение возможных алгоритмов декодирования низкоплотностных кодов для реализации декодера LDPC в приемнике цифрового медиасигнала стандарта РАВИС.
Ниже (рис. 1) показаны основные подходы к реализации декодера LDPC [2 — 5]. Рассмотрим основные этапы работы представленных алгоритмов подробнее.
2. Алгоритм с инверсией бита (BF). BF-
алгоритм — простейшая схема декодирования низкоплотностных кодов. Декодер вычисляет все проверки и инвертирует бит на любой из позицей, которая фигурировала в большем некоторого заданного порога числе не удовлетворенных проверочных уравнений. Затем снова вычисляются проверочные уравнения и процесс продолжается, пока все проверки не будут выполнены. Проверкой называется
Рис. 1. Взаимосвязь алгоритмов декодирования LDPC-кодов
Рис. 2. Оценка вероятности ошибки BF-алгоритма
любая строка проверочной матрицы Н кода LDPC. Проверка считается выполнившейся для вектора принятого сигнала X, если скалярное произведение X на проверку равно нулю. Если .-й элемент проверки не равен нулю, то говорят, что элемент х. принятого вектора X участвует в данной проверке.
Таким образом, одна итерация BF-алгоритма включает в себя следующие операции:
1) для принятого вектора вычисляются все проверки;
2) проверяется, не превышено ли максимальное число итераций;
3) если число не выполнившихся проверок, в которых участвовал некоторый бит принятого вектора, превышает заданный порог, бит инвертируется;
4) если выполнились все проверки на четность, декодирование заканчивается. В противном случае выполняется следующая итерация алгоритма [2, 5].
Ниже (рис. 2) представлен результат моделирования алгоритма с инверсией бита для канала основного сервиса (КОС) и надежного канала данных (НКД) стандарта РАВИС [6]. Здесь и далее предполагается передача двоичных сигналов по каналу с аддитивным белым гауссовым шумом.
Алгоритм с инверсией бита может найти свое применение в коротких высокоскоростных кодах, исправляющих небольшое количество ошибок, кроме того, к его достоинствам можно отнести линейное возрастание сложности декодирования с ростом длины кода, при условии, что степени кодовых и проверочных вершин графа Таннера остаются постоянными [7]. Однако использование этого алго-
Рис. 3. Оценка вероятности ошибки декодирования в канале
НКД (размер блока — 1066 бит, скорость кода — 1/2)
ритма декодирования для низкоплотностных кодов с параметрами, предусмотренными стандартом РАВИС, не способно обеспечить достаточного выигрыша в помехоустойчивости.
3. Алгоритм с итеративным распространением доверия (IBP). Этот алгоритм работает не с двоичными значениями принятой реализации, ас их надежностями. Надежностью i-го символа принятого вектора будем считать величину, характеризующую удаление принятого значения от некоторого порога, при котором оба значения переданного символа равновероятны. Источником надежностей для декодера является демодулятор с мягким выходом. В процессе работы алгоритма проверочные и кодовые узлы обмениваются сообщениями, представляющими собой пересчеты надежностей битов. Эта процедура, по сути, является распространением между узлами информации о достоверности решений, на основании чего алгоритм и получил свое название.
Здесь и далее приняты следующие условные обозначения:
qtJ — сообщения от j-го кодового узла j-му проверочному узлу;
r , — ответы от j-го проверочного узла j-му кодовому узлу;
LLR. — логарифмическое отношение правдоподобия (log-l ikehood ratio) для j-го символа;
Bj — множество номеров кодовых узлов, входящих в j-ю проверку;
C. — множество проверок, в которых участвует j-й кодовый узел.
ОМСКИЙ НАУЧНЫЙ ВЕСТНИК № 3 (123) 2013 РАДИОТЕХНИКА И СВЯЗЬ
РАДИОТЕХНИКА И СВЯЗЬ ОМСКИЙ НАУЧНЫЙ ВЕСТНИК № 3 (123) 2013
Перед декодированием необходимо произвести инициализацию, которая включает в себя установку максимального числа итераций, формирование надежностей каждого символа в виде логарифмических отношений правдоподобия и обнуление всех ответов проверочных узлов, т.е. для всех г. = 0, где /= = 1... п-к, ;=1...п.
Далее, в рамках одной итерации алгоритма, выполняются следующие операции:
1) вычисляются надежности символов в форме LLR и формируются сообщения проверочным узлам:
д,.=шг,+Х
(1)
2) вычисляются проверки и формируются сообщения кодовым узлам:
тц = 21апЬ
п
дк /
. ЛагЛ——
.кеВ}£*1 2
(2)
3) формируется выходной вектор, то есть выносится жесткое решение по надежностям для каждого бита по правилу:
(3)
4) проверка принадлежности полученного вектора Ь. к пространству кодовых слов (по сути, пересчет проверок на четность, как в алгоритме BF). Если полученный вектор принадлежит коду, то декодирование завершается. Если вектор не принадлежит коду и число выполненных итераций не превышает заданного, то переходим к шагу 1;
5) проверяется, не превышено ли максимальное число итераций. Если число выполненных итераций превысило порог, то фиксируется отказ от декодирования (ошибка) и на выход декодера идет просто принятое слово без изменения.
Максимальное число итераций обычно определяется эмпирически, исходя из приблизительной дисперсии шума в канале, исправляющей способности кода и быстродействия декодирующей системы, которое, в свою очередь, зависит от вычислительных ресурсов и длины кодового слова [8, 9].
4. Алгоритм быстрого декодирования по надежностям (UMP BP). Рассмотрим «мягкий» вектор у={у0,..., Уп-1}, пришедший в декодер. Для случая двоичной модуляции, при которой все биты кодового слова отображаются во множество {-1, +1} и передаются по симметричному каналу с двоичным входом и мягким выходом, поэтому надежность /-го принятого символа будет равна абсолютной величине принятого значения, т.е. г.= |у.| .
При декодировании используется вектор «жестких» решений х={х0,..., х } и вектор надежностей г={г0 ,..., г }. По аналогии с вероятностным декодированием, каждому ненулевому символу проверочной матрицы приписываются два числа: х... и г , соответственно представляющие собой «жесткое» решение относительно символа /, полученное при помощи всех проверок, кроме -й, и надежность символов г-й проверки без учета/-го символа. Декодирование также является итеративным. Одна итерация представляет собой следующую последовательность действий:
1) для всех проверок вычисляется надежность относительно символа /, представляющая собой минимальное значение надежностей всех символов, входящих в проверку, кроме самого символа ]’:
2) для всех символов принятого вектора и всех проверок производится пересчет надежностей символов проверок. Если проверка, в которую входил некоторый символ, не выполняется, то надежность г уменьшается на величину надежности проверки г'.., в противном случае надежность г, увеличивается на г' , учитываются все проверки, кроме г-й. Если после применения всех проверок для какого-то символа/, величина г . стала меньше нуля, то обновленная надежность г, берется по модулю, а жесткое решение х, инвертируется;
3) аналогично пересчитываются надежности принятого вектора: если г-я проверка, в которую входит /-й символ, нарушается, то из надежности г. вычитается надежность г-й проверки, иначе надежность символа увеличивается на надежность проверки. Если после применения всех проверок для какого-то символа / величина г. стала меньше нуля, то обновленная надежность г. берется по модулю, а «жесткое» решение х... инвертируется;
4) если «жесткое» решение х является кодовым словом, декодирование заканчивается, иначе декодер начинает следующую итерацию.
Сложность декодера иМР значительно ниже, чем сложность декодера, пересчитывающего вероятности, но оценка вероятности ошибки декодирования в канале с АБГШ на 0,5 дБ хуже, чем вероятность ошибки декодирования вероятностного декодера [10, 11].
5. Алгоритм многопорогового декодирования (МПД). Модификацией быстрого декодера по надежностям, позволяющей добиться приближения вероятности ошибки декодирования к вероятности, получаемой при вероятностном декодировании, является многопороговое декодирование. Поскольку на первых итерациях декодирования иМР надежности символов еще плохо определены, результатом работы декодера может стать не исправление ошибок, а внесение новых и последующее их размножение.
Основная идея многопорогового декодирования по надежностям состоит в том, чтобы изменять значения порогов инвертирования символов от одной итерации к другой. На первых итерациях порог инвертирования символов выбирается так, чтобы количество инвертированных символов было минимальным (вплоть до инвертирования только одного символа на первой итерации), а на последующих итерациях пороги инвертирования постепенно повышаются [2, 4].
6. Алгоритм быстрого декодирования минимум-суммы (MS). Алгоритм минимум-суммы является удобным для реализации упрощением алгоритма 1ВР. Основное различие этих алгоритмов состоит в способе вычисления значений г . В алгоритме минимум-суммы для вычисления сообщений от проверочных узлов к кодовым, вместо выражения (2), используется более простое с вычислительной точки зрения:
(5)
причем проигрыш от применения подобного упрощения составляет примерно 0,5 дБ.
7. Результаты моделирования. Общую сложность одной итерации методов декодирования можно оценить по количеству основных опера-
ций сложения [12]. Оценки вычислительной сложности основных алгоритмов декодирования могут быть произведены по формулам: 2M(dr-1) + + N(dr+Iog2dr—2) + 3N(dc +1) (IBP-алгоритм),
M(dr—1)+ N(dr+Iog2dr-2) + 3N(dc+1) (UMP-алгоритм), M(dr—1)+Ndc—1 (BF-алгоритм). Здесь N — длина кодового слова, M — количество информационных бит в кодовом слове, dr, dc — количество единиц в столбце, строке проверочной матрицы кода. На примере кода LDPC(20, 5) с параметрами проверочной матрицы dr =3, dc = 4, который был рассмотрен еще Галлагером в [8], можно показать, что для одной итерации алгоритма IBP требуется 380 операций сложения, для алгоритма UMP — 360 операций, для алгоритма BF — 99 операций.
Заключение. Все рассмотренные алгоритмы декодирования в большей или меньшей степени удовлетворяют требованиям стандарта [6] к помехоустойчивости. Однако алгоритм жесткого декодирования малоэффективен для длинных кодов, а потому наибольший интерес представляют алгоритмы мягкого декодирования.
Среди итеративных процедур декодирования наиболее популярны алгоритмы IBP, UPM и минимум-суммы. Хотя алгоритм минимум-суммы по эффективности проигрывает IBP, в технических приложениях он часто берется за основу в силу существенно меньшей сложности, особенно при длинных кодовых комбинациях. В частности, он применяется в системах DVB-S2.
Результаты моделирования (рис. 2 и 3) демонстрируют преимущества IBP-декодера перед остальными (BF и UMP BP), однако он обладает наивысшей сложностью в реализации и несколько проигрывает в быстродействии. Выигрыш по вероятности ошибки декодирования в зависимости от вида канала и количества итераций может составлять несколько децибел.
Библиографический список
1. MacKay, D. Good codes based on very sparse matrices / D. MacKay. R. Neal // Cryptography and Coding. 5th IMA Conf., LNCS 1025, ed. by C. Boyd, pp. 100-111, Springer, 1995.
2. Белоголовый, А. В. Многопороговое декодирование кодов с низкой плотностью проверок на четность / А. В. Белоголовый, Е. А. Крук // Вопросы передачи и защиты информации : сб.ст. - СПб. : СПбГУАП, 2006. - C. 25-37.
3. Todd K. Moon. Error correction coding: mathematical methods and algorithms. Wiley-Interscience, New Jersey, 2005.
4. Солтанов А. Г. Схемы декодирования и оценка эффективности LDPC-кодов. Применение, преимущества и перспективы развития / А. Г. Солтанов // Безопасность информационных технологий. - 2010. - № 2. - С. 61-68.
5. Золотарев, В. В. Теория и алгоритмы многопорогового декодирования / В. В. Золотарев. - М. : Радио и связь, Горячая линия - Телеком, 2006. - 512 с.
6. ГОСТ Р 54309-2011: Аудиовизуальная информационная система реального времени РАВИС [Текст] - Введ. 2011 — 02 — 24. - М. : Изд-во стандартов, 2011. - 68 с.
7. Морелос-Сарагоса, Р. Искусство помехоустойчивого кодирования / Р. Морелос-Сарагоса. - М. : Техносфера, 2005. - 320 с.
8. Gallager R. G.. Low Density Parity Check Codes / R. G. Gallager // Cambridge, MA: MIT Press, 1963.
9. Rui Min. Research of the Soft Decision Decoding Algorithm Based on Belief Propagation / Rui Min, Jian-min He, Min He, Wei Ding // AITM - World Science Publisher. Vol 1, No 4, pp. 179 — 182, 2012.
10. Fossorier M. Reduced Complexity Iterative Decoding of Low-Density Parity-Check Codes Based on Belief Propagation / M. Fossorier, M. Mihaljevic, H. Imai // IEEE Transactions on Communicationsi 47(5), pp. 673-680, 1999.
11. Namshik Kim. An improvement of UMP-BP decoding algorithm using the minimum mean square error linear estimator / Namshik Kim, Jaebum Kim, Hyuncheol Park, Seung-Bum Suh // ETRI Journal, 26(5), pp. 432-436, 2004.
12. Лихобабин, Е. А. Использование квазиоптимальных алгоритмов декодирования LDPC кодов в системе цифрового телевизионного вещания стандарта DVB-T2 / Е. А. Лихобабин, А. В. Дворкович // Тр. Рос. науч.-техн. общества радиотехники, электроники и связи им. А. С. Попова. Вып. XII - 1. - М., 2010. - С. 25-27.
БАТЫРЕВ Иван Александрович, младший научный сотрудник.
СВИСТУНОВ Герман Викторович, инженер-конструктор 2-й категории.
Адрес для переписки: [email protected]
Статья поступила в редакцию 27.06.2013 г.
© И. А. Батырев, Г. В. Свистунов
Книжная полка
621.39/Г63
Гольдштейн, Б. С. Сети связи : учеб. для вузов по специальности 210406 «Сети связи и системы коммутации» / Б. С. Гольдштейн, Н. А. Соколов, Г. Г. Яновский. - СПб. : БХВ-Петербург, 2010. - 399 с. - ISBN 978-59775-0474-4.
Книга является учебником по современным сетям связи. В учебнике рассматриваются три сети, создававшиеся для поддержки следующих видов обслуживания: фиксированная телефонная связь, мобильные коммуникации и документальная электросвязь. Для каждой из трех сетей изложены идентичные по своему характеру базовые принципы построения и функционирования. Сформулирована основная цель дальнейшего развития трех рассматриваемых сетей — переход к сети связи следующего поколения, известной по аббревиатуре NGN (Next Generation Network).
ОМСКИЙ НАУЧНЫЙ ВЕСТНИК № 3 (123) 2013 РАДИОТЕХНИКА И СВЯЗЬ