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

Матричный анализ кодов

Да, но декодирование с помощью полученной матрице же возможно? Об оптимизации речи не идёт.

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


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

Да, но декодирование с помощью полученной матрице же возможно? Об оптимизации речи не идёт.

 

Вы пробовали декодировать ? Какие

результаты ?

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


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

Добрый день товарищи инженера. Почему все говорят, что нельзя декодировать (исправить ошибки) систематический LDPC код с помощью матрицы полученной путём решения системы независимых линейных комбинаций кодовых слов?

Так вроде суть вопроса решить систему независимых лин кодов слов и используя результат решения декодировать. КТО сказал что НЕЛЬЗЯ. Вопрос КАК ?

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


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

Приветствую.

Решал данную задачу практически совсем недавно.

У вас есть ошибки к подходу которые нужно устранить.

1. "подбор фазы" - просто так не возможен нужна образцовая последовательность. ну и конечно нудно демодулировать с корректором. и учесть LLR

2. вам представлен вариант записи с реального оборудования. Из этого можно получить ряд послаблений.

2.1 если это LDPC код - то он систематический.

2.2 если разработчики данной железки "не фанаты", то код регулярный или квази циклический.

2.3 число проверок в строке H мало (<=10).

 

Первым шагом будет подготовка исходных данных.

1. демодулирование и получение soft bit

2. получение hard bit. анализ в битовом редакторе смещения кодовых слов и выделение кодовых слов в виде [data][check] LLR

3. удаление дубликатов кодовых слов. методом слияния.

4. удаление или корректировка кодовых слов с незначительными различиями. (<10 bit)

5. Выборка из полученного набора не менее 2*N кодовых слов с максимальным LLR.

 

Второй шаг - по подготовленной выборке "тупым" перебором и статистикой нахождение строк H ;-)

тут нужно задаться числом проверок k (обычно 5-10) длинна кодового слова n

и получаем число возможных вариантов

I =n!/( (n-k)! * k!)

Эти варианты можно ещё сократить если учесть свойства кодов.

и самым сложным является нахождение хотя бы одной строки, далее всё просто.

 

В итоге я получил скорость перебора ~3000M итераций на cpu-i7-4770, на GPU перевести не успел задача решилась раньше :-)

Решение задачи найдено часов за 5 вместо первоначальных ~30 суток.

 

Нихрена себе! Моя программа ищет матрицу ну минут 5, может 6, но не 5 часов - это ваще капец

 

Это правильно. Просто участники диспута, задающие вопрос об эквивалентных кодах,

путают понятия эквивалентных кодов и эквивалентых проверочных матриц для одного и того же кода.

Еще народ совершенно зря кошмарит бедного студента по поводу нахождения разреженной матрицы LDPC кода.

На самом деле бедному студенту нафиг не нужен код в разреженном виде (хоть студень, возможно, об этом и не подозревает ;)).

Похоже, что народ кроме BP и MIN-SUM алгоритмов уже ничего не может сделать с LDPC. Эх, молодежь.. ;))

Для данного случая вполне подойдет декодирование

по информационным совокупностям с покрывающими полиномами небольшого веса.

В простонародье этот метод называется OSD и он дает вполне приличные результаты

именно в хорошем канале. (интересующимся - гугл в помощь).

 

 

Сильно сомневаюсь в универсальности вашего метода для восстановления сколь-нибудь длинных и сколь-нибудь тяжелых

разреженных матриц, пригодных для традиционных методов декодирования LDPC.

На самом деле вам надо решать задачу нахождения слов минимального веса в двойственном коде, и из этих слов лепить матрицу.

Это трудно.. Хотя, для малых длин и очень разреженных матриц... может быть.

 

То что ты тут понаписал очень здорово, но на все отвечать нет времени. Не такой я глупый, чтобы не знать о разряженности. Матрицу получил пораждающую и прорядил, не переживай. По поводу алгоритма - ты можешь плеваться и понтоваться, на ПК для декодирования в лдпс в реальном времени подходит только один алгориьм и только с разряженной матрицей. Даде уточню - на процессоре. На 1. Да и нахрена использовать какие то гавеные алгоритмы если есть старые добрые?

 

В первом сообщении : 2.1 если это LDPC код - то он систематический.

 

 

Если исходный код был систематический (в классическом смысле, как я описал выше), то обязательно удастся ;)

 

 

Честно говоря, не встречал информационные биты, рассыпанные как попало по слову. Обычно или в начале или в конце.

Ну, спорить не буду, всякое в жизни бывает ;)

 

Почитайте как строятся flex ldpc и fast link ldpc. Там инфа рассыпана по слову перемешана с проверками

 

Ну так и я про это. ТСу хочется странного.

Я все сделал ты не переживай, а что такое ТС? Тупой студент?

 

Проблема в том что даже если вы получите матрицу в систематическом виде, с учётом сигнал шум 22 db это наверно даже возможно, вы как приведёте проверочную матрицу к низкоплотностному виду? А используя проверочную матрицу в систематическом виде о декодирование ldpc кода говорить сложно, поскольку исходные свойства графа будут полностью разрушены. Турбо-коды и правда легко ломаются подобным образом. Наверно это как то можно сделать, но я навскидку не знаю, надо идти читать)

Да ещё один нюанс, проверочные матрицы квазициклических ldpc, часто бывают с линейно зависимыми строками, то есть, появляется ещё одна неопределённость. Правда интересно, если сделаете это ссылками на инфу поделитесь, пожалуйста.

 

Да все получилось, ссылок нету есть все на компе могу скинуть кусок потока и полученные матрицы g и h в каноне и разряженную h. Декодер написал жесткий bf. Пробовал abp, но он тока под плисину пошел, на pc ну очень уж долго хреначит

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


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

Я все сделал ты не переживай, а что такое ТС? Тупой студент?

ТС - топик стартер.

Тот кто тему сформировол.

abp - это Asynchronous Decoding of LDPC Codes или что-то другое?

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


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

Спасибо.

а " жесткий bf" - это наверное бит флиппинг?

Видимо, да, с перевертыванием бита

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


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

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

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

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

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

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

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

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

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

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