Коды для асимметричных каналов
Рассмотренные выше коды построены в предположении симметричности канала связи. В реальных каналах наблюдается различная вероятность искажения единичных элементов, причем вероятность перехода 1 в 0 при прохождении сигнала по каналу связи часто существенно меньше вероятности перехода 0 в 1 и наоборот. В таких условиях удобно использовать некоторые типы негрупповых кодов. Теория этих кодов стала предметом систематического изучения лишь с недавнего времени.
а) Коды с постоянным весом
Коды с постоянным весом наиболее известны из класса кодов для асимметричных каналов. Наиболее широкое применение нашли семиэлементные и восьмиэлементные коды с соотношением единиц и нулей равными 3/4. и 4/4 соответственно. Эти коды являются неразделимыми.
В случае идеального асимметричного канала, когда вероятность транспозиции элементов равна нулю, т.е. коды с постоянным весом являются оптимальными в отношении обнаружения ошибок. Основной недостаток таких кодов состоит в том, что они являются неразделимыми и требуют громоздких кодирующих и декодирующих устройств.
Рассмотрим несколько подробнее семиэлементный код. Последовательности длины п=7 образуют различных кодовых комбинаций. Из этого числа комбинаций в качестве разрешенных используются комбинации с весом 3 (или 4), число которых равно . Минимальное расстояние в таком коде равно dmin=2. Однако при применении в качестве устройства обнаружения ошибок схемы “взвешивания” принятой кодовой комбинации (рис. 9.1) обнаруживаются все ошибки, за исключением ошибок транспозиции элементов.
Поскольку в идеальном асимметричном канале вероятность таких ошибок равна нулю, то код в таком канале обнаруживает все возможные ошибки, т.е. является оптимальным.
В реальных каналах наблюдается различная степень асимметрии. Наиболее велика она у телеграфных каналов с ЧМ, в гораздо меньшей степени асимметрия наблюдается в телефонных каналах с ОФМ, в которых до 50% всех искаженных комбинаций содержат ошибки типа транспозиции элементов.
Например, испытания радиорелейного канала при N=100Бод для различных видов манипуляции дали следующие вероятности искажения кодовой комбинации и вероятности транспозиции элементов в искаженных комбинациях:
ЧМ:
ОФМ:
Поскольку для кодов с постоянным весом , то значительно эффективнее применение таких кодов в каналах с ЧМ.
б) Коды Бергера
Бергер предложил разделимые коды, обнаруживающие все ошибки в идеальном асимметричном канале [2]. В каждой кодовой комбинации длины n m элементов являются проверочными. Проверочные элементы формируются по следующему принципу: подсчитывается число единиц в информационных разрядах и записывается в виде m разрядного двоичного числа, которое инвертируется, и полученный результат приписывается в качестве избыточности к кодовой комбинации простого кода.
Таким образом, m равно наименьшему целому числу, превышающему , т.е. . Коды Бергера, образованные подобным образом, обозначают
Например, рассмотрим процесс формирования комбинации кода Бергера для комбинации простого кода 011010. Число 1 в этой комбинации равно 3 – в двоичной записи 011. Инвертированное число (100) и приписывается в качестве проверочных элементов к комбинации простого кода: 100011010. Это и есть искомая комбинация.
Коды Бергера обнаруживают все ошибки в асимметричных каналах, т.к. асимметричная ошибка по разному влияет на информационные и проверочные символы кодовой комбинации благодаря инвертированию последних.