Скачиваний:
79
Добавлен:
04.03.2014
Размер:
1.58 Mб
Скачать

33. Таблицы опознавателей и проверочные уравнения для различных кодов (7;4); (7;3); (8;2); (9;3).

Код (7; 4). Исправление одиночных ошибок

Пример

Принята следующая кодовая комбинация: 0001110. Определить, в каком разряде произошла ошибка, исправить ее и записать информационные символы.

Из таблицы опознавателей 5.1 имеем:

Таблица 5.1

Векторы ошибок

Опознаватель

0000001

001

0000010

010

0000100

011

0001000

100

0010000

101

0100000

110

1000000

111

Складывая единицы в первом, втором и третьем разрядах опознавателей, получаем соответственно:

а1 Е а3 Е а5 Е а7 = 0. (1)

а2 Е а3 Е а6 Е а7 = 0. (2)

а4 Е а5 Е а6 Е а7 = 0. (3)

Проще всего выразить а1, а2 и а4, так как они встречаются по одному разу в уравнениях:

а1 = а3 Е а5 Е а7;

а2 = а3 Е а6 Е а7;

а4 = а5 Е а6 Е а7.

Таким образом, проверочные разряды у нас 1-й, 2-й и 4-й, следовательно, информационные разряды: 3-й, 5-й, 6-й, 7-й. Находим опознаватель ошибки из уравнений (1), (2) и (3):

а1 Е а3 Е а5 Е а7 = 1 Е 1 Е 0 Е 0 = 0;

а2 Е а3 Е а6 Е а7 = 1 Е 1 Е 0 Е 0 = 0;

а4 Е а5 Е а6 Е а7 = 1 Е 0 Е 0 Е 0 = 1.

Получаем опознаватель 100, следовательно, ошибка в 4-м разряде. Складываем полученную комбинацию 0001110 с вектором ошибки 0001000. Получаем:

Информационные символы равны: а7 = 0, а6 = 0, а5 = 1, а3 = 1.

Проверим:

а1 Е а3 Е а5 Е а7 = 0 Е 1 Е 0 Е 1 = 0;

а2 Е а3 Е а6 Е а7 = 1 Е 1 Е 0 Е 0 = 0;

а4 Е а5 Е а6 Е а7 = 1 Е 1 Е 0 Е 0 = 0.

Код (7; 3). Исправление двойных смежных ошибок

Пример

Принята следующая кодовая комбинация: 1011001. Определить, в каком разряде произошла ошибка, исправить ее и записать информационные символы.

Таблица 5.4. Опознаватели для одиночных и двойных смежных ошибок

Вектор ошибки

Опознаватель

0000001

0001

0000010

0010

0000100

0100

0001000

1000

0010000

1101

0100000

0111

1000000

1110

Чтобы получить опознаватель двойной ошибки, нужно сложить соответствующие опознаватели для одиночных ошибок (например, опознаватель для ошибки в 1-м и 2-м разрядах равен 0011).

Складывая единицы в первом, втором, третьем и четвертом разрядах опознавателей, получаем:

а1 Е а5 Е а6 = 0; (1)

а2 Е а6 Е а7 = 0; (2)

а3 Е а5 Е а6 Е а7 = 0; (3)

а4 Е а5 Е а7 = 0. (4)

Проще всего выразить а1, а2, а3 и а4, так как они встречаются по одному разу в уравнениях:

а1 = а5 Е а6;

а2 = а6 Е а7;

а3 = а5 Е а6 Е а7;

а4 = а5 Е а7.

Таким образом, проверочные разряды у нас 1-ый, 2-ой, 3-ий и 4-ый, следовательно, информационные разряды: 5-ый, 6-ой, 7-ой. Находим опознаватель ошибки из уравнений (1), (2), (3) и (4):

а1 Е а5 Е а6 = 1 Е 1 Е 0 = 0;

а2 Е а6 Е а7 = 0 Е 0 Е 1 = 1;

а3 Е а5 Е а6 Е а7 = 0 Е 1 Е 0 Е 1 = 0;

а4 Е а5 Е а7 = 1 Е 1 Е 1 = 1.

Получаем опознаватель 1010, следовательно, ошибка в 5-ом и 6-ом разрядах. Складываем полученную комбинацию 1011001 с вектором ошибки 0110000 и получаем:

Информационные символы равны: а7 = 1, а6 = 1, а5 = 0.

Проверим:

а1 Е а5 Е а6 = 1 Е 0 Е 1 = 0;

а2 Е а6 Е а7 = 0 Е 1 Е 1 = 0;

а3 Е а5 Е а6 Е а7 = 0 Е 0 Е 1 Е 1 = 0;

