Академия ФСО России
Анализ современного состояния и путей повышения помехоустойчивости приема итеративно декодируемых кодов
Овсянкин Сергей Владимирович, к.т.н.
Тукелев Артем Васильевич, к.т.н.
Молчанов Илья Николаевич
Инженер лаборатории
Введение
Одним из важных направлений совершенствования и развития цифровых систем связи является повышение помехоустойчивости передачи информации.
При проектировании таких систем разработчики стремятся к максимизации эффективности системы: увеличению скорости передачи до максимально возможной, минимизации вероятности битовой ошибки, минимизации потребляемой мощности и ширины полосы пропускания, а также минимизации конструктивной сложности, вычислительной нагрузки и стоимости системы.
Однако существует ряд теоретических ограничений, которые неизбежно влекут за собой компромиссы в реализации системных требований: минимальная теоретически требуемая ширина полосы частот по Найквисту, пропускная способность канала связи, технологические ограничения и др.
Кодирование с исправлением ошибок можно рассматривать как инструмент, осуществляющий различные компромиссы системы.
В [3,4] К. Шеннон доказал, что вероятность ошибки стремится к нулю при увеличении длины кода .
В [2] показано, что существует нижняя граница (граница сферической упаковки) для вероятности ошибки наилучших кодов, с заданными и , для которой вероятность ошибки убывает экспоненциально по , и показатели этих экспонент совпадают при скоростях, близких к пропускной способности, и в пределе при :
, (1)
где
и - функции, стремящиеся к нулю с ростом ,
- функция Галлагера, входящая в нижнюю границу для вероятности ошибки,
- длина кода,
- скорость кода.
Постановка задачи
Опираясь на доказанные теоремы о снижении вероятности ошибки декодирования с ростом длины кода , разработчики систем помехоустойчивого кодирования ориентировались на построение длинных кодов с максимально возможным минимальным расстоянием (в соответствии с границами для кодового расстояния - Хэмминга, Плоткина, Варшамова-Гильберта), определяющего корректирующие способности кода.
Однако одной из основных тенденций развития современных систем связи является стремление разработчиков сократить энергетические затраты на линии. Вследствие этого наблюдается широкое внедрение в современные спутниковые модемы (Comtech CDM-550, CDM-600, CDM-710) опции автоматического управления мощностью AUPC, что позволяет выравнивать мощность передатчика в соответствии с отношением сигнал/шум на удаленном модеме.
Таким образом, декодирование используемых кодов в условиях низкой энергетики принимаемых сигналов осуществляется вблизи границы Шеннона и, следовательно, сводится к декодированию на пределе корректирующих способностей кода. В [1] показано, что в этом случае сферы вокруг кодовых слов частично перекрываются (рис. 1).
Рисунок 1 - Эффект перекрытия сфер вблизи границы Шеннона
Вследствие этого необходима разработка алгоритмов помехоустойчивого приема кодированных сигналов в условиях низких отношений сигнал/шум и обладающих конструктивной сложностью.
Особенности построения итеративно декодируемых кодов
В условиях низкой энергетики принимаемых сигналов для достижения произвольно малой вероятности ошибки первостепенное значение имеет не минимальное расстояние , а распределение числа кодовых слов заданного веса, причем среди этого распределения наиболее важную роль играют слова с малым весом.
Невозможность приблизиться к границе Шеннона с помощью бесконечного увеличения длины вследствие перекрытия сфер кодовых слов и отсутствие конструктивных способов построения декодеров из-за экспоненциального роста числа кодовых слов предопределили возникновение и развитие идей итеративно декодируемых кодов.
К последним относится любой помехоустойчивый код, допускающий итеративное декодирование - обновление апостериорных вероятностей канальных символов за конечное число шагов (итераций).
На рис. 2 представлена классификация итеративно декодируемых кодов. Отличительной особенностью данных кодов является распределение кодовых слов с малым весом.
В таблице 1 представлено распределение кодовых слов для сверточных кодов и турбокодов.
Из анализа таблицы следует, что, несмотря на одинаковое минимальное расстояние (для ), число кодовых слов турбокода (ТК) с значительно меньше (2 против 33).
Рисунок 2 - Классификация итеративно декодируемых кодов
Таблица 1 - Распределение кодовых слов для сверточных кодов и турбокодов
|
=30 |
=44 |
||||
|
6 |
0 |
0 |
0 |
0 |
|
|
7 |
33 |
2 |
47 |
2 |
|
|
8 |
30 |
8 |
43 |
1 |
|
|
9 |
3 |
11 |
1 |
5 |
Малое число кодовых слов с минимальным весом для ТК обеспечивается использованием рекурсивных систематических сверточных кодов совместно с перемежителем в каскадной конструкции.
Поэтому ТК имеют распределение весов, похожее на распределение для случайных кодов.
Турбокоды могут считаться обновлением структуры каскадного кодирования с итеративным алгоритмом декодирования. ТК привлекли к себе внимание разработчиков систем связи не столько методом кодирования (ТК являются частным случаем обобщенных каскадных кодов, которые были известны и ранее), сколько итеративным способом декодирования.
На рис.2 представлена подробная классификация турбокодов, выполненная как по конструктивным особенностям, так и по особенностям декодирования.
Турбокоды формируются путем последовательного либо параллельного включения в единый каскад 2-3 простых кодов (блочных или сверточных).
При этом в системах спутниковой связи наибольшее распространение нашли турбокоды на базе блочных (ТКБ), тогда как в системах беспроводного доступа - турбокоды на базе сверточных (ТКС). Турбокоды можно рассматривать как частный случай низкоплотностных кодов.
Низкоплотностные коды были открыты Галлагером более 40 лет назад, однако наибольшее распространение в современных системах связи нашли лишь в последнее время [2].
Это связано с появлением эффективного итеративного алгоритма декодирования.
С помощью низкоплотностных кодов удалось достичь значения вероятности ошибки при отношении сигнал/шум дБ и скорости кода .
Отличительной особенностью данных кодов является сильно разреженная проверочная матрица с количеством единиц в каждом столбце и в каждой строке .
На практике важное значение имеет низкая плотность проверок на четность, поскольку это позволяет значительно снизить вычислительные затраты на реализацию алгоритма декодирования при больших размерах матриц; так, для кода проверочная матрица имеет следующие параметры: , .
Для реализации итеративного алгоритма декодирования для низкоплотностных кодов возможно построение графа Таннера, который имеет кодовых вершин и проверочных вершин (рис. 3).
Рисунок 3 - Граф Таннера для кода Хемминга (7,4)
Низкоплотностные коды нашли широкое распространение в системах цифрового телевидения (стандарт DVB-S2).
Коды с повторением и накоплением (Repeat-Accumulate Codes) сочетают в себе идею тривиальных кодов повторения с рекурсивной процедурой вычисления проверочных символов путем накопления информационных бит.
Пути повышения помехоустойчивости приема итеративно декодируемых кодов
В качестве примера, поясняющего процесс итеративного декодирования, предлагается рассмотреть декодирование турбокодов. Суть итеративного алгоритма декодирования состоит в обмене мягкими решениями с выходов компонентных декодеров на каждой итерации для уточнения оценки по максимуму правдоподобия (МП) или максимуму апостериорной вероятности (МАР).
Итеративный процесс декодирования заканчивается при достижении определенного числа итераций или по мере срабатывания критерия остановки декодирования. При этом используется декодер с мягким входом - мягким выходом (рис. 4).
Рисунок 4 - Декодер с мягким входом - мягким выходом
На вход декодера на каждой итерации поступают значения отношений правдоподобия с выхода канала для информационных и проверочных бит и априорные значения информационных бит , причем на первой итерации априорные данные равновероятны.
Далее, после осуществления каждой итерации процесса декодирования по одному из алгоритмов, выходная последовательность на выходе декодера записывается как
, (2)
где - внешняя информация, поступающая на вход другого компонентного декодера на следующей итерации.
На последней итерации осуществляется жесткое решение для выходной последовательности.
Итеративный процесс декодирования можно осуществить и при жесткой схеме принятия решения демодулятором.
Однако, кроме потери 2 дБ (энергетический выигрыш мягкой схемы принятия решения по сравнению с жесткой), происходит ухудшение сходимости итеративного процесса.
Другими словами, уже на ранних итерациях достигается определенный уровень вероятности битовой ошибки, который потом не меняется. Кроме того, динамический диапазон уровней достоверности декодированной последовательности в схеме с мягким решением гораздо выше, что позволяет выделять группу наименее надежных бит для осуществления усиленной обработки.
Анализ сходимости итеративного процесса декодирования для разных схем принятия решения демодулятора представлен на рис.5.
При этом сравнение осуществлялось при различных отношений сигнал/шум: для мягких решений демодулятора ОСШ на 2 дБ меньше.
Рисунок 5 - Зависимость сходимости итеративного процесса для жестких и мягких решений демодулятора (перемежитель - пседослучайный, длина блока - 1024 бит, (а): ОСШ = 0 (2 дБ) дБ, число итераций - 32, (б): ОСШ = 0,2 дБ (2,2 дБ), число итераций - 10)
Исходя из сходимости итеративного процесса в условиях низких отношений сигнал/шум, можно выделить режим насыщения, характерный для итеративно декодируемых кодов.
Режим насыщения представлен на рис.6 для турбокодов.
Рисунок 6 - Зависимость вероятности ошибки декодирования от числа итераций (ТК (23,35), длина блока бит)
На рис.6 видно, что, начиная с 8 итерации, наступает режим насыщения и остается некоторое число неисправленных ошибок.
Режим насыщения итеративного декодера ведет к увеличению числа остаточных ошибок, которые значительно увеличивают вероятность ошибки на кадр.
Следовательно, необходима разработка алгоритма помехоустойчивого приема сигналов с исправлением остаточных ошибок после итеративного декодера.
Для этого предлагается использовать двухэтапный алгоритм приема итеративно декодируемых кодов, где на первом этапе - уточняются оценки апостериорных вероятностей по максимуму апостериорной вероятности, а на втором этапе - принимается решение по последовательности.
Решающее правило двухэтапного алгоритма декодирования ТК записывается следующим образом:
(3)
,
где - оценки МАР декодера, выполненные на предыдущих итерациях, - оценки МАР декодера для состояний суперрешетки, - набор разрешенных кодовых комбинаций на длине принятия решения, - число разрешенных кодовых комбинаций, - номер итерации, - число компонентных кодов, - длина кодового ограничения, - длина принятия решения, - размер списка, - коэффициент использования списка.
Для турбокодов на базе блочных схематично двухэтапный алгоритм представлен на рис.7.
Рисунок 7 - Двухэтапная процедура декодирования ТКБ
декодирование помехоустойчивый связь итеративный
Таким образом, с целью повышения качества приема сигналов итеративно декодируемых кодов разработан двухэтапный алгоритм декодирования по максимуму правдоподобия, учитывающий оценки канальных символов по максимуму апостериорной вероятности и минимизирующий вероятность ошибки декодирования по сравнению со стандартными алгоритмами. Проведенные лабораторные и натурные эксперименты подтверждают энергетический выигрыш от применения разработанного алгоритма, который, например, для турбокодов составляет порядка 0,2 дБ.
Литература
1. Варгаузин, В. Вблизи границы Шеннона [Текст] / В. Варгаузин // Мультителемедиа. - М.:Радио и связь, 2005. - c.3-10.
2. Галлагер, Р. Теория информации и надежная связь [Текст] / Р. Галлагер. - М.: Издательство иностранной литературы, 1974. - 711 с.