ГОСТ Р 70184—2022
Приложение Е
(обязательное)
Алгоритмы кодирования LDPC
,
LDPC-кодер преобразует битовое сообщение / = (/’0, А......ik/dс-1) длины к/с1рсв кодовое слово с = (/’0, А,, ...,
P0*P1
.....
Рnidpc-kidpc1) Длинь| nidpc-
’kidpc-1’
При использовании
-
кодовых скоростей 1/8, 1/2, 2/3 для коротких кадров применяется алгоритм Б, при прочих
сочетаниях кодовой скорости идлины кадра применяется алгоритм А.
Е.1 Алгоритм кодирования А
Вначале происходит инициализация: р0= р1= ... = РпШрс-кШрс-1=
На первом шаге рассматриваются первые 360 бит сообщения: im, т = 0,1,359 и первая строка таблицы
координат ненулевых элементов Б.1—Б.12 для длинных кадров, В.1—В.З для средних кадров или Г.1—Г.10 для
коротких кадров. Далее будет приведен пример выполнения операций для случая длинных кадров и скорости 3/4
(таблица Б.8).
Выполняется прибавление бита /0ккаждому из проверочных битов с индексами, указанными в первой строке
таблицы
Ро = Ро ® ’о-
Рб385 = Рб385 ®
’О’
Р7901 = Р7901 ®
’О’
Р14611 = P i4611 ®
’О’
Р13389 = Р13389 ® /0’
Р-11200 = Р11200 ® ;0>
Р3252 = Р3252 ® ’о-
Р5243 = Р5243 ®
’О’
Р2504 = Р2504 ®
’O’
Р2722 = Р2722 ®
’О’
Рв21 =Р821 ® ’О’
Р
7374
= Р
7374
®
’о-
Для следующих 359 бит сообщения im,т = 0, 1.....359 индексы получаются сложением координат из первой
строки таблицы с числом mq по модулю длины проверочного слова {^idpc~ kldpc)\
хт= {X(J + m q} mod (nld - kld ),
Р
45
= Р
45
®
’о>
Рб430 = Рб430 ®
’О’
Р
7946
=
P i
946 ®
’о<
Р
14656 = P-I4656 ®
’О’
Р
13434 = Р13434 ®
’О’
Р
11245 = Р11245 ®
’О’
где— координата из первой строки таблицы, хт— соответствующий индекс для бита im, q — параметр кода,
зависящий от скорости согласно таблице 11 (в данном примере q = 45):
Р
3297
= Р
3297
®
’O’
Р
5288
= Р
5288
®
’0>
Р2549 = Р2549 ®
’О’
Р2767 = Р2767 ®
’О’
Рв66 = Р866 ® /01
P
7419
= P
7419
®
’о-
На втором шаге рассматриваются вторые 360 бит сообщения: im,т = 360, 361.....719. Индексами для перво
го бита группы /36о будут служить значения координат из второй строки таблицы Б.1—Б.12 для длинных кадров,
В.1—В.З для средних кадров или Г.1—Г.10 для коротких кадров. Индексы бит im, т = 360, 361, ..., 719 вычисляются
по формуле, подобной указанной выше, с учетом номера бита т по модулю 360:
хт~ {*о + (т mod 360)-q) mod (nldpc- kldpc),
q
где X — координата из второй строки таблицы.
Далее на каждом следующем шаге рассматриваются следующая группа из 360 битов и следующая строка
таблицы. Индексы находятся по формуле
хт= {*о + (т mod 360)-q} mod {nldpc- kldpc),
где /— номер рассматриваемой группы, х0;— координата из строки с номером I.
По исчерпании данных производится финальное преобразование последовательно для / = 1, 2, ..., пИрс -
~ ^Idpc ~ ^■
Р/ = Р/е Р/_1.
54