Перейти к содержанию

    

QC LDPC (8176,7156) из (8176,7154)

Реализовали код QC LDPC кол 7154+1022=8176,

Столкнулись со следующей проблемой. Смотрим вот эту доку

https://standards.nasa.gov/documents/view_o...7/GSFC-STD-9100

 

Есть "sub-code", который берет 7154 информационных бита (14 кусочкой по 511) и делает из них 1022 проверочных (2 кусочка по 511). Получаем код 8176,7154.

 

Как учит нас этот документ далее, этот код плох тем, что что не кратен 32 битам.

 

Тогда берем информационную последовательность длиной 7136 (223 слова по 32 бита), добиваем 18 нулями до 7154, считаем от "расширенного" слова 1022 проверочных бита, мусорные 18 бит не передаем, а получившуюся конструкцию (7136 исходных и 1022 вычисленных) и добиваем 2 битами до кратности 32х, получаем 7136+1022+2=8160 (255 слов по 32 бита).

 

Тут все понятно.

 

И наконец последнее - код (8176,7156). Что делать с ним совершенно непонятно.

Стандарт CCSDS 131.1-O-2 (гугл) говорит, в главе 2 говорит

This section describes the base (8176, 7156) LDPC code. For reasons outlined below,

implementations should shorten the base code according to the format described in

subsection 2.5

 

В разделе 2.5 говорится о рандомизации, а весь прочий материал посвящен тому, как закодировать 7154 информационных бита. Куда девается 2 бита из 7156 непонятно.

 

The encoder can be designed using the method given in reference [C1.6]. The generator

matrix of the (8176, 7156) code consists of two parts. The first part is a 7154 Ч 8176

submatrix in systematic-circulant form as shown in figure 2-5. It consists of a 7154 Ч 7154

identity matrix and two columns of 511 Ч 511 circulants Bi,js, each column consisting of 14

circulants. The Is are the 511 Ч 511 identity submatrices and the 0s are the all zero 511 Ч

511 submatrices. The second part consists of two independent rows. The first part generates

a (8176, 7154) LDPC subcode of the (8176, 7156) code. Each codeword in the subcode

consists of 7154 information bits and 1022 parity check bits. For reason given in section 2.4,

there are advantages in using the subcode implementation. The circulants Bi,js are

constructed based on the algorithm given below:

 

Краткое содержание

Генераторная матрица кода 8176,7154 состоит из двух частей - одна на картинке 2.5 (единичные матрицы слева и B циркулянты справа) и она генерирует (8176, 7154) LDPC subcode of the (8176, 7156) code Вторая часть состоит из двух независимых строк (что?) The second part consists of two independent rows (каких строк, откуда??)

Что делать, если информация 7156 бит? Как ее кодировать таким кодером? Кто работал с этим кодом?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А ни у кого нет примера данных закодированных согласно стандарту, для проверки, а то что-то я туплю пытаясь обработать чужие данные в таком коде. Хотя мой кодер с декодером в паре вроде бы работают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация