6.4 Коды с постоянным весом.
Под кодом с постоянным весом понимают двоичный равномерный код, в котором все разрешенные комбинации содержат одинаковое число единиц. Такой код обеспечивает обнаружение всех ошибок за исключением тех случаев, когда несколько единиц превратятся в нули, а столько же нулей – в единицы. Эти ошибки называют ошибками смещения.
Основным достоинством этих кодов является их высокая помехоустойчивость в ассиметричных каналах. Недостаток состоит в том, что из-за отсутствия чёткого разделения на информационные и проверочные символы для кодирования и декодирования необходимы достаточно сложные кодопреобразователи.
В настоящее время широкое распространение получили коды «2 из 5», «3 из 6», «3 из 7», «4 из 8», «3 из 8».
В семиэлементном коде (коде «3 из 7») количество кодовых комбинаций с соотношением единиц и нулей 3:4 равно 35.
При независимых ошибках это выражение будет иметь вид
.
Биимпульсный (код Манчестера) является кодом с постоянным весом как в пределах кодовой комбинации, так и в пределах длительности одной информационной посылки.
Кодирование заключается в том, что информация о нуле и единице заключена в двух импульсах противоположной полярности и с определённой последовательностью смены полярности. Например, при передаче «единицы» первый из двух импульсов положительный, а второй – отрицательный. При передаче «нуля» первый импульс отрицательный, а второй положительный (рис.6.1).
Рис.6.1 Биимпульсный код
Применение такого кода позволяет улучшить решение задачи тактовой синхронизации приёмной аппаратуры. Поэтому он находит широкое применение в высокочастотных цифровых системах передачи. Кроме этого биимпульсный код позволяет обнаружить возникающие ошибки.
Нарушение последовательности смены полярности импульсов может быть вызвано появлением ложного импульса. Это будет свидетельствовать о наличии ошибки в кодовой комбинации. Ошибка не обнаруживается только в том случае, когда в одной паре импульсов, соответствующих данной информационной посылке, искажались оба символа. Следовательно, если ошибки взаимонезависимы, то вероятность необнаруженной ошибки будет равна
, (6.25)
где –число посылок в кодовой комбинации до получения биимпульсной последовательности.
С целью повышения помехоустойчивости биимпульсный код сочетается с другим кодом, например с кодом проверки на чётность. В этом случае в комбинации с чётным числом единиц формируют биимпульсный код. Тогда ошибка не будет обнаружена только при искажении четного числа биимпульсных посылок. Вероятность этого события при независимых ошибках будет равна
, (6.26)
где - число символов в кодовой комбинации с проверкой на четность. Недостатками биимпульсного кода являются:
- большая избыточность ;
- сложность кодопреобразователей.