Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОТССсПО (Зайцев А.А.).doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
4.93 Mб
Скачать

15. Сверточное кодирование. Представление сверточного кодера. Представление связи. Реакция кодера на импульсное возмущение. Полиномиальное представление. Диаграмма состояний. Древовидная диаграмма.

Сверточный код описывается 3 целыми числами – n, k, K. n/k – степень кодирования – информация, приходящаяся на 1 не кодированный бит. В отличие от блочных кодов n Не определяет длину блока или кодового слова. К – длина кодового ограничения. Сверточный кодер имеет память: n-кортежи, полученные при сверточном кодировании, являются функцией не только одного к-кортежа, но и функцией К-1 предыдущих входных к-кортежей. На практике n и к – небольшие целые числа, а К изменяется в широких пределах с целью контроля мощности и сложности кода.

Длина кодового ограничения – количество к-разрядных сдвигов, после которых бит выталкивается из регистра сдвига и больше не влияет на выходную информацию. На месте первых к разрядов каждый раз помещаются новые к бит. Наиболее часто к=1.

Представление сверточного кодера

Чтобы иметь возможность описывать сверточный код необходимо определить кодирующую функцию G(m), которая бы однозначно отображала входную последовательность m в выходную u.

Представление связи

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

Пример: g1=111;

g2=101;

m=101

00 11 10 00 10 11 00

Реакция кодера на импульсное возмущение.

Кодер можно описать через его импульсную характеристику – реакцию на одиночный единичный разряд: 111011.

Данные на выходе кодера при произвольном входном сигнале могут быть найдены как суперпозиция сдвинутых по времени импульсных характеристик:

1 1 1 0 1 1

0 0 0 0 0 0

1 1 1 0 1 1

----------------------------

1 1 1 0 0 0 1 0 1 1

Сверточный код линеен, а свое название получил из-за возможности генерации входной последовательности путем свертки.

Полиномиальное представление.

Аналогично векторам связи можно сформировать полиномы вида: g1(х)=1+х+х2, g2(х)=1+х2, а u(x)=m(x)× g1(х) чередуется с u(x)=m(x)× g2(х).

Диаграмма состояний.

Сверточный кодер из класса конечных автоматов. Он имеет память о прошедших сигналах и может находиться в конечном числе состояний.

Древовидная диаграмма

16. Сверточное кодирование. Представление сверточного кодера. Решетчатая диаграмма. Декодирование сверточных кодов. Общая постановка задачи. Мягкое и жесткое принятие решения. Алгоритм декодирования Витерби. Правила декодирования. Мягкое декодирование. Характеристики сверточного кода. Способность исправлять ошибки. Систематический сверточный код. Катастрофическая ошибка.

Сверточный код описывается тремя целыми числами n, k, K. - степень кодирования – информация приходящаяся на один закодированный бит. В отличие от блочных кодов, n не определяет длину блока или кодового слова. K – длина кодового ограничения. Сверточный кодер имеет память, n кортежи, полученные при сверточном кодировании, являются функциями не только одного K кортежа, но и функцией K-1 предыдущего кортежа. На практике n, k – небольшие целые числа, а K изменяется в широких пределах, с целью контроля мощности и скорости кода.

Сверточный кодер строится на основе регистра сдвига и набора сумматоров по mod 2. Длина кодового ограничения – это количество K разрядных сдвигов после которого бит выталкивается из регистра сдвига и больше не влияет на входную информацию. На месте первых k разрядов каждый раз помещается новый бит.

Представление сверточного кодера.

Чтобы иметь возможность описывать сверточный код, необходимо определить кодирующую функцию G(m), которая однозначно бы отображала входную последовательность m в выходную U.

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

Решетчатая диаграмма.

Древовидная структура повторяется после K ответвлений, таким образом, 2 любые точки этой диаграммы соответствующие одному и тому же состоянию в один и тот же момент времени, можно соединить, так как все последующие пути по данному дереву будут неразличимы:

Декодирование сверточных кодов.

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

Декодер выбирает кортеж .

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

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

В случае, когда число уровней квантования принятого зашумленного двоичного сигнала равно двум то говорят, что реализуется жесткая схема принятия решения. Последующее декодирование также будет жестким, если число уровней квантования больше двух то реализуется мягкая схема принятия решения. Например можно использовать 8 ми уровневое квантование в результате которого с демодулятора на декодер будет подаваться 3 х разрядный код вместо 0 и 1. Это эквивалентно передаче декодеру вместе с решением меры достоверности этого решения. Для гаусового канала 8 ми уровневое квантование по сравнению с 2 х уровневым приводит к улучшению на 2 дБ требуемого ОСШ. Аналоговое квантование приводит к улучшению на 2,2 дБ то есть не имеет смысла квантовать более чем на 8 уровней.

Алгоритм декодирования Витерби.

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

Если в точку решетки приходит два пути, то выживает только тот, чья метрика меньше. Метрикой пути называется сумма всех весовых коэффициентов, переходов составляющих данный путь. При мягком декодировании по алгоритму Витерби вместо расстояния Хемминга используется Евклидово расстояние. Для кода со степенью кодирования демодулятор подает на декодер два кодовых символа за раз, которые в мягкой схеме могут быть представлены парой цифр от 0 до 7.

Для определения способности кода исправлять ошибки необходимо найти минимальный просвет df – это минимальная метрика пути между двумя точками соответствующих нулевому состоянию d. Количество исправляемых ошибок . Код способен исправить t ошибок в пределах нескольких длин кодового ограничения и в зависимости от распределения ошибок.