
- •А.А. Кузьмин
- •1. Энтропия вероятностной схемы
- •1.1.Основные принципы, понятия и определения теории информации
- •1.2.Количество информации в сообщении
- •Энтропия источника сообщений
- •1.3.Условная энтропия
- •Взаимная информация и взаимная энтропия
- •1.7. Скорость создания информации дискретным источником без памяти
- •2. Элементы теории кодирования информации
- •Основные характеристики кодов
- •1.4.Теоремы кодирования Шеннона
- •Скорость передачи информации по каналу связи определяется количеством передаваемой информации и интервалом времени ее передачи:
- •Таким образом, для реализации помехоустойчивого кодирования в канале связи с помехами, способного обеспечить сколь угодно высокую степень верности, необходимо выполнение условия
- •Контрольные вопросы
- •3. Простые (безызбыточные) коды
- •3.4. Примеры неравномерных кодов
- •Построение кодового дерева Шеннона-Фано
- •Общие принципы построения помехоустойчивых кодов
- •Классификация помехоустойчивых кодов
- •Основные характеристики и корректирующие свойства блочных кодов
- •Линейные блочные коды с обобщенными проверками на четность
- •Формирование (n, k) кода с обобщенной проверкой на четность
- •Структурные схемы кодеров и декодеров линейного кода
- •Принцип построения циклического кода
- •Алгоритм декодирования циклических кодов
- •Структурная схема кодера циклического кода
- •Бчх коды
- •Рекуррентные коды. Кодирование с перемежением
- •Принцип построения рекуррентных (сверточных) кодов
- •Декодирование сверточных кодов
- •6. Пропускная способность каналов связи
- •Пропускная способность непрерывного канала связи
- •Пути повышения пропускной способности непрерывных каналов связи
- •1.5.Пропускная способность дискретного канала связи без помех
- •Контрольные вопросы
- •Элементы теории кодирования информации
- •Простые (безызбыточные) коды
- •Помехоустойчивые блочные коды
- •5. Рекуррентные коды. Кодирование с перемежением
- •6. Пропускная способность каналов связи
- •. Пропускная способность дискретного канала связи без помех 98
- •Основы теории информации
Классификация помехоустойчивых кодов
Классификация двоичных помехоустойчивых кодов (как и любая классификация) производится по различным признакам.
Прежде всего, все помехоустойчивые коды можно разделить на два класса: блочные и непрерывные.
При блочном кодировании каждому сообщению ставится в соответствие определенная кодовая комбинация (блок кодовых символов). Множество всех возможных кодовых слов (разрешенных) и составляют блочный код.
Длина блока может быть постоянной или переменной, поэтому различают равномерные и неравномерные блочные коды. Подавляющее большинство помехоустойчивых блочных кодов относится к равномерным кодам.
Блочные коды бывают разделимыми и неразделимыми. К разделимым относятся коды, в кодовых словах которых символы могут быть разделены на информационные (переносящие информацию) и проверочные (использующиеся для обнаружения и устранения ошибок приема). Такие коды обозначаются как (n,k), где n – общее число символов в кодовой комбинации; k – число информационных символов. Число кодовых комбинаций в таком коде не превышает 2k. К неразделимым относятся коды, символы которых нельзя разделить по их назначению на информационные и проверочные. К ним относится, например, код с постоянным весом, в котором каждая кодовая комбинация содержит одинаковое число единиц (код «3» из «7»: три единицы и 4 нуля в любом кодовом слове).
Среди разделимых кодов различают линейные и нелинейные. К линейным разделимым кодам относятся коды, в которых поразрядная сумма по модулю 2 любых кодовых слов также является кодовым словом.
Линейный код называется систематическим, если первые k символов являются информационными, а остальные проверочными. Среди линейных систематических кодов простейшим является код (n, n-1) с проверкой на четность. В таком коде только один проверочный символ. Его значение определяется путем суммирования по модулю 2 информационных символов.
Подклассом линейных кодов являются циклические коды. Они характеризуются тем, что все наборы, образованные циклической перестановкой любой кодовой комбинации, также являются кодовыми комбинациями.
Примером нелинейного кода является код Бергера, в котором проверочные символы представляют собой двоичную запись числа единиц в последовательности информационных символов: 00000; 00101; 01001; 10001; 01110; 10110; 11010; 11111.
Непрерывные коды характеризуются тем, что операции кодирования и декодирования производятся над непрерывными последовательностями символов без разбиения их на блоки. Среди непрерывных кодов наиболее применимы сверточные коды.
Из практики передачи кодированной информации известно, что существуют каналы с независимыми ошибками и каналы с группирующимися ошибками. Соответственно, существуют коды, устраняющие независимые ошибки, и коды, устраняющие блочные ошибки (пакеты ошибок). На практике чаще используются коды, устраняющие независимые ошибки, так как известен ряд достаточно эффективных способов разрушения блочных ошибок (переход к независимым ошибкам).