Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Приложения теории информации к задачам радиотехники. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
2.7. Построение группового кода
1010010
§· ¨¸
1001011
¨¸
G
4,7
¨¸
0011001
¨¸
1011100
©¹
.
Решение. Используем свойство группового кода, заключающееся в том, что если складывать строки матрицы по 2, 3,…, то вновь будем полу­чать кодовые комбинации, принадлежащие этому коду. Проделывая эту процедуру многократно с исходной матрицей, получим
1000101
§· ¨¸
0100011
¨¸
G
4,7
¨¸
0010111
¨¸
0001110
©¹
.
Пример 39. Пусть задана образующая матрица
1000101
§· ¨¸
0100011
¨¸
G
4,7
¨¸
0010111
¨¸
0001110
©¹
и кодовая комбинация E = 0110. Определить контрольные элементы и сформировать кодовую комбинацию группового кода. Построить прове­рочную матрицу.
Решение. Определяем контрольные элементы, используя подмат- рицу контрольных элементов:
01 10 11 01 1,
c
uuuu
1
0 0 11 11 01 0,
c
u uu u
2
01 11 11 0 0 0.
c
uuu u
3
Тогда кодовая комбинация группового кода E = 0110100.
Поскольку
HQI
mn mn
T
|,|
,,
, то в нашем случае проверочная матрица
имеет вид
1011100
§· ¨¸
H
0111010
4,7
¨¸ ¨¸
1110001
©¹
.
131
2. Кодирование информации
Пример 40. Построить корректирующий код, который будет пере- давать 34 сообщения и обнаруживать две ошибки. Закодировать в спроек­тированном коде сообщение, соответствующее десятичному числу 12.
Решение. Число информационных символов кода определим по формуле
@>
.
634log2 m
Поскольку код должен обладать свойствами только обнаружения двух ошибок (т.е. r = 2), то определения кодового расстояния используем формулу (61)
.
3321
min
t rd
d = 3 – нечетное, поэтому для определения числа контрольных сим-
волов используем формулу (61). Поиск осуществляем в соответствии с итерационной процедурой, начиная с k = 1:
при k = 1, n = m + k = 6 + 1 = 7:
13
2
i
72
i
0
1
i
¦¦
72
0
i

1
0
CCCC
7
72

2
371loglogloglog1
t
,
1 ≥ 3 – неравенство не выполняется;
при k = 2, n = m + k = 6 + 2 = 8:
13
2
i
82
0
i
1
i
¦¦
72
0
i

1
0
CCCC
8
82

t
2
17,381loglogloglog2
,
2 ≥ 3,17 – неравенство не выполняется;
при k = 3, n = m + k = 6 + 3 = 9:
13
2
i
92
0
i
1
i
¦¦
92
0
i

1
0
CCCC
9
92

2
t
32,391loglogloglog3
,
3 ≥ 3,32 – неравенство не выполняется;
при k = 4, n = m + k = 6 + 4 = 10:
13
2
i
92
i
0
1
i
¦¦
102
i
0

1
0
CCCC
10
102

