Меню

Механизм возникновения трека ошибок при декодировании последовательности кодовых комбинаций

Эффективное кодирование – это процедуры направленные на устранение избыточности.

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

Пусть имеется источник дискретных сообщений, алфавит которого .

При кодировании сообщений данного источника двоичным, равномерным кодом, потребуется двоичных элементов на кодирование каждого сообщения.

Если вероятности появления всех сообщений источника равны, то энтропия источника (или среднее количество информации в одном сообщении) максимальна и равна .

В данном случае каждое сообщение источника имеет информационную емкость бит, и очевидно, что для его кодирования (перевозки) требуется двоичная комбинация не менее элементов. Каждый двоичный элемент, в этом случае, будет переносить 1 бит информации.

Если при том же объеме алфавита сообщения не равновероятны, то, как известно, энтропия источника будет меньше

.

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

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

.

Среднее количество информации, приходящееся на один двоичный элемент комбинации при кодировании равномерным кодом

.

Пример

Для кодирования 32 букв русского алфавита, при условии равновероятности, нужна 5 разрядная кодовая комбинация. При учете ВСЕХ статистических связей реальная энтропия составляет около 1,5 бит на букву. Нетрудно показать, что избыточность в данном случае составит

,

Если средняя загрузка единичного элемента так мала, встает вопрос, нельзя ли уменьшить среднее количество элементов необходимых для переноса одного сообщения и как наиболее эффективно это сделать?

Для решения этой задачи используются неравномерные коды.

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

Учитывая, что объем информации, содержащейся в сообщении, определяется вероятностью появления

, можно перефразировать данное высказывание.

Для сообщения, имеющего высокую вероятность появления, выбирается более короткая комбинация и наоборот, редко встречающееся сообщение кодируется длинной комбинацией.

Т.о. на одно сообщение будет затрачено в среднем меньшее единичных элементов , чем при равномерном.

Если скорость телеграфирования постоянна, то на передачу одного сообщения будет затрачено в среднем меньше времени

А значит, при той же скорости телеграфирования будет передаваться большее число сообщений в единицу времени, чем при равномерном кодировании, т.е. обеспечивается большая скорость передачи информации.

Каково же в среднем минимальное количество единичных элементов требуется для передачи сообщений данного источника?

Ответ на этот вопрос дал Шеннон.

Шеннон показал, что

1. Нельзя закодировать сообщение двоичным кодом так, что бы средняя длина кодового слова была численно меньше величины энтропии источника сообщений . , где .

2. Существует способ кодирования, при котором средняя длина кодового слова немногим отличается от энтропии источника

Остается выбрать подходящий способ кодирования.

Эффективность применения оптимальных неравномерных кодов может быть оценена:

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

— позволяет сравнить эффективность применения различных методов эффективного кодирования.

В неравномерных кодах возникает проблема разделения кодовых комбинаций. Решение данной проблемы обеспечивается применением префиксных кодов.

Префиксным называют код, для которого никакое более короткое слово не является началом другого более длинного слова кода. Префиксные коды всегда однозначно декодируемы.

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

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

Рисунок 1. Пример двоичного кодового дерева

Рисунок 1. Пример двоичного кодового дерева

Две ветви, идущие от корня дерева к узлам первого порядка, соответствуют выбору между “0” и “1” в качестве первого символа кодового слова: левая ветвь соответствует “0”, а правая – “1”. Две ветви, идущие из узлов первого порядка, соответствуют второму символу кодовых слов, левая означает “0”, а правая – “1” и т. д. Ясно, что последовательность символов каждого кодового слова определяет необходимые правила продвижения от корня дерева до концевого узла, соответствующего рассматриваемому сообщению.

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

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

Любой код, кодовые слова которого соответствуют различным концевым вершинам некоторого двоичного кодового дерева, является префиксным, т. е. однозначно декодируемым.

Метод Хаффмена

Одним из часто используемых методов эффективного кодирования является так называемый код Хаффмена.

Пусть сообщения входного алфавита имеют соответственно вероятности их появления .

Тогда алгоритм кодирования Хаффмена состоит в следующем:

