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



Алгебры, т. е. множества К с указанными операциями, являются конечными полями,или полями Галуа. Особенности этих алгебр и правила выполнения операций будут рассмотрены далее (вкратце - в § 1.3, а подробнее - в гл. 3). Однако методически удобнее основные принципы кодирования и декодирования с контролем ошибок вначале изложить для сообщений, символы которых принадлежат (бесконечному) полю рациональных чисел с обычными арифметическими операциями. Тогда читатель, недостаточно подготовленный в специальных разделах конечных алгебр, сможет на первом этапе сконцентрировать внимание исключительно на вопросах помехоустойчивого кодирования и проблеме декодирования.

Простейшие блоковые коды над полем рациональных чисел и процедура кодирования. Предположим, что задано сообщение Q = \Qf,

Qk~-\ • • • > 62> Q\\ длины к, образованное из к произвольных рациональных чисел (для простоты - целых). Для того чтобы можно было исправить V ошибок, т.е. обеспечить кодовое расстояние d = 2у+1, необходимо ввести т - 2v проверочных символов. Пусть для определенности к ~ 2, d = 3, тогда m = 2 и сформировано кодовое слово вида

V ={G2GiP2Pi}. (1.4)

Мы рассматриваем линейные блоковые коды, т. е. такие, в которых проверочные символы р2. Pi являются заданными линейными функциями от информационных символов Q2>Qt-

Рг = CI2Q2 + iGi; Pi = 22 + bxQi (1.5)

где , - некоторые, отличные от нуля числа, например целые / - 1,2.

Кодовое слово (1.4), в котором проверочные символы удовлетворяют равенствам (1.5), может быть найдено как скалярное произведение информационного вектора б = {Q2Q1) на матрицу

10 22

0 1 ал bx

(1.6)

а именно: v - QG.

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

G= [Е \ Л] или G[A\ Ej], (1.7)

где £V ~ единичная матрица порядка к; А ~ некоторая матрица размера кХ т.

* Эварист Галуа (Е. Galois, 1811-1832) - гениальный французский математик, основоположник современной алгебры.



Использование матрицы G в форме (1.7) обеспечивает систематическое кодирование, так как информационные символы Q2, Q\ входят в кодовое слово (1.4) в неизменном виде.

Итак, процедура кодирования линейным блоковым кодом сводится к умножению сообщения Q на порождающую матрицу G.

Если числа д-, Ь, z = 1, 2,в соотношениях (1.5), (1.6) произвольны, то информационные символы не могут быть выбраны любыми, а для

каждой пары сообщений - (62» Gi } н бГ) . должно соблю-

даться левое или правое неравенство в таком соотношении:

(1-8)

Ограничительное условие (1.8) получено из предположения, что QlQi и QxQi . Тогда требование d~3 будет обеспечено, если хотя бы для одной пары проверочных символов окажется выполненным неравенство рз Фрг или р\ Ф р i - Учитывая зависимости (1.5), можно получить неравенства (1.8).

Отсутствие свободы в выборе символов является существенным недостатком. Принципиально удобнее ограничения налагать на числа щ, bjy i - 1, 2, в формулах (1.5) и в матрице (1.6). Найдем для чисел а, bf запретные условия, при которых р2 = Р2 и р i = pl, что не обеспечивает требуемого кодового расстояния с? = 3 даже при Q2 Ф Q2

Искомые запретные условия следуют из соотношения (1.8) при замене знаков неравенства на знаки равенства, т. е. при

2/1 = 2/1 или агЬх ~ ауЬг 0.

(1.9)

Левая часть во втором равенстве (1.9) представляет собой определитель Д матрицы Л, входящей в матрицу G (1.7). Следовательно, при Д = О кодовое расстояние с? < 3. Условие Д - О означает, что столбцы (строки) в матрице Л линейно зависимы; наоборот, если они независимы, то As О [33] и

(1.10)

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

Декодирование линейного блокового кода с исправлением одной ошибки. Проверочные символы рг, Pi при ко на основе соотношений (1.5). Таким образом, если кодовое слово - {Q2Q1 Р2 Pi) не искажено помехами, то выполняются тождества;

йггбг - iGi + Р2 =0; -262 biQi + pi =0.

(1.11)



Эти тождества можно трактовать как т проверочных условий; они

могут быть найдены из скалярного произведения слова v = (Q2 G1P2 Pi) на матрицу

аг -fli I 1 О Ь. -bi0 1

(1-12)

Матрицу Н (1Л2) принято называть проверочной или контрольной. Сравнивая (1.11) и (1.12), можно заключить, что проверочная матрица представима в виде

Я= [-Л \е\ или я - \ -Л], (1.13)

где t - символ транспонирования. Формы (1.7) и (1.13) будем называть систематическими.

Из строения матриц G (1.7) и Я (1.12) видно, что

GH =-HG =0.

Скалярное произведение кодового вектора v на проверочную матрицу Н называют вектором-синдромом и обозначают S - (Бщ, 5" ,..., 5i),T.e.5 =vЯ

Ясно, что при отсутствии помех имеем нулевой синдром: 5" = О и 5"! ~ 5*2 = • . = - 0. Предположим теперь, что помехой е искажен какой-либо информационный символ, например Qi. Вследствие линейности кода, а также аддитивности помехи с учетом первого тождества (1.11) можно составить следующие выражения:

2 2 (Qi +е) +aiGl ~ Р2 = 2;

1 = 2 (62+е)- Pi - 2.

Таким образом, 52/2 - \\Ьг или S2/S1 = 2/2- Аналогично при аддитивном искажении символа Qi получили бы Si/ai = е = Si/bi

или S2/S1 = йу/Ъу.

По условию (1.10) 2/1 b2Jby или, что то же самое,2/2 Фс\1Ъ\. Следовательно, линейная независимость к ~ т - 2 столбцов (строк) матриц А, G и Н позволяет при декодировании определить, какой из информационных символов искажен помехой: при Si/Sy = 2/2 это символ Q2, а при S2/Sy = ay/b - символ Qy. Вычитая величину е из соответствующего символа Q (и отбрасывая проверочные символы), восстанавливаем исходное сообщение. Если же ошибочен какой-либо проверочный символ, например р2, то соответствующая ему компонента синдрома отлична от нуля, зато другая - равна нулю. Б этом случае информационные символы считаются достоверными. Проведенные рассуждения справед}швы при любом числе к информационных символов.



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.0334