Дипломная работа: Корректирующие коды
При этом, m = [log2 (1+n)] или m = [log2 {(k+1)+ [log2 (k+1)]}], где ква-дратные скобки обозначают округление до большего целого.
В таблице 1 приведены соотношения между длиной кодовой комбинации и количеством информационных и контрольных разрядов для кода исправляющего одиночную ошибку, а также эффективность использования канала связи.
Для исправления двукратной ошибки
или . (5)
Введение избыточности в кодовые комбинации при использовании корректирующих кодов существенно снижает скорость передачи информации и эффективность использования канала связи.
Например, для кода (31, 26) скорость передачи информации равна
,
т. е. скорость передачи уменьшается на 16%.
Таблица 1
n | 7 | 10 | 15 | 31 | 63 | 127 | 255 |
k | 4 | 6 | 11 | 26 | 57 | 120 | 247 |
m | 3 | 4 | 4 | 5 | 6 | 7 | 8 |
0,57 | 0,6 | 0,75 | 0,84 | 0,9 | 0,95 | 0,97 |
Как видно из таблицы 1, чем больше n, тем эффективнее используется канал.
Пример 1. Определить количество проверочных разрядов для систематического кода исправляющего одиночную ошибку и состоящего из 20 информационных разрядов.
Решение: Общая длина кодовой комбинации равна n = k+m, где k - количество информационных разрядов, а m - проверочных разрядов.
Для обнаружения двойной и исправления одиночной ошибки зависимости для разрядов имеют вид , при этом
m = [log2 {(k+1)+ [log2 (k+1)]}]=[log2 {(20+1)+ [log2 (20+1)]}]=5,
т. е. получим (25, 20)-код.
2. ЛИНЕЙНЫЕ ГРУППОВЫЕ КОДЫ
Линейным называется код, в котором проверочные символы представляют собой линейные комбинации информационных. Групповым называется код, который образует алгебраическую группу по отношению операции сложения по модулю два.
Свойство линейного кода : сумма (разность) кодовых векторов линей-ного кода дает вектор, принадлежащий этому коду. Свойство группового кода: минимальное кодовое расстояние между кодовыми векторами равно минимальному весу ненулевых векторов. Вес кодового вектора равен числу единиц в кодовой комбинации.
Групповые коды удобно задавать при помощи матриц, размерность которых определяется параметрами k и n . Число строк равно k, а число столбцов равно n = k+m.
. (6)
Коды, порождаемые этими матрицами, называются (n, k )-кодами, а соответствующие им матрицы порождающими (образующими, производящими). Порождающая матрица G состоит из информационной Ikk и проверочной Rkm матриц. Она является сжатым описанием линейного кода и может быть представлена в канонической (типовой) форме
. (7)
В качестве информационной матрицы удобно использовать единичную матрицу, ранг которой определяется количеством информационных разрядов
. (8)
Строки единичной матрицы представляют собой линейно-незави-симые комбинации (базисные вектора), т. е. их по парное суммирование по модулю два не приводит к нулевой строке.
Строки порождающей матрицы представляют собой первые k комбинаций корректирующего кода, а остальные кодовые комбинации могут быть получены в результате суммирования по модулю два всевозможных сочетаний этих строк.
Столбцы добавочной матрицыRkm определяют правила формирования проверок. Число единиц в каждой строке добавочной матрицы должно удовлетворять условию r1 ³ d0 -1 , но число единиц определяет число сумматоров по модулю 2 в шифраторе и дешифраторе, и чем их больше, тем сложнее аппаратура.
Производящая матрица кода G(7,4) может иметь вид
и т.д.
Процесс кодирования состоит во взаимно - однозначном соответствии k -разрядных информационных слов - I и n- разрядных кодовых слов - с
c=IG. (9)