
- •Глава 8. Основы теории кодирования
- •8.2. Согласование источника с каналом по объемам алфавитов. Теоремы кодирования шеннона и потенциальные возможности системы передачи информации
- •8.2.1.Теорема Шеннона для дискретного канала связи без помех
- •8.2.2. Теорема Шеннона для дискретного канала связи с помехами
- •8.2.3. Теорема Шеннона для непрерывного канала связи
- •8.3. Основы экономного кодирования
- •8.3.1 Принципы экономного кодирования. Цель сжатия данных и типы систем сжатия
- •8.3.2. Префиксные коды
- •Избыточность кода Хаффмена
- •8.3.4. Код Шеннона-Фано
- •8.3.5. Неравномерное кодирование для последовательности сообщений
- •8.3.6. Арифметическое кодирование
- •Кодирование
- •Декодирование
- •8.3.7. Словарные методы сжатия
- •Кодирование
- •Декодирование
- •8.4. Основы помехоустойчивого кодирования
- •8.4.1 Принципы обнаружения и исправления ошибок
- •8.4.2. Классификация помехоустойчивых кодов
- •8.4.3. Основные характеристики помехоустойчивых кодов
- •8.4.4. Границы вероятности ошибочного декодирования
- •8.5. Блочные линейные коды
- •8.5.1. Математическое описание процессов кодирования и декодирования
- •8.5.2. Коды с проверкой на четность
- •8.5.3 Коды Хэмминга
- •8.5.4. Коды с постоянным весом
- •8.5.5. Циклические коды
- •1. Способы декодирования с обнаружением ошибок
- •2 Способы декодирования с исправлением ошибок
- •8.6. Непрерывные коды
- •8.6.1 Идея построения непрерывного кода Финка–Хегельбергера
- •8.6.2. Сверточные коды
- •8.6.3. Представление сверточных кодов с помощью многочленов
- •8.6.4. Графическое представление сверточных кодов
- •8.6.5. Методы декодирования сверточных кодов
- •8.6.6. Схемное построение декодера Витерби
- •8.7. Методы борьбы с ошибками
- •8.7.1. Системы с обратной связью
- •8.7.2. Формат кадра протоколов с обнаружением ошибок
- •8.7.3. Методы повторной передачи (arq)
- •8.7.4. Основные характеристики систем с решающей обратной связью
- •8.7.5. Показатели эффективности цифровой системы связи
8.6.3. Представление сверточных кодов с помощью многочленов
В отличие от боковых
кодов, каждый из которых описывается
единственным порождающим многочленом,
сверточный код требует для своего
описания несколько порождающих
многочленов, число которых определяется
количеством
входных иn
выходных символов, передаваемых за
каждый такт в канал связи. Представим
последовательность информационных
символов, поступающих на вход кодера,
в виде многочлена (полинома)
(8.78)
где
–
символ оператора задержки на
тактов работы сдвигающего регистра;
– информационные двоичные символы.
Многочлены, описывающие n последовательностей кодовых символов, поступающих на вход коммутатора кодера и далее в канал связи,
, (8.79)
где
=
0; 1 – двоичные кодовые символы наj-м
входе коммутатора кодера.
В силу линейности сверточного кода
,
(8.80)
где
(8.81)
j-й
порождающий многочлен сверточного
кода;
= 0; 1 – его двоичные коэффициенты (8.77),
равные 1, еслиi-я
ячейка (i
= 0, ...,
–1)
сдвигающего регистра через схему
суммирования связана сj-м
входом коммутатора кодера, и равные
нулю в противном случае.
Например, для кодера систематического сверточного кода (рис. 8.26, а) порождающие многочлены будут
;
,
а для кодера несистематического сверточного кода (рис. 8.26, б)
;
.
Порождающие
многочлены могут быть объединены в
матрицу размера
,
называемую порождающей матрицей из
многочленов. Например, порождающие
матрицы для кодеров (рис. 8.26), в соответствии
записываются в виде
и
.
Строка в матрице
соответствует одному из
символов входной последовательности
(в данном случае
=1
– число информационных символов,
поступающих за 1 такт на вход кодера), а
число многочленов в строке равно числу
схем суммирования по модулю 2. При
>
1 некоторые порождающие многочлены
могут равняться нулю.
Так, для схемы
кодера (рис. 8.27) при скорости
,
выходной код описывается шестью
порождающими полиномами, задаваемыми
шестью наборами связей между двумя
регистрами и тремя сумматорами.
Связь между входными символами и выходными последовательностями может быть представлена в следующей матричной форме:
.
В данном случае порождающая матрица многочленов (полиномов) имеет вид
.
Рассмотрим, в качестве примера, для схемы кодера (рис. 8.28), как кодируется последовательность информационных символов 101.
Этой последовательности соответствует многочлен
.
Номер такта |
Номер выхода кодера |
Содержимое выхода кодера |
1 |
1 2 |
|
2 |
1 2 |
|
3 |
1 2 |
|
4 |
1 2 |
|
5 |
1 2 |
|
Тогда на выходе первого сумматора по модулю 2 кодера (рис. 8.28) последовательность кодовых символов будет 11011, ей соответствует многочлен
.
На выходе второго сумматора по модулю 2 этого кодера последовательность кодовых символов будет 10001, а ей соответствует многочлен
.
В итоге на выходе
кодера будет сформирована последовательность
выходных символов за 5 тактов нахождения
входной последовательности 101 в
трехразрядном регистре:
|
1 1 |
1 0 |
0 0 |
1 0 |
1 1 |
Такты |
1 1 1 |
1 0 2 |
0 0 3 |
1 0 4 |
1 1 5 |