Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: LDPC с выкалыванием
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
Tpeck
Доброго времени суток.
Есть необходимость разобраться в вопросе декодирования LDPC кодов.
Для случая, когда кодируем порождающий матрицей G со скоростью R, а потом выкалываем выходной поток до требуемой скорости.
На мой взгляд, декодирование классическим алгоритмом BP не имеет смысла из-за большого количества нулевых метрик, после вкалывания.
В литературе встретил алгоритм Layered BP Decoding for Rate-Compatible Punctured LDPC Codes. (см. прикрепленный файл)
Вопрос в том является ли он оптимальным и верно ли направление движения....
Может кто подскажет литературу по данному вопросу?
А может это вообще тупиковая ветвь и в реальности такое не используется?
Всем спасибо.
Maverick
Цитата(Tpeck @ Oct 2 2017, 14:08) *
Доброго времени суток.
Есть необходимость разобраться в вопросе декодирования LDPC кодов.
Для случая, когда кодируем порождающий матрицей G со скоростью R, а потом выкалываем выходной поток до требуемой скорости.
На мой взгляд, декодирование классическим алгоритмом BP не имеет смысла из-за большого количества нулевых метрик, после вкалывания.
В литературе встретил алгоритм Layered BP Decoding for Rate-Compatible Punctured LDPC Codes. (см. прикрепленный файл)
Вопрос в том является ли он оптимальным и верно ли направление движения....
Может кто подскажет литературу по данному вопросу?
А может это вообще тупиковая ветвь и в реальности такое не используется?
Всем спасибо.

Стандартным способом не получается? Алгоритм min sum
ссылка
Tpeck
Цитата(Maverick @ Oct 3 2017, 09:08) *
Стандартным способом не получается? Алгоритм min sum
ссылка

Если к проверочному узлу идет два и более нуля, то там всегда будет ноль min(abs(0))=0.
В DVBS2 при R=1/2 к каждой проверочному узлу идет 7 переменных узлов. Если хотим получить из этого код 3/4, то надо отбросить 16200 переменных узлов и вероятность у проверочного узла будет два и более нуля ПМСМ будет очень велика....
Может быть тут надо как-то хитро выкалывать, чтобы нулевые переменные узлы собирались в некотором множестве проверочных узлов, а в другие не попадали.
В общем нужен совет опытных в этом деле...
PS В матлабе реализовал выкалывание, вкалывание и пока не заработало. Может криво реализовал.
PPS Даже при наличие трех выколотых бит error_vector([2 4 6]) = [0] выходной сигнал содержит ошибки.

Maverick
Цитата(Tpeck @ Oct 3 2017, 11:13) *
Если к проверочному узлу идет два и более нуля, то там всегда будет ноль min(abs(0))=0.
В DVBS2 при R=1/2 к каждой проверочному узлу идет 7 переменных узлов. Если хотим получить из этого код 3/4, то надо отбросить 16200 переменных узлов и вероятность у проверочного узла будет два и более нуля ПМСМ будет очень велика....
Может быть тут надо как-то хитро выкалывать, чтобы нулевые переменные узлы собирались в некотором множестве проверочных узлов, а в другие не попадали.
В общем нужен совет опытных в этом деле...
PS В матлабе реализовал выкалывание, вкалывание и пока не заработало. Может криво реализовал.
PPS Даже при наличие трех выколотых бит error_vector([2 4 6]) = [0] выходной сигнал содержит ошибки.

Вы пробовали применить мой скрипт для матлаба?
Tpeck
Цитата(Maverick @ Oct 3 2017, 11:27) *
Вы пробовали применить мой скрипт для матлаба?


я error_vector([2 4 6]) = [0] и нашел в нем.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.