а4 Е а5 Е а7 = 1 Е 0 Е 1 = 0.

Код (8; 2). Исправление двойных независимых ошибок

Пример

Принята следующая кодовая комбинация:

Определить, в каком разряде произошла ошибка, исправить ее и записать информационные символы.

Таблица 5.3. Опознаватели для двойных независимых ошибок

Номер разряда

Опознаватель

1

00000001

2

00000010

3

00000100

4

00001000

5

00001111

6

00010000

7

00100000

8

00110011

9

01000000

10

01010101

11

01101010

12

10000000

13

10010110

14

10110101

15

11011011

Складывая единицы в первом и последующих разрядах опознавателей, получаем:

а1 Е а5 Е а8 = 0; (1)

а2 Е а5 Е а8 = 0; (2)

а3 Е а5 = 0; (3)

а4 Е а5 = 0; (4)

а6 Е а8 = 0; (5)

а7 Е а8 = 0. (6)

Проще всего выразить а1, а2, а3, а4, а6 и 7-ой разряды, так как они встречаются по одному разу в уравнениях:

а1 = а5 Е а8;

а2 = а5 Е а8;

а3 = а5;

а4 = а5;

а6 = а8;

а7 = а8.

Таким образом, проверочные разряды у нас 1-ый, 2-ой, 3-ий, 4-ый, 6-ой и 7-ой, следовательно, информационные разряды: 5-ый, 8-ой. Находим опознаватель ошибки из уравнений (1), (2), (3), (4), (5) и (6):

а1 Е а5 Е а8 = 1 Е 0 Е 1 = 0;

а2 Е а5 Е а8 = 0 Е 0 Е 1 = 1;

а3 Е а5 = 1 Е 0 = 1;

а4 Е а5 = 1 Е 0 = 1;

а6 Е а8 = 1 Е 1 = 0;

а7 Е а8 = 0 Е 1 = 1.

Получаем опознаватель 101110. Такой опознаватель не подходит для одиночной или 2-ой независимой ошибки. Таким образом, получается, что есть более двух ошибок при передаче, но исправить их этим кодом нельзя, нужен переспрос.

Код (9; 3). Исправление пачек ошибок (меньше или равно трем)

Пример

Принята следующая кодовая комбинация:

Определить, в каком разряде произошла ошибка, исправить ее и записать информационные символы.

Таблица 5.5. Опознаватели для пачки из 3-х и менее ошибок

Номер разряда

Опознаватель

1

0000001

2

0000010

3

0000100

4

0001000

5

0010000

6

0100000

7

0001001

8

0010010

9

0100100

10

1000000

11

0001011

12

0010001

13

1000001

14

0001111

15

0100011

Данный код исправляет одиночные ошибки, двойные смежные, двойные в пределах 3-х знаков (например, в 1-ом и 3-ем или 5-ом и 7-ом разрядах) и тройные смежные. Соответственно, чтобы получить опознаватель двойной или тройной ошибки, нужно сложить по модулю 2 соответствующие опознаватели для одиночных ошибок (например, опознаватель для ошибок в 1-ом, 2-ом и 3-ем разрядах равен 000111).

Складывая единицы в первом и следующих разрядах опознавателей, получаем:

а1 Е а7 = 0; (1)

а2 Е а8 = 0; (2)

а3 Е а9 = 0; (3)

а4 Е а7 = 0; (4)

а5 Е а8 = 0; (5)

а6 Е а9 = 0. (6)

Проще всего выразить а1, а2, а3, а4, а5 и а6 разряды, так как они встречаются по одному разу в уравнениях:

а1 = а7;

а2 = а8;

а3 = а9;

а4 = а7;

а5 = а8;

а6 = а9.

Таким образом, проверочные разряды у нас 1-ый, 2-ой, 3-ий, 4-ый, 5-ый и 6-ой. Следовательно, информационные разряды: 7-ой, 8-ой, 9-ый. Находим опознаватель ошибки из уравнений (1), (2), (3), (4), (5) и (6):

а1 Е а7 = 0 Е 1 = 1;

а2 Е а8 = 1 Е 1 = 0;

а3 Е а9 = 0 Е 1 = 1;

а4 Е а7 = 1 Е 1 = 0;

а5 Е а8 = 0 Е 1 = 1;

а6 Е а9 = 1 Е 1 = 0.

Получаем опознаватель 010101. Такой опознаватель не подходит ни одной ошибке (или группе ошибок), которую может исправить данный код (см. выше). Таким образом, получается, что ошибки есть при передаче, но исправить их этим кодом нельзя, следовательно, нужен переспрос.