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

LDPC с выкалыванием

Доброго времени суток.

Есть необходимость разобраться в вопросе декодирования LDPC кодов.

Для случая, когда кодируем порождающий матрицей G со скоростью R, а потом выкалываем выходной поток до требуемой скорости.

На мой взгляд, декодирование классическим алгоритмом BP не имеет смысла из-за большого количества нулевых метрик, после вкалывания.

В литературе встретил алгоритм Layered BP Decoding for Rate-Compatible Punctured LDPC Codes. (см. прикрепленный файл)

Вопрос в том является ли он оптимальным и верно ли направление движения....

Может кто подскажет литературу по данному вопросу?

А может это вообще тупиковая ветвь и в реальности такое не используется?

Всем спасибо.

Layered_BP_Decoding_for_Rate_Compatible_Punctured_LDPC_Codes.pdf

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


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

Доброго времени суток.

Есть необходимость разобраться в вопросе декодирования LDPC кодов.

Для случая, когда кодируем порождающий матрицей G со скоростью R, а потом выкалываем выходной поток до требуемой скорости.

На мой взгляд, декодирование классическим алгоритмом BP не имеет смысла из-за большого количества нулевых метрик, после вкалывания.

В литературе встретил алгоритм Layered BP Decoding for Rate-Compatible Punctured LDPC Codes. (см. прикрепленный файл)

Вопрос в том является ли он оптимальным и верно ли направление движения....

Может кто подскажет литературу по данному вопросу?

А может это вообще тупиковая ветвь и в реальности такое не используется?

Всем спасибо.

Стандартным способом не получается? Алгоритм min sum

ссылка

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


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

Стандартным способом не получается? Алгоритм min sum

ссылка

Если к проверочному узлу идет два и более нуля, то там всегда будет ноль min(abs(0))=0.

В DVBS2 при R=1/2 к каждой проверочному узлу идет 7 переменных узлов. Если хотим получить из этого код 3/4, то надо отбросить 16200 переменных узлов и вероятность у проверочного узла будет два и более нуля ПМСМ будет очень велика....

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

В общем нужен совет опытных в этом деле...

PS В матлабе реализовал выкалывание, вкалывание и пока не заработало. Может криво реализовал.

PPS Даже при наличие трех выколотых бит error_vector([2 4 6]) = [0] выходной сигнал содержит ошибки.

 

 

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


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

Если к проверочному узлу идет два и более нуля, то там всегда будет ноль min(abs(0))=0.

В DVBS2 при R=1/2 к каждой проверочному узлу идет 7 переменных узлов. Если хотим получить из этого код 3/4, то надо отбросить 16200 переменных узлов и вероятность у проверочного узла будет два и более нуля ПМСМ будет очень велика....

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

В общем нужен совет опытных в этом деле...

PS В матлабе реализовал выкалывание, вкалывание и пока не заработало. Может криво реализовал.

PPS Даже при наличие трех выколотых бит error_vector([2 4 6]) = [0] выходной сигнал содержит ошибки.

Вы пробовали применить мой скрипт для матлаба?

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


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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...