2
46,3101loglogloglog4
t
,
4 ≥ 3,46 – неравенство выполняется.
132
2.7. Построение группового кода
Итерационную процедуру прекращаем, следовательно, число кон­трольных символов k = 4. Образующая матрица должна содержать 6 строк (по числу информационных символов) и 10 столбцов (по общему количе­ству символов передаваемого сообщения n = m + k = 6 + 4 = 10). Матрицу запишем в каноническом виде, она будет содержать единичную квадрат­ную матрицу размерности 6u6 и подматрицу контрольных элементов раз­мерности 6u4. Построим шестнадцать комбинаций простого кода (2k =
4
= 16), выберем любые шесть, удовлетворяющие условиям построения
= 2 матрицы R
контрольных элементов, а именно вес кодовой комбинации
6,4
должен быть не менее чем d – 1 = 3 – 1 = 2, а отличаться между собой ко­довые комбинации должны не менее чем в d – 2 = 3 – 2 = 1 разрядах.
Образующая матрица группового кода (10, 6) имеет следующий вид:
0011
1101
0101
0110
1001
1010
.
10,6
100000
010000
001000
G
000100
000010
000001
Образующая матрица полностью задает групповой код.
Требуется сформировать кодовую комбинацию, соответствующую десятичному числу 12 в разработанном коде. Переведем 12 в двоичный код – это 1100. Поскольку в коде 6 информационных разрядов, то доба- вим слева нули, т.е. информационная часть кодовой комбинации будет E = 001100. Контрольные символы сформируем на основании соотноше­ния (65), т.е.
перемножим информационные разряды на элементы кон-
трольной подматрицы образующей матрицы:
c
=0u00u11u01u00u10u1= 0,
1
c
=0u00u11u11u10u00u0= 0,
2
c
=0u10u01u01u10u00u1= 1,
3
c
=0u10u11u11u00u10u0= 1.
4
В разработанном групповом коде окончательно кодовая комбина­ция для передачи по каналу связи будет следующая: E* = 0011000011.
Пример 41. Построить матрицу группового кода, способного исправ- лять одиночную ошибку при передаче 16 символов первичного алфавита.
133
2. Кодирование информации
Решение. Поскольку необходимо передавать 16 различных сообще-
ний, соответствующих 16 символам первичного алфавита, поэтому коли­чество информационных разрядов равно
@>
2
. Зная, что код
416log
m
должен исправлять одиночную ошибку, для определения кодового рас­стояния используем формулу (59)
.
311212
min
t sd
d = 3 – нечетное, поэтому для определения числа контрольных сим-
волов используем формулу (61). Поиск осуществляем в соответствии с итерационной процедурой, начиная с k = 1:
при k = 1, n = m + k = 4 + 1 = 5:
13
2
i
52
0
i
1
i
¦¦
52
0
i

1
0
CCCC
5
52

2
t
58,251loglogloglog1
,
1 ≥ 2,58 – неравенство не выполняется;
при k = 2, n = m + k = 4 + 2 = 6:
1
¦
i
i
62
0

1
0
CCC
6
62

2
t
81,261logloglog2
,
2 ≥ 2,81 – неравенство не выполняется;
при k = 3, n = m + k = 4 + 3 = 7:
1
¦
i
i
72
0

1
0
CCC
7
72

2
371logloglog3
t
,
3 ≥ 3 – неравенство выполняется.
Итерационную процедуру прекращаем, следовательно, число кон­трольных символов k = 6. Образующая матрица должна содержать 4 стро­ки и 7 столбцов. Матрицу запишем в каноническом виде, в качестве строк контрольной подматрицы будем брать трехзначные двоичные комбина­ции с весом не менее чем d – 1 = 3 – 1 = 2, и отличающихся
между собой не менее чем в d – 2 = 3 – 2 = 1 разрядах. Благодаря таким параметрам кода можно построить несколько вариантов образующей матрицы:
1110001
или
G
7,4
0110010
1010100
G
7,4
1101000
1110001
,
1000010
0110100
1011000
134
2.7. Построение группового кода
1111000
0110100
1010010
1100001
7,4
G
или
.
Пример 42. Постройте корректирующий код (образующую и про- верочную матрицу), который будет передавать 29 сообщений, обнаружи­вать 2 ошибки и исправлять 1 ошибку.
Решение. Определяем число информационных символов кода
log 29 5m
@>
2
. Из формулы кодового расстояния определяем, что
12114drst 
. Поскольку d – четное, то для определения числа
контрольных символов используем формулу
2
d
2
1log 1log 1log
kC CCC
t
ii
¦¦
21 21 211
nnnn

00
ii
1
01

.
при k = 1 – условие
1 1 log 1 log 1 5 1 log 6 1 2.58 3.58CCt  
01

25 5 2 2

не выполняется,
при k = 2 – условие
2 1 log 1 log 1 6 1 log 7 3.81CCt  
01

