ЛИНЕЙНЫЕ КОДЫ
Блочным линейным кодом называется (n,k) код, проверочные символы которого являются линейными комбинациями информационных символов. Здесь:
n– длина кода, то есть длина кодовых слов
k– число информационных символов
Обозначим U – последовательность из k информационных символов.
U=(u1, u2,…….uk)
Обозначим V – кодовое слово линейного кода длиной n символов.
V=(v1, v2,……….vn)
Кодовое слово V формируется из последовательности U по следующему правилу:
Коэффициенты al,iпредставляют собой фиксированные двоичные символы, не зависящие от u .При выборе разных совокупностей al,i получаются различные линейные коды.
Отношение R=k/nназывается скоростью кода, а величина W=1-R – называется избыточностью кода.
Линейный код может быть задан в виде таблицы кодовых слов или при помощи указания коэффициентов al,i . Второй способ более экономичен.
При задании линейного кода с помощью набора коэффициентов al,i записывается образующая матрица G. Матрица G имеет размер kxn . Первые k столбцов представляют собой единичную матрицу kxk , следующие n-k столбцов представляют совокупность коэффициентов al,i (матрица проверочных элементов).
Это запись образующей матрицы в канонической форме.
В строке матрицы проверочных элементовдолжно быть не менее чем (dmin-1) единиц, а расстояние Хэмминга между строками не менее (dmin-2), где dmin - кодовое расстояние.
При заданной информационной последовательности и образующей матрице кодовое слово V получают следующим образом
Vi=Ui при 1<=i<=k
и
Vi=U1*a1,i Å U2*a2,i Å …. Å Uk*ak,i при k+1<=i<=n
Пример
Пусть разделимый линейный код (5,3) задан при помощи образующей матрицы G
Запишем в виде формул процедуру нахождения символов кодового слова, если задана некоторая информационная последовательность U=(u1,u2,u3). Кодовое слово будет содержать 5 символов V=(v1,v2,v3,v4,v5).
Если в информационной последовательности имеется только один символ 1 на j – ой позиции, а на остальных позициях находятся нули U=(000….1j….0), то соответствующее кодовое слово V будет представлять собой j – ю строку матрицы G. Обозначим j – ю строку матрицы G, как gj. Произвольное кодовое слово можно представить в виде суммы по модулю 2 строк образующей матрицы с номерами j ,значения которых совпадают с номерами ненулевых разрядов в информационной последовательности.
Вернемся к примеру, приведенному выше. Пусть U=(101), тогда V=(10111), кодовое слово получилось как сумма по модулю 2 первой и третьей строк образующей матрицы.
Дата добавления: 2015-08-26; просмотров: 988;