Коды Хэмминга

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

К кодам Хэмминга относят:

– код с обнаружением однократных ошибок ();

– код с исправлением однократных ошибок ();

– код с исправлением однократных и обнаружением двойных ошибок ().

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

Код Хэмминга, исправляющий однократные ошибки, это линейный групповой код с . Все, что было сказано выше по поводу этих кодов (методика построения, процессы кодирования и декодирования, схемы кодера и декодера), имеет непосредственное отношение к коду Хэмминга с . Согласно выражениям (2.20) и (2.21), данный код способен либо исправлять однократные ошибки, либо обнаруживать двойные. Если декодер работает в режиме исправления ошибки, а произошла двойная ошибка, то результат декодирования будет ошибочен. В связи с этим, если вероятность искажения двух символов в кодовой комбинации велика, то целесообразно применение кода Хэмминга с , позволяющего исправить однократную ошибку, если была только одиночная ошибка, и, кроме того, обнаружить двойную ошибку, если исказились два символа.

Для того чтобы код был способен исправлять ошибки кратности S и одновременно обнаруживать ошибок, минимальное кодовое расстояние кода должно быть равно:

, . (2.39)

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

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

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

– одиночная ошибка в КВ; общая проверка на четность показывает наличие ошибки, а частные проверки КВ указывают на номер ошибочного разряда;

– искажение дополнительного контрольного символа; общая проверка на четность показывает наличие ошибки, а частные проверки КВ – на ее отсутствие;

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: