Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ilipbaeva L.B.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
350.55 Кб
Скачать
    1. Основные понятия и определения

Разберем схематически, как происходит процесс кодирования. Все коды можно разбить на две большие группы: блоковые и древовидные. Основное внимание будет удалено первому типов кодов.

Блоковый код

При блоковом кодировании последовательность информационных символов на входе кодирующего устройства разбивается на отрезки по k символов. Каждому такому отрезку ставится в соответствие кодовая комбинация из n( ) символов. Только тогда, когда , появляется возможность исправлять и обнаруживать ошибки.

Проследим это на следующем примере.

Пусть k . Тогда возможны следующие комбинации двоичных символов:

Если , то на выходе кодера не могут появиться никакие другие комбинации. Поэтому любая ошибка приведет к искажению информации: вместо одной кодовой группы будет принята другая.

Если , то возможное число кодовых комбинации(слов) увеличивается вдвое. Это следующие слова: 000, 010, 011, 001, 100, 101, 110, 111.

Для передачи прежней информации достаточно использовать только 4 слова. Выберем для этого слова

(1.2)

и назовем их разрешенными комбинациями.

Оставшиеся неиспользованные 4 слова – это запрещенные комбинации:

. (1.3)

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

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

Имея такую таблицу, можно производить исправление всех однократных ошибок, т.е. ошибок, возникших в одном символе из n. Например, пусть передавалось слово 00110. Если произойдет ошибки только в одном символе, то принятая комбинация будет принадлежать первому столбцу (например, 10110). Все принятые комбинации в этом столбце соответствуют передаче информационного слова 00.

Таблица 1.1

Информационные слова

00

01

10

11

Кодовые слова

00110

01101

10011

11000

Прочие комбинации

00111

00100

00010

01110

10110

00000

10100

01100

01111

01001

00101

11101

10101

00001

10010

10001

10111

11011

00011

01011

11111

11001

11010

11100

10000

01000

11110

01010

Большинство двухкратных ошибок этот код исправить не может. Допустим, что при передаче того же слова 00110 произойдут ошибки в первом и пятом символах, т.е. принята комбинация 10111. Это слово находится в третьем столбце, поэтому при декодировании будет получено информационное слово 10, следовательно, произойдет ошибка.

Для исправления ошибок большой кратности требуется значительное превышение n над k. Число n называется длиной кода. Блоковые коды обычно записываются следующим образом: (n,k). Так, код в табл. 1.1 обозначается (5,2)

Древовидный код

Наиболее важным классом древовидных кодов являются сверточные. При этом способе кодирования информационная последовательность не разбивается предварительно на блоки из k символов. Информационные символы поступают на кодер непрерывно, и он формирует символы на выходе, соответствующие текущим символам.

Проследим процесс получения сверточного кода на примере.

Этот тип кода удобно описывать графически, с помощью деревьев (рис. 1.3). Точки ветвления называются узлами, отходящие от них линии – ветвями.

Рис.1.3 Дерево кода с R = 1/2

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

На рис. 1.3 жирной линией показано продвижение по кодовому дереву для информационной последовательности 1001… Ей соответствует кодовая последовательность 11010011…

Декодирование сверточных кодов представляет собой, как правило, более сложную задачу, чем декодирование блоковых кодов, и часто осуществляется с помощью ЦВМ [3]. Поэтому здесь мы не будем его рассматривать.

Определения

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

В коде определена операция установления однозначного соответствия между сообщением и кодовой комбинацией. Так, в приеме блокового кодирования (5,2) кодом являются комбинации 00110, 01101, 10011, 11000

Соответствие устанавливается с помощью табл. 1.2

Таблица 1.2

Сообщения

00

01

10

11

Код

00110

01101

10011

11000

В примере древовидного кода соответствие устанавливается правилом продвижения в узлах.

  1. Избыточностью кода называется число

(1.4)

Которое показывает, насколько замедляется передача информации из-за введения кодирования.

Если n=k, то на один символ приходится 1 дв.ед. информации и избыточность отсутствует:

Если же n , то на один символ на выходе декодера приходится k/n дв.ед.

В наших примерах избыточность кода (5,2) равна , а для рассмотренного древовидного кода она составляет .

  1. Вес кодовой комбинации число нулевых символов этой комбинации.

Например, для слова 10011 .

  1. Расстоянием между двумя словами называется число позиций, в которых эти слова отличаются друг от друга.

Например, , 01101;

Расстояние между двумя словами можно определить как вес суммарной кодовой комбинации

, (1,5)

Где знак + означает суммирование по mod2.

В нашем примере .

  1. Кодовым расстоянием d называется минимальное значение для данного кода.

Например, для блокового кода (5,2), определенного табл. 1,2,следующие расстояния между словами: ; ; ; Следовательно, кодовое расстояние .

Заметим попутно, что от величины зависит исправляющая и обнаруживающая способность кода.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]