Главная Помехоустойчивое кодирование



Повысить кодовое расстояние d кода можно при каскадировании. Кодер и декодер на рис. 6.1 изображены двухкаскадными (назначение интерливера и деинтерливера объяснено ниже). Сообщение Q на первом шаге кодируется внешним (wj, к, с/,)-кодом, а на втором - внутренним (л2, ку 2)-кодом. Параметры результирующего (и, , с/)-кода: л = «1 «2; к = кх к2\ d did2,что позволяет создавать высокопомехоустойчивые длинные коды с асимптотически хорошими характеристиками [12, 13,46].

Символы внешнего и внутреннего кодов могут выбираться из разных алфавитов - обычно из поля GF(2) и некоторого его расширения GF(2).

Имеет свои достоинства и использование одного и того же алфавита в обоих каскадах. В этом случае кг Пу, т. е. избыточное кодовое слово первого, внешнего, кода, состоящее из л, символов (ку инфор-мащюнных и mi проверочных), принимается в качестве сообщения второго, внутреннего, кода длины «2" кг с гпг дополнительными

проверочными символами. Такое одноалфавитное кодирование позволяет реализовать принцип перемежения - деперемежения символов между двумя каскадами.

Теперь мы можем пояснить назначение интерливера и деинтерливера (перемежателей - соответственно прямого и обратного), вьшолня-емых обычно на элементах задержки - регистрах сдвига разной длины.

Многие помехи в канале связи и дефекты на носителе информации имеют тенденцию группироваться, что приводит к пакетам иэ нескольких подряд следуюпдих ошибок. Прежде всего заметим, что любой двоичный пакет, состоящий не более чем из ir ошибок (где / =1,2,... - натуральное число; г - размерность поля, используемого для кодирования), воспринимается как пакет из не более чем / + 1 соседних

ошибок в символах кодового слова v. Так вот принцип перемежения - деперемежения позволяет трансформировать весьма длинные пакеты ошибок в отдельные, независимые ошибки. Эта идея иллюстрируется рис. 6.2.

Для наглядности кодовые символы изображены ординатами разной длины. Штриховыми линиями показаны ошибочные символы. Пакет ошибок искажает символы с номерами 5 ... 8 (рис. 6.2,а). Подвергнем символы исходной последовательности перемежению (тасовке), т. е. переставим их по некоторому правилу, например так, как показано на рис. 6.2,5. Затем передадим эти символы в канал, в котором по-прежнему пакет ошибок воздействует на символы из временного интервала 5 ... 8 (в скобках указаны номера символов в исходной последовательности). Тогда после деперемежения (обратной тасовки) оши-

Подобные коды иногда называют итepaтивны4и



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

групп символов I... IV.

При декодировании кодового слова v выполняются следующие операции: декодирование внутреннего («2, 2,2)-кода,деперемежение, декодирование внешнего («1, ki, с?1)-кода. На первый каскад декодирования может возлагаться задача лишь обнаружения ошибок (до с?2 - 1 штук); он метит все символы кодового слова, содержащего ошибки. Деинтерливер разносит эти символы по различным кодовым блокам. Второй каскад декодирования может работать в режиме исправления

стираний (дос?1 - 1 штук).

В качестве кодов в обоих каскадах целесообразно использовать

коды Рида - Соломона над полем GF (2).

Обобщенные структуры кодеров и декодеров. Как отмечалось в § 1.2«

кодировать и декодировать РСчсоды над бесконечными полями можно во временной и в частотной областях. Сказанное справедливо и для конечных полей. Обобщенные структуры кодеров и декодеров изображены на рис. 6.3 и 6.4.

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

Особенность временного декодера (рис. 6.4, д) - раздельное вычисление позиций и величин ошибок. Для этого приходится решать:

cl)kv

о 1 2 3 5 6 1 8 9 ю п 12

5) w

(5)(8)(3) {ю)

{12) {1) , (7) I

(5) (8)

6) К

о 1 2 3 5 6 7 8 9 ю п 12

t/tf

о 1 2 3 5 6 7 8 9 ю 11 12

Рйс. 6.2. Трансформация пакета ошибок в независимые ошибки с помощыо пере-межения-деперемежения: й - исходный процесс (пакет ошибок на интервале tjt = 5 . . . 8); б - влияние пакета ошибок на процесс, подвергнутый переме-

жению; в - независимые ошибки в восстановленном процессе



Сообщение

Сообщение

Порождающая матрица

Кодовое слово

" {"Л

Порождающий попином

Сообщение

Введение m нулевых компонент

V= (О; р) =Vj

Обратное ФМС-преобразование

Кодовое слово

Рйс. 6.3. нейного

Обобщенные структуры кодеров РС-кодов во временной области - ли

(а) и циклического (б) и в частотной области (в) ; /=1,2,..., к; / =

= 1, 2, . .л =к + т; р = (О . . . 0)

нулей

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

Частотное декодирование (структура на рис. 6.4, б) не требует решения указанных уравнений, так как позволяет непосредственно найти спектр Е конфигурации ошибок, вычисляемый как продолжение

Кодовое спово v

Вь1числение синдрома

Решение ключевого уравнения Падэ (ганкелевой системы нелинейных уравнений


viAt)

Коррекция

Решение уравнения локаторов о(г] - 0 (нахождение / - Позиции ошибок!

Контроль:

Решение системы линейных уравнений (вычислением* - величин ошибок!

Извлечение сообщения

Сообщение Q



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 [79] 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94


0.0134