Дипломная работа: Корректирующие коды
Вторая проверка:
k2 Åb3 Åb6 Åb7 = k2 Å0Å0Å1 будет четной при k2 = 1.
Третья проверка:
k3 Åb5 Åb6 Åb7 = k3 Å1Å0Å1 будет четной при k3 = 0.
1 2 3 4 5 6 7
Передаваемая кодовая комбинация: 0 1 0 0 1 0 1
Допустим принято: 0 1 1 0 1 0 1
Для обнаружения и исправления ошибки составим аналогичные про-верки на четность контрольных сумм, в соответствии с проверочной матрицей результатом которых является двоичное (n-k ) -разрядное число, называемое синдромом и указывающим на положение ошибки, т. е, номер ошибочной позиции.
1) k1 Å b3 Å b5 Å b7 = 0Å1Å1Å1 = 1.
2)k2 Å b3 Å b6 Å b7 = 1Å1Å0Å1 = 1.
3) k3 Å b5 Å b6 Å b7 = 0Å1Å0Å1 =0.
Сравнивая синдром ошибки со столбцами проверочной матрицы, определяем номер ошибочного бита. Синдрому 011 соответствует третий столбец, т. е. ошибка в третьем разряде кодовой комбинации. Символ в 3 -й позиции необходимо изменить на обратный.
Пример 2 . Построить код Хэмминга для передачи кодовой комбинации 1 1 0 1 1 0 1 1. Показать процесс обнаружения и исправления ошибки в соответствующем разряде кодовой комбинации.
Решение: Рассмотрим алгоритм построения кода для исправления одиночной ошибки.
1. По заданной длине информационного слова (k = 8 ) , используя соотношения вычислим основные параметры кода n и m .
m = [log2 {(k+1)+ [log2 (k+1)]}]=[log2 {(9+1)+ [log2 (9+1)]}]=4,
при этом n = k+m = 12 , т. е. получили (12, 8)-код.
2. Определяем номера рабочих и контрольных позиции кодовой комбинации. Номера контрольных позиций выбираем по закону 2i .
Для рассматриваемой задачи (при n = 12 ) номера контрольных позиций равны 1, 4, 8.
При этом кодовая комбинация имеет вид:
b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12
к1 к2 1 к3 1 0 1 к4 1 0 1 1
3. Определяем значения контрольных разрядов (0 или 1) путем много-кратных проверок кодовой комбинации на четность. Количество проверок равно m = n-k . В каждую проверку включается один контрольный и определенные проверочные биты.
Номера информационных бит, включаемых в каждую проверку определяется по двоичному коду натуральных n -чисел разрядностью - m .
0001 b1 Количество разрядов m - определяет количество прове-
0010 b2 верок.
0011 b3 1) к1 Åb3 Åb5 Åb7 Åb9 Å а11 = к1 Å1Å1Å1Å1Å1 =>
0100 b4 четная при к1 =1
0101 b5 2) к2 Åb3 Åb6 Åb7 Åb10 Åb11 = к2 Å1Å0Å1Å0Å1 =>