- •Санкт-Петербургский государственный технический университет
- •Способы задания кодов, классификация и характеристики кодов.
- •Задание сверточного кода решеткой.
- •Матричное описание сверточных кодов.
- •Код Вайнера-Эша
- •Коды Хэмминга (недвоичные)
- •Коды Хэмминга как цикличные коды
- •Проблематика исправления ошибок.
- •Алгоритм декодирования сверточных кодов.
- •Синдромное декодирование сверточных кодов.
- •Исправление пакетов.
- •Алгоритм декодирования Витерби.
- •Оценка характеристик декодирования по алгоритму Витерби.
Задание сверточного кода решеткой.
Это граф, узлы которого образуют прямоугольную координатную сетку, полубесконечную справа. Число узлов в столбце конечно и одинаково. Конфигурация ребер, соединяющая соседние вертикальные ряды узлов тоже одинакова
Проанализируем построение на конкретном примере 1.
Обычно рисуют фрагмент
справа записана реакция на ребрах.
Кодовое слово получается как путь по дереву.
Постройте решетку для кода из примера 2.
d2 d1
0 00
0 01
0 10
0 11
1 00
1 01
1 10
1 11
Автоматическое задание сверточного кода удобно для анализа корректирующих свойств. Нас будет интересовать вес ненулевых кодовых векторов. Исключим временной параметр и сведем граф к диаграмме состояний. Т.к. нас интересуют пути, начинающиеся в 00 и оканчивающиеся в 00 другом (после ненулевых информационных символов), одно из состояний обозначим a (вход), а другое e (выход).
Все пути можно обозначить переменной D со степенью и указать его на ребрах. Вес всего пути получается умножением его ??? на ребрах. Вычисляем веса всех путей между входом и выходом T(D). Для этого достаточно решить систему уравнений:
Рисунок 1. Автоматное задание сверточных кодов
D - переменная веса выходной последовательности
L - переменная длины входной последовательности
N - переменная веса входной последовательности
Рисунок 2 Граф потока сигналов сверточного кода с R=1/2
x - значение накопленного коэффициента усиления от состояния 0 до i, с учетом всех других состояний.
Эти уравнения в матричной форме:
X=AX+X0, где XT=(x1, x2, x3, x4), X0T=(D2LN,0,0,0)
Матрица переходов
В общем случае это матрица 2nx2n
Формальное решение
T(DLN)=x2n
произв. ф. весов кодовых слов
произв. ф. информ. весов кодовых слов
Необходимы для расчета вероятности ошибочного приема на выходе декодера.
Матричное описание сверточных кодов.
Кодовые слова сверточного кода бесконечны, поэтому и матрица в общем случае должна быть бесконечной. Матриц, задающих код может быть предложено множество, но интерес представляют лишь следующие, основанные на коэффициентах задающих многочленов
Упорядочим прежде всего коэффициенты при фиксированномl в виде матрицы Gl. Gl=[].
Если сверточный код ограничить длиной n, то получим матрицу, задающую усеченный сверточный код в виде
O - матрица из одних нулей размерности k0xn0
Gl - матрица из коэффициентов многочленов gij
у переменной xl размерность та же k0xn0.
Полубесконечная матрица задающая сверточной код будет:
Первая строка задает правило кодирования первого информационного кадра в m кадров кодового слова, причем первый кадр информационный кодируется в первый кадр кодового слова подматрицей, стоящей слева вверху G0(n0) . Если используется систематический сверточной код, то
I - единичная матрица k0xk0
O- нулевая матрица k0xk0
Pl - матрица r0xk0
Проверочной матрицей является любая матрица H, удовлетворяющая условиям:
l=0,1,2...
и - подматрицы, стоящие слева , вверху соответствуютl кадрам. Полубесконечная проверочная матрица , если код систематический легко строится по G:
Рассмотрим примеры:
k0=1, m=3, g1(x)=1, g2(x)=1+x2+ x3, g2(x)=1+x+ x3
n0=3, k=4, n=12, (12,4)]
I=1, P0=[11], P1=[01], P2=[10], P3=[11]