8.3 Представление сверточных кодов с помощью многочленов
В отличие от боковых кодов, каждый из которых описывается единственным порождающим многочленом, сверточный код требует для своего описания несколько порождающих многочленов, число которых определяется количеством n выходных символов, передаваемых за каждый такт в канал связи. Представим последовательность информационных символов, поступающих на вход кодера, в виде многочлена (полинома)
(8.7)
где – символ оператора задержки на тактов работы сдвигающего регистра; – информационные двоичные символы.
Многочлены, описывающие n последовательностей кодовых символов, поступающих на вход коммутатора кодера и далее в канал связи,
(8.8)
= 0; 1 – двоичные кодовые символы на j-м входе коммутатора кодера.
В силу линейности сверточного кода
, (8.9)
где (8.10)
j-й порождающий многочлен сверточного кода; = 0; 1 – его двоичные коэффициенты (8.6), равные 1, если i-я ячейка (i = 0, ..., m–1) сдвигающего регистра через схему суммирования связана с j-м входом коммутатора кодера, и равные нулю в противном случае.
Например, для кодера систематического сверточного кода (рис. 8.7, а) порождающие многочлены будут
;
,
а для кодера несистематического сверточного кода (рис. 8.7, б)
;
.
Порождающие многочлены могут быть объединены в матрицу размера k × n, называемую порождающей матрицей из многочленов. Например, порождающие матрицы для кодеров (рис. 8.7), в соответствии записываются в виде
и
Строка в матрице соответствует одному из символов входной последовательности (в данном случае =1 – число информационных символов, поступающих за 1 такт на вход кодера), а число многочленов в строке равно числу схем суммирования по модулю 2. При > 1 некоторые порождающие многочлены могут равняться нулю.
Так, для схемы кодера (рис. 8.8) при скорости , выходной код описывается шестью порождающими полиномами, задаваемыми шестью наборами связей между двумя регистрами и тремя сумматорами.
Связь между входными символами и выходными последовательностями может быть представлена в следующей матричной форме:
В данном случае порождающая матрица многочленов (полиномов) имеет вид
.
Рассмотрим, в качестве примера, для схемы кодера (рис. 8.9), как кодируется последовательность информационных символов 101.
Этой последовательности соответствует многочлен
.
Номер такта |
Номер выхода кодера |
Содержимое выхода кодера |
1 |
1 2 |
|
2 |
1 2 |
|
3 |
1 2 |
|
4 |
1 2 |
|
5 |
1 2 |
|
Тогда на выходе первого сумматора по модулю 2 кодера (рис. 8.9) последовательность кодовых символов будет 11011, ей соответствует многочлен
.
На выходе второго сумматора по модулю 2 этого кодера последовательность кодовых символов будет 10001, а ей соответствует многочлен
.
В итоге на выходе кодера будет сформирована последовательность выходных символов за 5 тактов нахождения входной последовательности 101 в трехразрядном регистре: