Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КП Кодирование ТЕОРИЯ 2012-весна.doc
Скачиваний:
18
Добавлен:
04.09.2019
Размер:
1.37 Mб
Скачать

1. Дублирование информации

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

Кодирование данных и передача по линии связи :

  1. Выбор данного .

  2. Получение копии данного .

  3. Передача данного и его копии по линии связи.

Прием и проверка данных:

1. Прием данного .

2. Вычисление поверочных битов сравнением данного и его копии с помощью логической операции «сумма по модулю два». Операция сумма по модулю два (исключающее ИЛИ, неравнозначность, XOR) выполняется по правилам: 0  0 = 0; 0  1 = 1; 1  0 = 1; 1  1 = 0.

Для многоразрядных двоичных чисел операция сумма по модулю два выполняется поразрядно: .

Вычисление поверочных битов

Данное

Операция сумма по модулю два

Копия данного

Поверочные биты

3. Проверка на наличие ошибок:

- если поверочные биты равны нулю, то ошибки нет;

- если поверочные биты содержат хотя бы одну единицу, то ошибка есть.

Пример. Передача данного 1101.

Кодирование данных и передача по линии связи :

1. Передача данного и его копии 1101 1101.

Прием и проверка данных:

1. Прием данных 1101 1101.

2. Вычисление поверочных битов

1101

Данное.

Операция сумма по модулю два.

1101

Копия данного.

0000

Поверочные биты .

3. Проверка на наличие ошибок:

- поверочные биты равны нулю - ошибки нет.

Пример.

Кодирование данных и передача по линии связи :

1. Передача данного и его копии 1101 1101.

Прием и проверка данных:

1. Прием данных 1101 0101.

2. Вычисление поверочных битов

1101

Данное.

Операция сумма по модулю два.

0101

Копия данного.

1000

Поверочные биты .

3. Проверка на наличие ошибок:

- поверочные биты равны не нулю - ошибка есть.

В других методах (контрольная сумма, контроль паритета, код Хемминга, CRC, код Рида-Соломона, коды БЧХ) применяют помехоустойчивые коды, которые рассчитываются по специальным алгоритмам. Код Хемминга, CRC, Рида-Соломона, БЧХ относятся к линейным блоковым кодам.

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

2. Контрольная сумма

Контрольные суммы используются для обнаружения ошибок в протоколах UDP (User Datаgramm Protocol) транспортного уровня компьютерных сетей (Интернет).

Помехоустойчивое кодирование методом контрольной суммы позволяет:

  1. Обнаруживать одиночные ошибки.

  2. Обнаруживать множественные ошибки.

Порядок работы метода.

Кодирование данных и передача по линии связи :

1. Вычисление арифметической суммы данных (без учета переноса).

2. Вычисление контрольной суммы поразрядной инверсией суммы.

3. Передача данного и контрольной суммы.

Прием и проверка данных:

1. Прием данного и контрольной суммы.

2. Вычисление суммы принятых данных.

3. Вычисление поверочных битов, сложением суммы и контрольной суммы.

4. Проверка на наличие ошибок:

- если поверочные биты не содержат нулей, то ошибки нет.

- если поверочные биты содержат хотя бы один нуль, то есть ошибка.

Пример. Требуется передать два данных = 1100 и = 0110.

Кодирование данных и передача по линии связи :

1. Вычисление суммы данных = + :

1100

Первое данное .

+

Арифметическое сложение.

0110

Второе данное .

0010

Сумма .

2. Вычисление контрольной суммы = :

Поразрядная инверсия суммы .

1101

Контрольная сумма .

  1. Передача данных и контрольной суммы:

= 1100 0110 1101.

Прием и проверка данных:

  1. Прием данных и контрольной суммы:

= 1100 0110 1101.

  1. Вычисление суммы данных: = + :

1100

Первое данное .

+

Арифметическое сложение.

0110

Второе данное .

0010

Сумма .

3. Вычисление поверочных битов = + :

0010

Сумма .

+

Арифметическое сложение.

1101

Контрольная сумма .

1111

Поверочные биты .

4. Проверка на наличие ошибок:

- поверочные биты не содержат нулей - ошибки нет.

Пример.

Кодирование данных и передача по линии связи :

1. Передача данных и контрольной суммы:

= 1100 0110 1101.

Прием и проверка данных:

  1. Прием данных и контрольной суммы:

= 1100 1110 1101.

  1. Вычисление суммы данных: = + :

1100

Первое данное .

+

Арифметическое сложение.

1110

Второе данное .

1010

Сумма .

3. Вычисление поверочных битов = + :

1010

Сумма .

+

Арифметическое сложение.

1101

Контрольная сумма .

0111

Поверочные биты .

4. Проверка на наличие ошибок:

- поверочные биты содержат нули - ошибка есть.