1. Сообщения располагаются в столбец в порядке убывания вероятности их появления.

2. Два самых маловероятных сообщения объединяем в одно сообщение , которое имеет вероятность, равную сумме вероятностей сообщений , т. е. . В результате получим сообщения , вероятности которых .

3. Повторяем шаги 1 и 2 до тех пор, пока не получим единственное сообщение, вероятность которого равна 1.

4. Проводя линии, объединяющие сообщения и образующие последовательные подмножества, получаем дерево, в котором отдельные сообщения являются концевыми узлами. Соответствующие им кодовые слова можно определить, приписывая правым ветвям объединения символ “1”, а левым — “0”. Впрочем, понятия “правые” и “левые” ветви в данном случае относительны.

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

Так как в процессе кодирования сообщениям сопоставляются только концевые узлы, полученный код является префиксным и всегда однозначно декодируем.

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

Пример на однозначность декодирования и трек ошибок

Пусть передавалась следующая последовательность

1 0 0 1 1 1 0 0 0 1

a b c d

При возникновении ошибки в первом двоичном элементе, получим

0 0 0 1 1 1 0 0 0 1

g c d

Т.О. ошибка в одном разряде комбинации первого символа привела к неправильному декодированию двух символов. (Трек ошибок).

Контрольные вопросы по теме:

  1. Назначение и цели эффективного кодирования.
  2. Поясните за счет чего, обеспечивается достижение сжатия при эффективном кодировании.
  3. Чем определяется минимальная средняя длина кодовой комбинация при применении эффективном кодировании.
  4. Какие проблемы возникают при разделении неравномерных кодовых комбинаций.
  5. Что такое префиксные коды.
  6. В чем заключается алгоритм Хаффмана.
  7. Что такое трек ошибок, и каковы причины его возникновения.

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

Учитывая
статистические свойства источника
сообщения, можно минимизировать среднее
число символов, требующихся для выражения
одного знака сообщения, что при отсутствии
шума позволяет уменьшить время передачи
или объем запоминающего устройства.

Основная
теорема Шеннона о кодировании для канала
без помех.

Эффективное кодирование сообщений для
передачи их по дискретному каналу без
помех базируется на теореме Шеннона,
которую можно сформулировать так:

1.
При любой производительности источника
сообщений, меньшей пропускной способности
канала, т. е. при условии

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

2.
Не существует способа кодирования,
обеспечивающего передачу сообщений
без их неограниченного накопления,
если

Поскольку
строгое математическое доказательство
относительно сложно [34], убедимся в
справедливости теоремы, основываясь
на эвристических соображениях.

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

Если
количество знаков в кодируемой
последовательности равно Ν,
а энтропия
источника — Η(Ζ),
то в
соответствии с (4.8) число типичных
последовательностей

Так
как Ν
= Τ/τ, где
Т — длительность кодируемой
последовательности; τ
— длительность
одного знака, то

Каждой
типичной последовательности нужно
поставить в соответствие кодовую
комбинацию той же продолжительности Т
из символов с объемом алфавита m.
При скорости манипуляции VT
число
символов в кодовой комбинации составит
TVТ,
что позволяет
образовать nk
различных кодовых комбинаций, причем

Сравнение
(5.7) и (5.8) показывает, чтоСледовательно, еслито кодовых комбинаций, пропускаемых
каналом, достаточно для того, чтобы
закодировать все типичные последовательности
знаков, причем останется еще некоторый
излишек.

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

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

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

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

Рассматриваемая
теорема Шеннона часто приводится и в
другой формулировке:

сообщения
источника с энтропией Η(Ζ)
всегда можно закодировать последовательностями
символов с объемом алфавита m
так, что среднее число символов на знак
сообщения lcр
будет сколь угодно близко к величине
но не менее ее.

Данное
утверждение обосновывается также
указанием на возможную процедуру
кодирования, при которой обеспечивается
равновероятное и независимое поступление
символов на вход канала, а следовательно,
и максимальное количество переносимой
каждым из них информации, равное log
m.
Как мы установили ранее, в общем случае
это возможно, если кодировать сообщения
длинными блоками. Указанная граница
достигается асимптотически при
безграничном увеличении длины кодируемых
блоков.

