- •Методические указания
- •Содержание
- •Общие методологические указания к выполнению лабораторного практикума
- •1 Цели и задачи лабораторного практикума
- •2 Порядок выполнения лабораторных работ
- •Структурная схема передачи информации
- •Основные понятия и определения
- •Количество информации в дискретном сообщении. Энтропия
- •Параметры и характеристики кодов
- •Избыточность дискретного источника сообщений
- •Классификация кодов
- •Не избыточные коды
- •2.6.1 Простые равномерные коды
- •Описание программного обеспечения для выполнения лабораторных работ
- •Программа исследований
- •Содержание отчёта
- •Контрольные вопросы
- •Лабораторная работа № 2 Эффективное кодирование. Метод Шеннона-Фано
- •1 Цель работы
- •2 Основные теоретические положения
- •2.1 Эффективное кодирование
- •2.1.1 Общие положения
- •Коды Шеннона - Фано.
- •2.1.3 Коды Хаффмана.
- •Программа исследований
- •Содержание отчёта
- •Контрольные вопросы
- •1 Цель работы
- •2 Основные теоретические положения
- •2.2 Основы матричного представления кодов
- •2.3 Код с проверкой на четность
- •2.4 Код с простым повторением
- •3 Программа исследований
- •4 Содержание отчета
- •5 Контрольные вопросы
- •2.2 Коды Хэмминга
- •3 Программа исследований
- •4 Содержание отчета
- •5 Контрольные вопросы
- •2.2 Матричное представление циклических кодов
- •2.3 Выбор образующего полинома
- •2.4 Обнаружение и исправление ошибок
- •2.5 Коды Файра
- •3 Программа исследований
- •4 Содержание отчета
- •5 Конрольные вопросы
- •Лабораторная работа №6 Динамическое кодирование неравномерными кодами. Динамические коды Хаффмена
- •1 Цель работы
- •2 Основные теоретические положения
- •2.1 Динамическое кодирование Хаффмена
- •2.2 Алгоритм динамического кодирования методом fgk
- •3 Программа исследований
- •4 Содержание отчета
- •5 Контрольные вопросы
1 Цель работы
Приобретение практических навыков построения помехоустойчивых кодов, обнаруживающих ошибки. Экспериментальное исследование построенных кодов.
2 Основные теоретические положения
2.1 Избыточное кодирование. Общие понятия и определения
Помехоустойчивые избыточные коды являются одним из наиболее эффективных средств обеспечения высокой достоверности передачи дискретной информации. Под помехоустойчивыми кодами понимают коды, позволяющие обнаруживать и исправлять ошибки, возникающие в результате влияния помех в канале связи.
Помехоустойчивость кодирования обеспечивается за счет введения избыточности в кодовые комбинации, т.е. за счет того, что не все разряды в кодовых комбинациях используются непосредственно для передачи информации. Часть разрядов кодовой комбинации используется для реализации возможности обнаружения ошибок, поразивших ее.
При дальнейшем рассмотрении помехоустойчивых кодов будем полагать их блочными и равномерными. В разделимых блочных кодах информационные и проверочные позиции всегда расположены раздельно на одних и тех же местах в блоке (кодовой комбинации).
Вообще говоря, идея обнаружения ошибок заключается в использовании для передачи не всех кодовых комбинаций длины n, а только части из них. Таким образом, все комбинации делятся на разрешенные и запрещенные. В том случае, если на приемник поступает запрещенная комбинация – регистрируется факт ошибки.
Общее число кодовых комбинаций в коде длиной n при m=2 (двоичный код):
N = 2n. (31)
Из них разрешенных:
Np = 2k, (32)
а запрещенных:
Nз = (N – Np) = 2n – 2k = 2r, (33)
где k – количество информационных разрядов в кодовой комбинации;
r = n - k – количество проверочных разрядов.
Избыточность кода R – определяет долю проверочных разрядов внутри блока (кодовой комбинации).
r
R
n
Очевидно, что для того, чтобы код имел возможность обнаружения всех одиночных ошибок, любые две разрешенные кодовые комбинации должны отличаться друг от друга не менее, чем двумя разрядами. Для оценки степени различия между произвольными комбинациями данного кода используется понятие минимального кодового расстояния – dmin. Минимальное кодовое расстояние определяется минимальным весом суммы по модулю 2 при сложении всех возможных пар кодовых комбинаций. Напомним, что вес кодовой комбинации – это количество ненулевых разрядов в ней.
Минимальное кодовое расстояние связано с кратностью обнаруживаемых ошибок следующим соотношением:
dmin t0 + 1, (35)
где dmin – минимальное кодовое расстояние;
t0 – кратность обнаруживаемых ошибок.
Таким образом, для построения кода, обладающего требуемой обнаруживающей способностью t0, необходимо внести в него такую избыточность, которая обеспечила бы минимальное кодовое расстояние не менее t0+1. Для определения количества проверочных символов r, которые нужно добавить к безызбыточной кодовой комбинации, существует ряд верхних и нижних оценок: границы Хэмминга, Элайеса, Варшамова-Гильберта и др.
Граница Хэмминга:
(36)
Граница Варшамова-Гильберта:
(37)
С
in
=
n!
г
i!
(
n -
i
)!
де
Cni
– число сочетаний из n
по i.
В литературе существуют рассчитанные значения количества проверочных символов r, для двоичного алфавита при l≤k≤60 и 2≤dmin≤21, представленные в виде таблицы [3, таблица 15].
