
сообщений по каналам с помехами достигается за счет применения
избыточного кодирования (кодирования с исправлением и обнаружением
ошибок).
Кодированные сообщения всегда содержат дополнительные или
избыточные символы. Эти символы используются для того, чтобы
подчеркнуть индивидуальность каждого передаваемого сообщения. Их всегда
выбирают так, чтобы сделать маловероятными потери сообщением его
индивидуальности из-за искажений достаточно большого числа символов.
Рассмотрим дискретный q-ичный канал, входной и выходной алфавиты
которого образуют конечное поле GF{q}. В случае q=2 имеем двоичный канал
с символами 0' и 1. Совокупность всех последовательностей элементов поля
GF(q} длины п образует векторное пространство V
n
.
q
Рассмотрим блоковую пепедачу павиовеооятиых Q-ИЧНЫХ сообщений
х={х,}
nr
, x
∈
GF(q), ∀i, где nR—длина передаваемого сообщения. Множество
векторов
xi
∈
V
n
.
q
образует ансамбль сообщений X^{x:x,
∈
EGF(ci), i=1 nR, x∈V
11
"}.
Введем в рассмотрение подмножество
Y
∈
V
n
.
q
, содержащее не менее q
nR
последовательностей у= {у:}", yi=GF{q), Vj.
Затем множество сообщений Х отображается на множество Y таким образом,
что каждому сообщению х
∈
Х ставится во взаимно однозначное соответствие
некоторая последовательность y
∈
Y. Множество У называют при этом
блоковым кодом, а правило отображения способом кодирования.
Операцию кодирования можно существенно упростить, если
рассматривать только линейные коды. Множество векторов У(n,R)∈
У" называют линейным кодом длины п и. скорости
R тогда и только тогда, когда оно является пР-мерным подпространством
пространства всех последовательностей длины п, заданных V
n
.
q
[5].
Чтобы кодирование в канале было эффективным, необходимо согласовать
свойства кода Y(n,R) с характером помех. Согласование будет тем более
полным, чем большая часть из числа всех обнаруживаемых или
корректируемых ошибок приходится на долю наиболее вероятных. Для
построения кода с обнаружением и исправлением независимых ошибок
удобным оказывается подход, при котором корректирующие свойства кода
описываются расстояниями между элементами множества Y{n, R) (кодовыми
словами).
Вес Хемминга у, обозначаемый W(y), определяется как число ненулевых
компонент вектора у. Так как расстояние Хемминга d между двумя
векторами y
\
и у
2
равно числу компонент, которыми они отличаются, то
расстояние между у' " у
2
равно W(y
1
—у
2
). Если векторы у' и у
2
оба являются
кодовыми векторами линейного кода Y(n,R), то разность y
1
—у
2
также должна
быть кодовым вектором, потому что множество всех кодовых векторов есть
линейное векторное пространство-
Следовательно, расстояние между двумя кодовыми векторами равно весу
некоторого третьего кодового вектора и минимальное расстояние для
линейного кода Y(n,R) равно минимальному весу его ненулевых векторов.
Для обнаружения произвольных искажений, которые измеряют в
передаваемых кодовых блоках не более t символов, необходимо и достаточно,
чтобы никакие t-кратные искажения не переводили одно кодовое слово в
другое. Это условие будет выполнено, если множество V (п, К)выбрано так,
что в нем нет двух кодовых слов, находящихся на расстоянии, меньшем t+l-
Если такой код использован для кодирования сообщений то прием
последовательности, которой нет в списке кодовых слов, является признаком
обнаружения ошибки.
Для того чтобы код исправлял все ошибки, кратность которых не
превосходит t, никакая пара кодовых слов под действием таких ошибок не
должна переходить в одну и ту же третью последовательность из , Другими
словами, все пары уi, yi
∈
Y(n,R) должны находиться друг от друга на рас-
стоянии, не меньшем 2t+1. Минимальное расстояние, взятое по всем парам
кодовых слов, называется минимальным ко-довым ра с стояние м. В общем
случае для исправления всех ошибок кратности не выше t и одновременного
обнаружения ошибок кратности не выше f, f
≥
f, необходимо и достаточно
выполнение условия do^t-^-f-т-},
т
'
:!
•
e
do—минимальное кодовое расстояние.
Здесь учитывается, что в коде, допускающем исправление вплоть до /-кратных
ошибок, происходит и обнаружение таких ошибок, поэтому, например, при
исправлении однократных и обнаружении двух- и трехкратных ошибок
должно быть rfo^5.
ПРОВЕРОЧНАЯ МАТРИЦА
Известно, что любое п R-мерное подпространство n-мерного линейного
пространства может быть задано с помощью системы n(1-R} линейно
независимых однородных уравнений, связывающих координаты векторов в
некотором базисе. Так как координатами векторов из V
n
.
q
в единичном базисе
являются символы у1, y2,..yn то система уравнений, определяющих линейный
код Y(n,R). имеет вид
(8)
,)1(,1,0
1
Rni
y
h
j
n
j
ij
−==
∑
=
где hij
∈
GF(q}, V i, /, y
∈
GF(q),
∀
j, m=n(1—R). Арифметические операции в (8)
выполняются над полем GF(q). Уравнение (8) можно переписать в матричной
форме
yH
T
=0 (9)
гд.е y={yj}
n
-, H==[h
ij
}, i=1m, J=1n: Н
T
T
T
—матрица, полудающаяся
транспонированием Н. Матрица Н, составленная яз коэффициентов уравнений