В
частности, при двоичном кодировании (m
= 2) среднее число символов на знак
сообщения может быть уменьшено до
значения, равного энтропии источника,
выраженной в дв. ед.

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

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

Для
случая отсутствия статистической
взаимосвязи между знаками конструктивные
методы построения эффективных кодов
были даны впервые американскими учеными
Шенноном и Фано. Их методики существенно
не различаются и поэтому соответствующий
код получил название кода Шеннона
— Фано
.

Код
строят следующим образом: знаки алфавита
сообщений выписывают в таблицу в порядке
убывания вероятностей. Затем их разделяют
на две группы так, чтобы суммы вероятностей
в каждой из групп были по возможности
одинаковы. Всем знакам верхней половины
в качестве первого символа приписывают
0, а всем нижним — 1. Каждую из полученных
групп, в свою очередь, разбивают на две
подгруппы с одинаковыми суммарными
вероятностями и т. д. Процесс повторяется
до тех пор, пока в каждой подгруппе
останется по одному знаку.

Пример
5.5.
Проведем
эффективное кодирование ансамбля из
восьми знаков, характеристики которого
представлены в табл. 5.4.

Таблица 5.4

Ясно, что при
обычном (не учитывающем статистических
характеристик) кодировании для
представления каждого знака требуется
три двоичных символа. Используя методику
Шеннона — Фано, получаем совокупность
кодовых комбинаций, приведенных в табл.
5.4.

Так как вероятности
знаков представляют собой целочисленные
отрицательные степени двойки, то
избыточность при кодировании устраняется
полностью. Среднее число символов на
знак в этом случае точно равно энтропии.
Убедимся в этом, вычислив энтропию:

и среднее число
символов на знак

где
n(zi)
— число символов в кодовой комбинации,
соответствующей знаку zi.

В
более общем случае для алфавита из
восьми знаков среднее число символов
на знак будет меньше трех, но больше
энтропии алфавита Η(Ζ).

Пример
5.6
.
Определим среднюю длину кодовой
комбинации при эффективном кодировании
знаков ансамбля, приведенного в табл.
5.5.

Энтропия
ансамбля равна 2,76. В результате
сопоставления отдельным знакам ансамбля
кодовых комбинаций по методике Шеннона
— Фано (табл. 5.5) получаем среднее число
символов на знак, равное 2,84.

Таблица 5.5

Следовательно,
некоторая избыточность в последовательностях
символов осталась. Из теоремы Шеннона
следует, что эту избыточность также
можно устранить, если перейти к кодированию
достаточно большими блоками.

Пример
5.7.
Рассмотрим
процедуру эффективного кодирования
сообщений, образованных с помощью
алфавита, состоящего всего из двух
знаков z1
и z2
с вероятностями появления соответственно
р(z1)
= 0,9 и ρ(z2)
= 0,1.

Так как вероятности
не равны, то последовательность из таких
букв будет обладать избыточностью.
Однако при побуквенном кодировании мы
никакого эффекта не получим.

Действительно, на
передачу каждой буквы требуется символ
либо 1, либо 0, в то время как энтропия
равна 0,47.

При кодировании
блоков, содержащих по две буквы, получим
коды, показанные в табл. 5.6.

Таблица 5.6

Так как знаки
статистически не связаны, вероятности
блоков определяются как произведение
вероятностей составляющих знаков.

Среднее число
символов на блок получается равным
1,29, а на букву — 0,645.

Кодирование
блоков, содержащих по три знака, дает
еще больший эффект. Соответствующий
ансамбль и коды приведены в табл. 5.7.

Таблица 5.7

Среднее
число символов на блок равно 1,59, а на
знак — 0,53, что всего на 12 % больше энтропии.
Теоретический минимум Η(Ζ)
=
0,47 может быть достигнут при кодировании
блоков, включающих бесконечное число
знаков:

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

