Современные методы кодирования

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

За годы развития в технику связи успешно внедрены пороговые декодеры, алгоритм Витерби, коды Рида-Соломона, каскадные схемы кодирования, а также разработки последнего времени – алгоритмы для турбо кодов, многопороговые декодеры и каскадные методы кодирования и декодирования.

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

Основными характеристиками методов коррекции ошибок являются:

- средняя вероятность ошибки в информационном бите или последовательности бит;

- энергетический выигрыш кодирования (ЭВК), показывающий величину снижения энергии, необходимой для передачи одного бита данных при некоторой выбранной средней вероятности ошибки;

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

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

Современные методы кодирования - student2.ru

Рисунок 2.2 – Классификация помехоустойчивых кодов

К основным наиболее распространенным кодам можно отнести:

1) блоковые коды, в которых кодирование и декодирование производится в пределах кодовой комбинации или блока. К ним относят коды Боуза-Чоудхури-Хоквингема, коды Рида-Соломона, мажоритарно декодируемые коды;

2) сверточные коды, в которых обработка символов производится непрерывно, без разделения на блоки;

3) линейные коды, образующие векторное пространство и обладающие важным свойством: два кодовых сообщения можно сложить, используя подходящее определение суммы, и получить третье кодовое слово. Данное свойство упрощает процедуру кодирования и декодирования. Важный подкласс линейных кодов составляют циклические коды или CRC коды (Cyclic Redundancy Codes – Циклические Избыточные Коды);

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

Задачи по разделу 2

Пример 1.Приняты две кодовые комбинации 0001 и 1111. Определить значность кодовых комбинаций, их вес и кодовое расстояние между комбинациями.

Решение:

1) определение значности соответствует количеству разрядов – n в кодовой комбинации: n1=n2=4.

2) определение веса по количеству «1» в комбинации: V1=1;V2=4.

3) кодовое расстояние между комбинациями – определяется как вес суммы по модулю два кодовых комбинаций: Современные методы кодирования - student2.ru ; d=3.

Пример 2. Принята кодовая комбинация 101011. известно, что вектор ошибки Современные методы кодирования - student2.ru . Найти исходную кодовую комбинацию.

Решение:

Для нахождения кодовой комбинации определим сумму по модулю два для принятой комбинации и вектора ошибки: Современные методы кодирования - student2.ru ; Современные методы кодирования - student2.ru ; Современные методы кодирования - student2.ru ;

Современные методы кодирования - student2.ru

Пример 3. Передана кодовая комбинация 1100. Известно, что вес Современные методы кодирования - student2.ru вектора ошибки равен 2. Найти:

1) возможные варианты искаженных комбинаций.

2) кодовое расстояние, необходимое для обнаружения и устранения всех ошибок.

Решение:

1. Возможные варианты комбинаций состоят из тех комбинаций, которые отличаются от исходной двумя позиционными местами, т.к. Современные методы кодирования - student2.ru .

Возможные варианты:1010, 1001, 0110, 0101, 0000.

Проверим комбинации, сложив их по модулю два с исходной комбинацией: Современные методы кодирования - student2.ru .

Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru

2. Для обнаружения и исправления всех ошибок необходимо, чтобы кодовое расстояние Современные методы кодирования - student2.ru , где Современные методы кодирования - student2.ru – обнаруживаемые ошибки; Современные методы кодирования - student2.ru – исправляемые ошибки. При разрядности нашего числа Современные методы кодирования - student2.ru могут возникнуть четырехкратные ошибки.

Следовательно, для их исправления и обнаружения необходимо, чтобы кодовое расстояние удовлетворило условию: Современные методы кодирования - student2.ru Современные методы кодирования - student2.ru необходимо увеличить разрядность кода.

Пример 4. Определить корректирующую способность кода, имеющего следующие разрешенные комбинации: 00000, 01110, 10101, 11011.

Решение:

Построим таблицу и определим кодовые расстояния между комбинациями.

Современные методы кодирования - student2.ru

Кодовое расстояние Современные методы кодирования - student2.ru ; Современные методы кодирования - student2.ru ; Современные методы кодирования - student2.ru . Следовательно, код обнаруживает двукратные и однократные ошибки.

Устраняет однократные ошибки , т.к. Современные методы кодирования - student2.ru ; при Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru ; Современные методы кодирования - student2.ru . При кодовом расстоянии Современные методы кодирования - student2.ru код исправляет ошибки.

При Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru код исправляет одиночные и двукратные ошибки.

Пример 5. Определить значность кода n, обеспечивающего исправление всех однократных ошибок при количестве разрешенных комбинаций N=8.

