Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
кодирования.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
12.08 Mб
Скачать

1.7. Циклические коды Боуза –Чоудхури –Хоквингема

Коды Боуза–Чоудхури–Хоквингема (БЧХ) представляют собой обширный класс кодов, способных исправлять несколько ошибок и занимающих заметное место в теории и практике кодирования. Ин- терес к кодам БЧХ определяется по меньшей мере тремя следующи- ми обстоятельствами:

1) среди кодов БЧХ при небольших длинах существуют хорошие (но, как правило, не лучшие из известных) коды;

2) известны относительно простые и конструктивные методы их ко- дирования и декодирования;

3) полное понимание построения кодов БЧХ является наилучшей отправной точкой для изучения многих других классов кодов.

Коды БЧХ независимо открыли Хоквингем (1959) и Боуз и Рой–Чо- удхури (1960 г.), которые доказали ряд теорем, устанавливающих суще- ствование таких ЦК, у которых минимизируется число проверочных символов, а также указывающих пути нахождения порождающих поли- номов для этих кодов.

Корректирующие свойства ЦК могут быть определены на основа- нии следующей теоремы: для любых значений m и gи существует ЦК

длиной n = 2m 1, исправляющий все ошибки кратности gи и менее

(gи < m) и содержащий не более n k mgи проверочных символов.

Так, например, при n = 15, m = 4 и различных gи число проверочных

символов будет равно: gи = 1, n k = mgи = 4·1= 4; gи = 2, mgи = 2 = 8;

gи = 3, mgи = 3 = 12. Соответствующие коды (n, k) будут (15,11),

(15,7), (15,3). Напомним, что минимальное кодовое расстояние dmin =

= 2 gи +1 и применительно к ЦК оно чаще называется конструктивным

расстоянием. Если величины gи или dmin выбрать слишком большими,

то получившийся в результате код будет тривиальным – в нем будет лишь один либо (при r > n) ни одного информационного символа.

В табл. 4.3 даны параметры и порождающие полиномы некоторых кодов БЧХ. Полиномы приведены в восьмеричной форме записи, стар- шая степень расположена слева.

Например, коду (15,7) соответствуют двоичное представление

111010001 и многочлен G (X) = X 8 + Х 7 + Х 6 + X 4 +1. Подробные табли- цы порождающих полиномов циклических кодов БЧХ приведены в [3].

Коды БЧХ с длиной 2m – 1 называют примитивными кодами БЧХ. К

ним, в частности, относятся классические коды Хемминга, исправляю- щие однократные ошибки. К кодам БЧХ относятся также коды, длина n которых является делителем 2m – 1. Например код Голея (23, 12, 7) (см. подразд. 1.4) также принадлежит классу кодов БЧХ, поскольку при m = 11 примитивный код БЧХ имеет длину n = 211 – 1 = 2047, причем это значение без остатка делится на длину кода Голея n = 23 (2047 : 23 = 89), который относится к непримитивным БЧХ-кодам [2, 3].

Таблица 4.3

m

n

k

r

gи

G (X) – mod 8

3

4

5

6

7

15

31

63

4

11

7

26

21

16

11

57

51

45

39

36

3

4

8

5

10

15

20

6

12

18

24

27

1

1

2

1

2

3

5

1

2

3

4

5

13

23

721

45

3551

107657

5423325

103

12471

1701317

166623567

1033500423

m

n

k

r

gи

G (X) – mod 8

7

8

127

255

120

113

106

99

92

247

239

231

223

215

7

14

21

28

35

8

16

24

32

40

1

2

3

4

5

1

2

3

4

5

211

41567

11554743

3447023271

624730022327

435

267543

156720665

75626641375

2157564726421

На основании данных табл. 4.3 можно построить графики зависимо- сти скорости передачи Вk = k / n от значения скорости исправления ошибок v = gи / n, которые приведены в [3]. Если отношение gи / n

остается постоянным, то скорость передачи Вк стремится к нулю, когда

n неограниченно возрастает.

Как отмечалось выше, все примитивные коды БЧХ обладают конст- руктивным расстоянием dmin  2gи + 1. Расстояние можно увеличить до

2gи + 2. Для этого нужно основной порождающий полином БЧХ-кода домножить на бином X + 1, т. е. G1(X) = (Х + 1)  GБЧХ(X), что повлечет за собой прибавление к коду одного проверочного символа, обеспечи-

вающего проверку на четность всех символов БЧХ-кода. Таким обра- зом получается расширенный БЧХ-код.

Адекватно можно получить укороченный (усеченный) БЧХ-код, сле- дуя алгоритму, изложенному в подразделе 1.6.

Коды Рида–Соломона (PC) являются важным и широко используе- мым подмножеством кодов БЧХ. Двоичный код Рида–Соломона полу- чится, если взять основание кода q = 2s. Это означает, что каждый сим- вол кода заменяется s-значной двоичной последовательностью. Если исходный код с основанием q исправляет ошибки кратности  gи, то

полученный из него двоичный код имеет 2gиs проверочных символов

(по 2gи на каждый блок из s символов) из общего числа n = s (2s 1).

Код может исправлять серийные ошибки (пакеты ошибок) длиной  b =

= s(gи 1) + 1.

Коды PC, наряду с кодами Файра (4.10), являются наиболее подходя-

щими для исправления серийных ошибок, а также в каскадных систе- мах кодирования в качестве внешних кодов.

Построение кодеров и декодеров ЦК основывается на применении ЛПС, содержащих сдвигающие регистры. Как отмечает Р. Блейхут [2], ЛПС "были сразу использованы большинством исследователей и вош- ли в литературу без всяких фанфар."

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]