Рассмотренная
методика Шеннона — Фано не всегда
приводит к однозначному построению
кода. Ведь при разбиении на подгруппы
можно сделать большей по вероятности
как верхнюю, так и нижнюю подгруппы.
Например, множество вероятностей,
приведенных в табл. 5.5, можно было бы
разбить так, как показано в табл. 5.8.

Таблица 5.8

От указанного
недостатка свободна методика Хаффмена.
Она гарантирует однозначное построение
кода с наименьшим для данного распределения
вероятностей средним числом символов
на букву.

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

Пример
5.8.
Используя
методику Хаффмана, осуществим эффективное
кодирование ансамбля знаков, приведенного
в табл. 5.5.

Процесс кодирования
поясняется табл. 5.9. Для составления
кодовой комбинации, соответствующей
данному знаку, необходимо проследить
путь перехода знака по строкам и столбцам
таблицы.

Таблица 5.9

Для
наглядности строим кодовое дерево. Из
точки, соответствующей вероятности 1,
направляем две ветви, причем ветви с
большей вероятностью присваиваем символ
1, а с меньшей 0. Такое последовательное
ветвление продолжаем до тех пор, пока
не дойдем до вероятности каждой буквы.
Кодовое дерево для алфавита букв,
рассматриваемого в табл. 5.9, приведено
на рис. 5.16.

Теперь,
двигаясь по кодовому дереву сверху
вниз, можно записать для каждой буквы
соответствующую ей кодовую комбинацию:

Требование
префиксности эффективных кодов.

Рассмотрев
методики построения эффективных кодов,
нетрудно убедиться в том, что эффект
достигается благодаря присвоению более
коротких кодовых комбинаций более
вероятным знакам и более длинных менее
вероятным знакам. Таким образом, эффект
связан с различием в числе символов
кодовых комбинаций. А это приводит к
трудностям при декодировании. Конечно,
для различения кодовых комбинаций можно
ставить специальный разделительный
символ, но при этом значительно снижается
эффект, которого мы добивались, так как
средняя длина кодовой комбинации по
существу увеличивается на символ.

Более
целесообразно обеспечить однозначное
декодирование без введения дополнительных
символов. Для этого эффективный код
необходимо строить так, чтобы ни одна
комбинация кода не совпадала с началом
более длинной комбинации. Коды,
удовлетворяющие этому условию, называют
префиксными
кодами
.
Последовательность 100000110110110100 комбинаций
префиксного кода, например кода

декодируется
однозначно:

Последовательность
000101010101 комбинаций непрефиксного кода,
например кода

(комбинация 01
является началом комбинации 010), может
быть декодирована по-разному:

или

Нетрудно
убедиться, что коды, получаемые в
результате применения методики Шеннона
— Фано или Хаффмена, являются префиксными.

Методы
эффективного кодирования коррелированной
последовательности знаков.

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

Каждому сочетанию
ставится в соответствие кодовая
комбинация по методике Шеннона — Фано
или Хаффмена.

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

Указанный
недостаток устраняется при кодировании
по методу диаграмм, триграмм или l-грамм.
Условимся называть l-граммой
сочетание из l
смежных знаков сообщения. Сочетание из
двух смежных знаков называют диаграммой,
из трех — триграммой
и т. д.

Теперь
в процессе кодирования l-грамма
непрерывно перемещается по тексту
cсообщения:

Кодовое
обозначение каждого очередного знака
зависит от l-1
предшествовавших ей знаков и определяется
по вероятностям различныхl-грамм
на основании методики Шеннона — Фано
или Хаффмена.

Конкретное
значение l
выбирают в зависимости от степени
корреляционной связи между знаками или
сложности технической реализации
кодирующих и декодирующих устройств.

Недостатки
системы эффективного кодирования.

Причиной одного из недостатков является
различие в длине кодовых комбинаций.
Если моменты снятия информации с
источника неуправляемы (например, при
непрерывном съеме информации с
запоминающего устройства на магнитной
ленте), кодирующее устройство через
равные промежутки времени выдает
комбинации различной длины. Так как
линия связи используется эффективно
только в том случае, когда символы
поступают в нее с постоянной скоростью,
то на выходе кодирующего устройства
должно быть предусмотрено буферное
устройство («упругая» задержка). Оно
запасает символы по мере поступления
и выдает их в линию связи с постоянной
скоростью. Аналогичное устройство
необходимо и на приемной стороне.