Решение:

1) Определим значность кода по формуле: Современные методы кодирования - student2.ru .

2) Определим количество информационных символов- m:

Современные методы кодирования - student2.ru ;

Современные методы кодирования - student2.ru ; Современные методы кодирования - student2.ru .

При Современные методы кодирования - student2.ru т.к. m<n условие Современные методы кодирования - student2.ru не выполняется;

Современные методы кодирования - student2.ru условие Современные методы кодирования - student2.ru не выполняется;

n=6 условие Современные методы кодирования - student2.ru выполняется.

Следовательно, значность кода n=6.

Пример 6. Заданы кодовые комбинации: 0010, 11011. Образовать для этих комбинаций коды с четным и нечетным числом единиц, код с удвоением элементов и инверсный код.

Решение:

1) Код с четным числом единиц:

0010 Современные методы кодирования - student2.ru 10010;

11011 Современные методы кодирования - student2.ru 011011.

2) Код с нечетным числом единиц:

0010 Современные методы кодирования - student2.ru 00010;

11011 Современные методы кодирования - student2.ru 111011.

3) Код с удвоением элементов: 1 Современные методы кодирования - student2.ru 10; 0 Современные методы кодирования - student2.ru 01.

0010 Современные методы кодирования - student2.ru 01 01 10 01;

11011 Современные методы кодирования - student2.ru 10 10 01 10 10.

4) Инверсный код:

0010 Современные методы кодирования - student2.ru 00101101;

11011 Современные методы кодирования - student2.ru 1101111011.

Пример 7. Для кодовых комбинаций определить код Хемминга.

Решение:

1) исходная комбинация 10011.

Представим информационные и проверочные разряды: для комбинации 10011 m=5, разрядность кода n=9. Для 9-и разрядного кода символы а1, а2, а4 и а8 – проверочные (контрольные), остальные – информационные.

а9 а8 а7 а6 а5 а4 а3 а2 а1

И П И И И П И П П

1 1 0 0 1 1 1 1 1

Находим значение проверочных символов из выражения:

Современные методы кодирования - student2.ru ; Современные методы кодирования - student2.ru ;

Современные методы кодирования - student2.ru ; Современные методы кодирования - student2.ru ;

Современные методы кодирования - student2.ru ; Современные методы кодирования - student2.ru ;

Современные методы кодирования - student2.ru ; Современные методы кодирования - student2.ru ;

Причем, Si =0. Вписываем значение проверочных разрядов и получим комбинацию кода Хемминга: 10011 Современные методы кодирования - student2.ru 110011111.

2) Исходная комбинация 111110; m=6; Современные методы кодирования - student2.ru .

Проверочные символы: Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru .

Информационные символы: Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru , Современные методы кодирования - student2.ru .

а10 а9 а8 а7 а6 а5 а4 а3 а2 а1

И И П И И И П И П П

1 1 0 1 1 1 1 0 1 1

Определим проверочные символы из выражения:

Современные методы кодирования - student2.ru Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru Современные методы кодирования - student2.ru

Исходная комбинация преобразуется в код Хемминга: 111110 Современные методы кодирования - student2.ru 1101111011.

Пример 8. Принята искаженная кодовая комбинация, закодированная кодом Хемминга. Определить разряд, где произошла ошибка.

1) 111110110;

2) 1101010111.

Решение:

1) исходная комбинация:

Современные методы кодирования - student2.ru

Найдем суммы Si и определим двоичное число

Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru

Современные методы кодирования - student2.ru

N=S4 S3 S2 S1=0100. В четвертом разряде произошла ошибка, т.е. не искаженная комбинация - 111111110.

2) исходная комбинация:

Современные методы кодирования - student2.ru

Найдем суммы Si и определим двоичное число

Современные методы кодирования - student2.ru ;

Современные методы кодирования - student2.ru ;

Современные методы кодирования - student2.ru ;

Современные методы кодирования - student2.ru ;

N=0001 , следовательно в первом разряде произошла ошибка

Пример 9.Определить и исправить ошибку в передаваемой комбинации вида:

Современные методы кодирования - student2.ru

Для контроля использовать метод четности.

Решение:

Проведем проверку на четность по строкам: k1=0; k2=1; k3=0; по столбцам: k4=0; k5=0; k6=0; k7=1; k8=0; k9=0; k10=0. Проверка показала, что ошибка возникла в разряде второй строки четвертого столбца.

Запишем правильный вариант:

Современные методы кодирования - student2.ru .

Наши рекомендации