26 6 2 2

не выполняется,
при k = 3 – условие
3 1 log 1 log 1 7 1 log 8 4CCt  
01

27 7 2 2

не выполняется,
при k = 4 – условие
4 1 log 1 log 1 8 1 log 9 4.17CCt    
01

28 8 2 2

не выполняется,
при k = 5 – условие
5 1 log 1 log 1 9 1 log 10 4.32CCt  
01

29 9 2 2

выполняется.
Следовательно, получили код (10, 5). Построим образующую мат­рицу, в которой подматрица контрольных элементов должна быть вы­брана таким образом, чтобы вес каждой строки был не менее d – 1 =
= 4 – 1 = 3, а две любые строки отличались друг от друга не менее чем в d – 2 = 4 – 2 = 2 разрядах.
135
2. Кодирование информации
1000011100
§· ¨¸
0100001110
¨¸ ¨¸
G
0010000111
5,10
¨¸
0001010101
¨¸ ¨¸
0000110011
©¹
.
Пример 43. Построить код для передачи 25 сообщений, который
будет обнаруживать и исправлять одну ошибку.
Решение. Поскольку методика построения групповых кодов де- тально продемонстрирована в примерах 40–42, то приведем в данном слу­чае только результаты, а промежуточные расчеты предлагается выпол­нить самостоятельно. Таким образом при М = 25, m = 5, s = 1, r = 1, d
= 3.
Число контрольных разрядов k = 4.
Образующая и проверочная матрицы имеют вид:
100000011
01000011 0
G
00100011 1
5,9
00010100 1
00001110 0
,
0001 11000
0110 10100
H
4,9
1110 00010
1011`00001
.
Пример 44. Сформировать все кодовые комбинации группового кода, заданного производящей матрицей
1110001
.
G
7,4
0110010
1010100
1101000
Решение. В порождающей матрице четыре строки, следовательно, кодовые комбинации будут содержать m = 4 информационных разрядов и
k = 7 – 4 = 3 контрольных разрядов. При m = 4 число возможных инфор-
4
мационных комбинаций равно 2
= 16:
1) 0000 5) 0010 9) 0001 13) 0011
2) 1000 6) 1010 10) 1001 14) 1011
3) 0100 7) 0110 11) 0101 15) 0111
4) 1100 8) 1110 12) 1101 16) 1111.
136
2.7. Построение группового кода
110
110
101
111
000
110
101
011
Находим последовательно корректирующие разряды всех инфор­мационных комбинаций путем суммирования по модулю 2 тех строк под­матрицы контрольных символов, номера которых совпадают с номерами разрядов, содержащих единицы в информационной части кода. Приве­денная ниже процедура показывает процесс формирования контрольных символов и иллюстрирует особенности структуры групповых кодов:
111
1) 000 2) 111 3) 110 4)
011
100
111
5) 101 6)
111
101
010
7)
011
8)
101 110
011
101
001
9) 011 10)
13)
14)
101
110
011
111
11) 110 12)
110
001
15)
16)
111
100
001
111
011
101
110
111
Окончательно все кодовые комбинации заданного группового кода имеют следующий вид:
1) 0000000 5) 0010101 9) 0001011 13) 0011110
2) 1000111 6) 1010010 10) 1001100 14) 1011001
3) 0100110 7) 0110011 11) 0101110 15) 0111000
4) 1100001 8) 1110100 12) 1101100 16) 1111111.
Пример 45. Групповой код задан проверочной матрицей
000111000
§· ¨¸
011010100
¨¸
H
4,9
¨¸
111000010
¨¸
101110001
©¹
.
137
2. Кодирование информации
Записать уравнения для формирования контрольных элементов.
Применить к принятой кодовой комбинации E* систему проверочных со­отношений и определить, имеется ли в E* ошибка:
1) E* = 11010 1001; 2) E* = 00111 0011. Решение. Уравнения для формирования контрольных элементов:
bbc

451
bbbc

2352
bbb c

1233
bbb b c

13454
0,
0,
0,
0.
Результаты проверок следующие:
1) для E* = 11010 1001 2) для E* = 00111 0011
 
1011,
d
1

10001,
d
2
d

110 00,
3
d
 
101011;
4

1100,
d
1

01100,
d
2
d

00110,
3
d

011110.
4
В первом случае D = 1101, код фиксирует наличие ошибки, во вто-
ром случае D = 0000 – ошибки нет.
Тот же результат можно получить, если умножить E* на транспо-
нированную проверочную матрицу.
Пример 46. Известно, что в кодовой комбинации E*, принадлежа-
щей групповому коду, заданному проверочной матрицей Н
, содержится
2,3
ошибка. Определить, достаточно ли корректирующей способности кода, чтобы исправить ошибку.
010111000
§· ¨¸
011010100
¨¸
H
4,9
¨¸
111000010
¨¸
101110001
©¹
1) E* = 110011101;
2) E* = 001100111.
Решение. Для этого необходимо умножить принятую кодовую ком- бинацию на транспонированную проверочную матрицу и проверить сов­падение синдрома ошибки со строкой полученной матрицы. Если совпа-
138
2.7. Построение группового кода
дения есть, то определяем номер разряда, в котором произошла ошибка, если нет, то код не может исправить ошибку.
0011
§· ¨¸
1110
¨¸ ¨¸
Транспонируем матрицу
0011
§· ¨¸
1110
1)
|110011101 | |1101 |
¨¸ ¨¸
0111
¨¸
1001
¨¸ ¨¸
u
1101
¨¸
1000
¨¸ ¨¸
0100
¨¸
0010
¨¸ ¨¸
0001
©¹
0111
¨¸
1001
¨¸
T
¨¸
H
1101
4,9
¨¸
1000
¨¸ ¨¸
0100
¨¸
0010
¨¸ ¨¸
0001
©¹
, есть совпадение с 5-й строкой
.
транспонированной матрицы, следовательно, код может исправить ошиб­ку (ошибка произошла в 5-м разряде);
0011
§· ¨¸
1110
2)
| 011100101| | 0101|
¨¸ ¨¸
0111
¨¸
1001
¨¸ ¨¸
u
1101
¨¸
1000
¨¸ ¨¸
0100
¨¸
0010
¨¸ ¨¸
0001
©¹
, совпадений нет, следовательно,
код не может исправить такую ошибку.
Пример 47. Групповой (7, 4)-код задан порождающей матрицей:
139
2. Кодирование информации
1000011
0100101
G
7,4
0010110
.
0001111
Учитывая связь элементов порождающей и проверочной матриц, представленных в канонической форме, имеем
H
7,4
0111100
1011010.
1101001
Проиллюстрируем способность разработанного (7, 4)-кода исправ­лять одиночные ошибки. Пусть передаваемая кодовая комбинация v (7, 4)-кода образована путем сложения первой, второй и четвертой строк матрицы G
, тогда v = 1101001.
7,4
Предположим, что при передаче по каналу произошла ошибка в третьем разряде кодовой комбинации v. В этом случае на приемной сто­роне канала будет получена кодовая комбинация v' = 1111001. Умножим принятую кодовую комбинацию на транспонированную проверочную
T
матрицу
:
H
7,4
001
101
110
11110 01 ||11 0||
u
111
.
100
010
001
Отличие от нуля синдрома ошибки свидетельствует о том, что про­изошла ошибка. Чтобы определить, в каком разряде кодовой комбинации
T
произошла ошибка, проверим, с какой строкой матрицы
совпадает
H
7,4
синдром. Как видим, он совпадает с третьей строкой. Отсюда следует, что ошибка произошла в третьем разряде кодовой комбинации. В декодиру­ющих устройствах систем передачи информации результат перемножения принятой кодовой комбинации на проверочную матрицу (синдром ошиб-
140
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]