Второй недостаток
связан с возникновением задержки в
передаче информации.

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

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

Специальными
методами построения эффективного кода
трек ошибки стараются свести к минимуму
[18].

Следует отметить
относительную сложность технической
реализации систем эффективного
кодирования.

Обнаружение и исправление ошибок. Декодирующее устройство.

Рассмотрим процедуру обнаружения ошибок в принятой кодовой комбинации. Обнаружение ошибок может быть основано на сравнении принятой кодовой комбинации со всеми разрешенными. Если принятая кодовая комбинация совпадает с одной из разрешенных, то можно сделать вывод о том, что ошибок при передаче не было или переданная (разрешенная) кодовая комбинация А, перешла в другую разрешенную кодовую комбинацию Если принятая кодовая комбинация не совпадает ни с одной из разрешенных, то делается вывод о том, что произошла ошибка (или ошибки) в этой кодовой комбинации. Однако такой алгоритм декодирования требует сравнения принятой кодовой комбинации со всеми разрешенными и является поэтому весьма громоздким, особенно в том случае, когда число разрешенных кодовых комбинаций велико.

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

Рис. 7.1 Кодер кода (7,4)

Рис. 7.2. Декодирование с обнаружением ошибок для кода (7,4)

Они будут совпадать также и в том случае, если переданная (разрешенная) кодовая комбинация перешла в другую раз решенную .

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

Пример 7.4. Пусть код (6,3) задан системой проверок (7.4) — (7 6) и при передаче кодовой комбинации 101 100 на приеме получили 001 101, т. е. искажены элементы Вычислим элементы синдрома

Так как синдром отличен от нуля, то ошибка обнаружена.

Декодер для кода (7,4), работающий в режиме обнаружения ошибок, представлен на рис. 7.2.

Выходы сумматоров, в которых формируются элементы синдрома, подаются на схему ИЛИ С выхода последней снимается единица (сигнал «ошибка») при обнаружении ошибок. При этом приемник отвергает принятое кодовое слово. Такой отказ от принятого кодового слова называется стиранием и обычно предполагает повторение кодового слова заново.

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

Отсюда имеем систему уравнений

Вид синдрома будет определяться только вектором ошибок и не зависит от вида переданной кодовой комбинации. Действительно,

так как где Е — вектор ошибок, то

Рассмотренный в примере (7.4) код (6,3) имеет кодовое расстояние и способен исправлять однократные ошибки. Если неправильно принят элемент то из системы уравнений

получаем так как входит в (7.9) и (7 10) и не входит в (7.8). Значение синдромов для случая, когда имеется одиночная ошибка в том или ином элементе, приведены в табл 7.1.

Таблица 7.1

Рис. 7.3 Декодирование с исправлением ошибок для кода (7,4)

Нетрудно заметить, что вид синдрома, соответствующий искаженному элементу совпадает с столбцом матрицы (7.7). Это со всей очевидностью следует из следующей записи:

для случая, когда Е= 100000. Нетрудно догадаться, что если имела место двухкратная ошибка, например в элементах, то синдром был бы равен сумме столбцов матрицы Н. Так, если , то , т. е. будет сделан неверный вывод о том, что искажен элемент , так как код двукратные ошибки не исправляет.

Структурная схема декодера с исправлением одиночных ошибок для кода (6,3) приведена на рис. 7.3. На вход декодера поступает кодовая комбинация, сформированная кодером, изображенным на рис. 7.1. По принятой комбинации вычисляется синдром, который подается на дешифратор «синдром-ошибка». При одиночной ошибке на одном из выходов дешифратора появляется (элемент вектора ошибки). Сложение вектора ошибки с принятой комбинацией приводит к исправлению ошибки.

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Метростроевцы обещают завершить строительство трассы к 8 марту ошибка
  • Метро эксодус ошибка установки