Главная страница  Дискретный канал связи 

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120] [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [ 138 ] [139] [140] [141] [142] [143] [144] [145] [146] [147] [148] [149] [150] [151] [152] [153] [154] [155] [156] [157] [158] [159] [160] [161] [162] [163] [164] [165] [166] [167] [168] [169] [170] [171] [172] [173] [174] [175] [176] [177] [178] [179] [180] [181] [182] [183] [184] [185] [186] [187] [188] [189]

12.5. НЕКОТОРЫЕ ПРОСТЫЕ СВЕРТОЧНЫЕ КОДЫ 421

Порождающая матрица равна

-10 0

0 1 0

0 0 1

1 0 0

0 1 0

0 0 1

а порождающая матрица кода, усеченного до длины блока 12, представляется в виде

0(12)

100 1 ООО 1 ООО 1 010 1 ООО 1 ООО о 001 1 ООО о ООО I

Непосредственным рассмотрением G<2) убеждаемся, что в пределах блока длины 12 каждое ненулевое слово имеет вес не менее трех. Следовательно, в блоке длины 12 код может исправлять одну ошибку.

Кодер для (12,9)-кода Вайнера-Эша представлен на рис. 12.12. Каждому порождающему многочлену на схеме соответствует отдельный КИО-фильтр.

Большинство известных наиболее употребительных сверточных кодов было получено поиском на ЭВМ. На рис. 12.13 приведена таблица таких кодов.



ПорожЭаюцая матрица из многочленов (выражена через коэффициенты многочлена)

(6, 3, 5)

+ х+\) 111

(8,4,6)

(х- + X + 1

) 1011

+ jc + v+l) ПИ

(Ю; 5, 7)

11001

10111

(12, 6,8)

110101

(14,7, 10)

. 1101101

I00II11

(16,8, 10)

11100101

10011111

(18,9, 12)

100011101

110101111

(20, 10, 12)

1110111001

1010011011

(22, И. 14)

10111011001

10001101111

(24, 12, 15)

101110110001

110010I1I10I

(26, 13, 16)

1I0II010I000I

10001I0I1I111

(28, 14, 16)

10111101110(Ю1

II00I0I00IIIO1

(9, 3, 8) (12,4, 10) (15, 5, 12) (18,6, 13) (21,7, 15) (24,8, 16) (27,9, 18) (30, 10, 20) (33, 11,22) (36, 12, 24). (39, 13,24) (42, 14, 26)

101 1101 10101 111001 1101101 10101001 111101101 1111001001 II01011100I 111011111001 110110I0I000I 10100101110001

1011

110101 1010011 10011011 110011011 1010111101 10011101101 110010U1101 1011110110001 10001101110111

111 nil mil

ЮПИ lOlllll

июни

lOOlOOIII IIOIIOOIII lOlllllOOIl 101011010011 lOOOllOlllIll llOIIOIOOIllll

(12,3, 10)

(16,4, 13)

1101

lOll •

1011

(20, 5, 16)

10101

noil

10111

(24,6, 18)

110101

IIIOll

loom

(28, 7, 20)

1011101

1011101

1110011

1100111

(32, 8, 22)

10111001

lOllllOl

11010011

1И10И1

(36, 9, 24)

llOOIlOOl

101110101

110110111

101001111

(40, 10, 27)

1111001001

loioimoi

1101100111

IIOIOIOIII

(44, 11,29)

1110101lOOl

11010111001

10011101101

10111110011

(48, 12, 32)

111011111001

110010111101

10101 loioon

lOllOlOOIlll

(52, 13, 33)

1010011001001

iiiitiooioioi

1101 и 1011011

iiioioiiiom

(56, 14, 36)

llOIOOIOOIOOOl

10111110011001

nioioionoiu

iiiuoioiiom-

Рис. 12.13. Некатастрофические двоичные сверточные коды с максимальным свободным расстоянием.



12.6. АЛГОРИТМЫ СИНДРОМНОГО ДЕКОДИРОВАНИЯ

Предположим, что принята бесконечная последовательность v, состоящая из слова сверточного кода и шума:

V = с + е.

Точно так же, как и в случае блоковых кодов, можно вычислить синдром:

S = vH = eH

однако в этом случае синдром имеет бесконечную длину. Декодер не просматривает весь синдром однократно. Он работает с конца, вычисляя компоненты s по мере их поступления, исправляя ошибки, и сбрасывая те компоненты s, которые вычислены давно. Декодер содержит таблицу сегментов синдромов и сегментов конфигураций шума, которые приводят к данным сегментам синдрома. Когда декодер находит в таблице полученный сегмент синдрома, он исправляет начальный сегмент кодового слова.

Приведем примеры различных синдромных декодеров. Начнем с декодера для (12,9)-кода Вайнера-Эша. Он показан на рис. 12.14. Входящий поток битов поступает на Пр параллельных линий; синдром вычисляется путем нахождения проверочного бита по принятым информационным битам и его сравнения с принятым проверочным битом. Необходимо вычислить лишь столько синдромных битов, сколько их требуется для исправления одиночной ошибки в первом кадре. Возможные конфигурации одиночных ошибок в первых трех кадрах и соответствующие первые три бита синдрома приведены в виде таблицы на рис. 12.15. Заметим, что правый бит равен единице тогда и только тогда, когда в первом кадре имеется ошибка. В этом случае два других бита синдрома точно определяют местонахождение ошибки в первом кадре.

Элементы, изображенные на рис. 12.14 штриховыми линиями, могут быть включены в декодер для восстановления кодовых слов, содержащих проверочные биты. Если такой необходимости нет, то эти элементы могут быть исключены.

Необходимо рассмотреть еще одну задачу. После исправления первого кадра нужно изменить синдром таким образом, чтобы он не вызывал ошибочного исправления в следующем кадре. Это можно сделать несколькими способами, и хотя все они пригодны для данного кода, в случае более мощного кода они ведут себя совершенно по-разному. Возможны два варианта:

1) после каждого исправления ошибки устанавливается нулевое состояние регистра синдрома;




[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120] [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [ 138 ] [139] [140] [141] [142] [143] [144] [145] [146] [147] [148] [149] [150] [151] [152] [153] [154] [155] [156] [157] [158] [159] [160] [161] [162] [163] [164] [165] [166] [167] [168] [169] [170] [171] [172] [173] [174] [175] [176] [177] [178] [179] [180] [181] [182] [183] [184] [185] [186] [187] [188] [189]

0.0146