1
1
Статья по теме:
Прямая коррекция ошибок в технологии C-OFDM
Горьковский Кирилл Андреевич, студент магистратуры, кафедра средств связи и информационной безопасности, Омский государственный технический университет, г. Омск
Аннотация
В статье рассматриваются алгоритмы сверточного кодирования и сверточного декодирования Витерби, принцип их работы, а также пример формирования и декодирования сверточного кода.
Ключевые слова: C-OFDM, прямая коррекция ошибок, FEC, сверточное кодирование, Витерби, кодер, декодер, помехоустойчивое кодирование, треллис-диаграмма, обнаружение и исправление ошибок.
Введение
Как известно, технология C-OFDM выгодно отличается от других технологий и, прежде всего, от технологии OFDM наилучшими показателями помехоустойчивости. Благодаря этому качеству, на данный момент C-OFDM является лучшим выбором для передачи видео- и аудио-сигналов в режиме реального времени. За счет чего же достигается такая высокая помехоустойчивость? Дело в том, что технология C-OFDM основана на методе прямой коррекции ошибок FEC [1,4]. С учетом особенностей технологии OFDM, прямая коррекция ошибок в технологии C-OFDM включает в себя:
сверточное кодирование высокоскоростного информационного потока перед стадией частотного перемежения;
использование алгоритма сверточного декодирования Витерби.
Целью данной статьи является наиболее простое объяснение алгоритмов прямой коррекции ошибок в технологии C-OFDM.
Сверточное кодирование
Сверточный кодер представляет собой непрерывную последовательную машину, в которой выходные импульсные отклики зависят не только от информационных символов, подающихся на вход, но и от предыдущих символов на входе. Такая зависимость между символами в сверточном коде реализуется за счёт использования в кодере блока памяти, реализованного в виде регистра сдвига. Благодаря этому, главной особенностью сверточного кодирования является способность исправлять ошибки в момент декодирования принятой последовательности. На рисунке 1 изображен пример простого сверточного кодера [2, 130].
Рис. 1 - Пример простого сверточного кодера
Ниже перечислены основные характеристики данного кодера:
Количество элементов памяти () ;
Относительная скорость кода , где - количество регистров сдвига (на вход одного регистра сдвига подается один информационный символ); - количество импульсных откликов кодера ().
На рисунке 2 изображена диаграмма состояний данного сверточного кодера. В вершинах данного графа перечислены все возможные состояния кодера (всего их ). Ребра же отмечены метками , где - такт работы источника информации [2,132].
Рис. 2 - Диаграмма состояний сверточного кодера
Пусть на вход данного кодера поступает информационная последовательность .
В таблице 1 представлен процесс формирования выходной последовательности данного кодера.
кодер декодирование витерби сверточный
Таблица 1 - Формирование выходной последовательности кодера
|
Номер такта работы кодера |
Значение символа на входе |
Состояние кодера |
Выходная последовательность |
|
|
1 |
0 |
000 |
00 |
|
|
2 |
1 |
000 |
1100 |
|
|
3 |
1 |
100 |
101100 |
|
|
4 |
0 |
110 |
10101100 |
|
|
5 |
0 |
011 |
1110101100 |
|
|
6 |
0 |
001 |
001110101100 |
|
|
7 |
1 |
000 |
11001110101100 |
|
|
8 |
0 |
100 |
0111001110101100 |
|
|
9 |
1 |
010 |
000111001110101100 |
|
|
10 |
0 |
101 |
01000111001110101100 |
Чаще всего для формирования кодовой последовательности пользуются треллис-диаграммами. На рисунке 3 изображена треллис-диаграмма кодера, изображенного на рисунке 1, где выделенный путь соответствует кодовой последовательности, сформированной при подаче на вход .
Рис. 3 - Треллис-диаграмма сверточного кодера
В левой части диаграммы указаны состояния последних разрядов регистра сдвига (m=3, соответственно указаны состояния ячеек и ). Состояние ячейки изменяется под действием входящих символов. Количество указаных разрядов также определяет число уровней в диаграмме (уровня). Преимуществом треллис-диаграмм является идентичность анализа работы кодера и декодера [2, 134].
Алгоритм сверточного декодирования Витерби
Данный алгоритм декодирования основан на принципе максимального правдоподобия. Суть его заключается в нахождении наиболее подобного пути на треллис-диаграмме для принятой кодовой последовательности среди всех возможных. Для каждого состояния выбирается наиболее вероятный путь (с наименьшим расстоянием Хэмминга), называемый выжившим, а наименее вероятные пути отбрасываются [3,12].
В предыдущем разделе на вход сверточного кодера на рисунке 1 поступила информационная последовательность , и в результате в канал связи была отправлена кодовая последовательность . Пусть данная кодовая последовательность была принята с ошибками в 5-ом и 10-ом разрядах, т.е. на вход декодера поступила последовательность ош. На рисунке 4 изображена треллис-диаграмма сверточного декодера. Слева от решетки, располагаются все возможные состояния регистра сдвига. Для дальнейшего анализа необходимо условиться, что, если обрабатывается «0» - ребро графа отмечается пунктиром; если «1» - ребро графа рисуется сплошной линией.
Работа декодера всегда начинается с верхнего левого узла решетки. В зависимости от возможного состояния кодера, декодер рассматривает поступление на вход кодера либо нуля, либо единицы, и, в зависимости от возможного состояния регистра сдвига, анализирует, соответственно, два возможных кодовых символа, которые кодер мог отправить в канал связи. Соответственно, на треллис-диаграмме из каждого узла решетки выходят по две ветви и количество возможных путей декодирования растет экспоненциально.
Рис. 4 - Треллис-диаграмма сверточного декодера
Затем кодер сравнивает эти два возможных кодовых символа с фактически принятым кодовым символом и, высчитывая расстояние Хэмминга, определяет для каждого пути декодирования свою метрику. Если вес пути превышает значение глубины декодирования (в данном случае ), то такой путь в дальнейшем анализе не участвует. Следует заметить, что при низком значении глубины декодирования, наиболее вероятных путей декодирования становится больше, и эффективность исправления ошибок резко падает. Однако же, учитывая экспоненциальный рост количества возможных путей, декодирование при высоких значениях предъявляет высокие требования к вычислительным способностям приемника [3,15].
На данной треллис-диаграмме декодера, выделенный жирным путь имеет самую лучшую метрику и является наиболее вероятным. Учитывая штриховые и сплошные участки пути, получаем информационную последовательность дек, которая будет направлена получателю сообщения. Данная информационная последовательность полностью совпадает с той, которая была отправлена источником сообщения, а это значит, что декодирование прошло успешно и все ошибки исправлены.
Таким образом, использование в технологии C-OFDM сверточного кодирования в сочетании с применением декодера Витерби обеспечивает самую высокую помехозащищенность сигналов. Однако, если корректирующий потенциал системы сконцентрировать на символах, передающихся на частотах, более подверженных частотно-селективным замираниям, помехоустойчивость C-OFDM сигналов значительно увеличивается.
Список литературы
1. Локшин Б.А. Сравнение видов модуляции в наземном цифровом вещании // Теле-Спутник: журнал, 2001. № 3 (65).
2. Морелос-Сарагоса Р. Искусство помехоустойчивого кодирования. Методы, алгоритмы, применение / пер. с англ. В.Б. Афанасьева. М.: Техносфера, 2006. 320 с. (Мир связи). 2000 экз. ISBN 5-94836-035-0.
3. Карташевский В.Г., Мишин Д.В. Прием кодированных сигналов в каналах с памятью -- Радио и связь, 2004.