8.3. Матричная запись циклического кода
Кроме полиномиального представления циклических кодов, их можно представлять в матричной форме.
Существует ряд методов построения образующих матриц. В зависимости от используемого метода она может быть представлена в канонической или не в канонической форме. Образующая матрица в канонической форме может быть представлена из двух матриц: единичной транспонированной IkT, соответствующей k информационным разрядам и дополнительной Rkm, соответствующей проверочным разрядам.
Дополнительная матрица может быть построена несколькими способами:
- путем вычисления многочлена R(x), как частного от деления информационного многочлена xmG(x), на образующий полином P(x);
- путем деления последней строки транспонированной матрицы на образующий полином P(x), при этом промежуточные остатки будут представлять собой строки дополнительной матрицы.
Образующую матрицу, не имеющую каноническую форму можно построить следующим образом: первая строка получается путем дописывания к образующему многочлену, представленному двоичным кодом, k-1 нулей со стороны старшего разряда. Каждая следующая строка получается путем циклического сдвига на один разряд влево.
Например, для образующего многочлена Р(х) = x4+x3+1 = 1 1 0 0 1 образующая матрица имеет вид
,
но при таком методе построения матрица не имеет канонической формы.
Пример 1. Построить циклический код для передачи 4-х разрядного информационного слова с исправлением одиночной ошибки путем умножения строки единичной матрицы ранга- k на образующий многочлен и циклического сдвига.
Решение:
Для кода (7, 4) строка единичной матрицы имеет вид 0 0 0 1.
Умножив ее на образующий полином P(x) = x3 +x2 +1 = 1101, получим
0001 1101= 0001101.
Остальные строки получим путем циклического сдвига кодовых комбинаций образующей матрицы.
.
Строки образующей матрицы представляют собой 4 кодовые комбинации, а остальные может быть получены путем суммирования по модулю 2 всевозможных сочетаний строк матрицы.
Пример 2. Построить образующую матрицу циклического кода, обнаруживающего все одиночные и двойные ошибки при передаче 7-разряд-ного информационного слова.
Решение:
1. Определим количество проверочных разрядов. Для k = 7 и d0 = S+1 = 3;
m = [log2 {(k+1)+ [log2(k+1)]}]=[log2 {(7+1)+ [log2(7+1)]}] = 4.
При этом n = 11, т. е. получили (11, 7)-код.
2. По таблице неприводимых многочленов выбираем образующий полином Р(х) = x4 +x3+1 = 1 1 0 0 1, т. е. степени большей или равной m и числом ненулевых членов больше или равно d0.
3. Строим транспонированную единичную матрицу IkT
.
4. Определяем элементы дополнительной матрицы, как остатки от деления последней строки транспонированной матрицы на образующий полином. При этом число остатков должно быть не меньше k, число разрядов в остатке равно m, а число единиц в каждом остатке не менее d0 -1. Если после приписывания 0 к остатку получаем число короче делителя, то получаем два остатка с нулем до и после остатка.
1000000 11001
11001
10010
11001
10110
11001
11110
11001
1010
Строим образующую матрицу G(n, k)
Пример 3. Построить циклический код для передачи 4-х разрядного информационного слова с исправлением одиночной ошибки с использованием образующий матрицы.
Решение:
1. Определим количество проверочных разрядов при k = 4 и d0 = S+1 = 3
m = [log2 {(k+1)+ [log2(k+1)]}] = [log2 {(4+1)+ [log2(4+1)]}] = 3.
При этом n = k +m = 7, т. е. получим (7, 4)- код.
2. По таблице неприводимых многочленов выбираем образующий полином Р(х) = x3 +x2+1 = 1 1 0 1 , т. е. степени большей или равной m и числом ненулевых членов больше или равно d0.
3
10000 1101
1101
1010
1101
1110
1101
0110
4. Строки образующей матрицы представляют собой 4 кодовые комбинации, а остальные комбинации могут быть получены путем суммирования по модулю 2 всевозможных сочетаний строк матрицы.
a1 = 0001101 a2 = 0010111 a3 = 0100011 a4 = 1000110
a5 = a1 a2 a6 = a1 a3 a7 = a1 a4 a8 = a2 a3
0001101 0001101 0001101 0010111
0010111 0100011 1000110 0100011
0011010 0101110 1001011 0110100
a9 = a2 a4 a10 = a3a4 a11 = a1a2a3 a12 = a1a2a4
0010111 0100011 0001101 0001101
1000110 1000110 0010111 0010111
1010001 1100101 0100011 1000110
0111001 1011100
a13 = a1a3a4 a14 = a2a3a4 a15 = a1a2a3a4
0001101 0010111 0001101
0100011 0100011 0010111
1000110 1000110 0100011
1101000 1110010 1000110
1111111
Пример 4. Построить циклический код для передачи 4-х разрядного информационного слова с исправлением одиночной ошибки с использованием образующий матрицы. Образующую матрицу сформировать путем умножения транспонированной единичной матрицы на образующий полином.
Решение:
1. Определим количество проверочных разрядов при k = 4 и d0 = S+1 = 3
m = [log2 {(k+1)+ [log2(k+1)]}] = [log2 {(4+1)+ [log2(4+1)]}] = 3.
При этом n = k+m = 7, т. е. получим (7, 4)-код.
2. По таблице неприводимых многочленов выбираем образующий полином Р(х) = x3 +x+1 = 1 1 0 1 , т.е. степени большей или равной m и числом ненулевых членов больше или равно d0.
3
00011011=0001011
00101011=0010110
01001011=0101100
10001011=1011000
При этом матрица не имеет канонического вида.
Строки образующей матрицы представляют собой 4 кодовые комбинации а остальные может быть получены путем суммирования по модулю 2 всевозможных сочетаний строк матрицы.
- Тема 1. Предмет и методы теории информации и кодирования
- 1.1. Введение
- 1.2. Основные понятия и определения
- 1.3. Системы передачи информации
- Тема 2. Математическая теория информации
- 2.1. Количество информации, и ее мера
- 2.2. Свойства количества информации
- 2.3. Энтропия информации
- 5.2. График энтропии для двух альтернативных событий
- 2.4. Свойства энтропии сообщений
- 2.5. Безусловная энтропия и ее свойства
- 2.6. Условная энтропия.
- 2.5. Энтропия объединения
- Энтропия объединения (совместная энтропия) находится при помощи матрицы ( табл.3) путем суммирования по строкам или столбцам всех вероятностей вида
- Уяснению взаимосвязи между рассмотренными видами энтропий дискретных систем способствует их графическое изображение.
- Тема 3. Основы теории кодирования
- 3.1.Основные понятия и определения
- 3.2. Классификация кодов
- 3.3. Способы представления кодов
- Тема 4. Каналы связи
- 4.1. Каналы связи, их классификация и характеристики
- Пропускная способность дискретного канала связи
- Дискретный канал связи без помех
- Дискретный канал связи с помехами
- Пример. По каналу связи передаются сообщения, вероятности которых соответственно равны:
- Пропускная способность бинарного, симметричного канала
- Избыточность сообщений
- Тема 5. Оптимальное кодирование
- 5.1. Основные понятия и определения
- 5.2. Код Шеннона-Фано
- 5.3. Код Хаффмена
- Тема 6. Помехоустойчивое кодирование
- 6.1. Общие положения
- 6.2. Обнаруживающие коды
- Тема 7. Корректирующие коды
- 7.1. Основные понятия
- 7.2 Линейные групповые коды
- 7.3. Код хэмминга
- Тема 8. Циклические коды
- 8.1. Операции над циклическими кодами
- 8.2. Циклические коды, исправляющие одиночную ошибку
- Если задана длина кодовой комбинации, то число контрольных разрядов определяем по формуле
- Так как частное q(X) имеет такую же степень, как и кодовая комбинация g(X) , то q(X) является кодовой комбинацией того же k - значного кода.
- 8.3. Матричная запись циклического кода
- 8.4. Циклические коды, обнаруживающие трехкратные ошибки
- Тема 9. Коды боуза-чоудхури- хоквингема
- Сигнальные символы это вспомогательные данные, облегчающие декодирование: служебные сигналы, сигналы синхронизации и т. Д.
- Тема 10. Введение в криптологию
- 0 1 2 3 4 5 6 7 8 9 25 Ключ
- 4 7 9 2 3 5 1 6 8 Ключ
- Функция дискретного логарифма обратная