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

Подскажите помехоустойчивый код для 144 бит данных

По радиоканалу передаю блок данных размером 144 бит. Для проверочных бит доступно 248 бит.

Сейчас использую БЧХ(392, 149, 59) исправляет до 29 произвольных бит.

Хотелось бы получить результаты еще лучше. Хвалят турбокоды. Но никогда не использовал.

И не могу понять сколько бит они исправляют. Что можете посоветовать?

 

 

 

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


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

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

https://public.ccsds.org/Pubs/130x1g3.pdf

 

поскольку турбокоды - это комбинация двух сверточных кодов, у них нет такого что четко известно сколько бит они исправят. Это не RS и не BCH с их алгебраически жестким решением. Турбокод всегда использует мягкое решение также как и сверточное кодирование.

К тому же не забывайте что у RS и BCH есть особенность ложноположительного и ложноотрицательного декодирования, т.е. при низких BER вероятность неправильного декодирования равна 1, и только потом эта кривая плавно уходит в 0,1 и 0,001

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


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

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

При этом, нужно учесть, что у вас БЧХ с жестким декодированием и в независимости от структуры ошибок, всегда будет 29 произвольных бит. Для турбокода, корректирующая способность в AWGN может быть прекрасная, но при наличии нелинейных искажений, импульсных наводок(пакетных ошибок), результат может разочаровать.  В общем надо моделировать и сравнивать. 

Для быстрой оценки. Bertool, для QPSK при жестком декодировании БЧХ, {511,268, 59), как я понял у вас он укороченный на 119 бит, дает  EbN0 ~= 6дб(1e-6). Для примера есть RSC турбокод из ваймакса на 18 инф. байт (144 бита), в тех же условиях, при скорости кодирования 2/5(у вас 0.36), размер блока 360 бит, при равномерном квантовании метрик 5 бит, дает EbN0 ~= 4дб(1e-6). Но можно взять близкий код на 20 инф. байт и скорость кодирования те же 2/5, в оставшиеся 2 байта положить CRC16. Правда там будет 400 бит итоговый кадр. 

Ну т.е. 2дб в AWGN канале можно вытащить

26 minutes ago, krux said:

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

там очень длинные блоки у сверточника, 223*N байтов. Где N=1/2/4/5. Тут всего 392 бита. 

ЗЫ. Можно попробовать сделать БЧХ с мягким декодированием, за счет стираний слабых метрик. Правда сколько будет выигрыш, так не скажу)

ЗЗЫ. Можно попробовать алгоритм Чейза, но тут все будет зависеть от вашей вычислительной мощности. Код БЧХ сильный (29 ошибок), много перебирать придется. Встречал еще у Трифонова арифметическое декодирование кодов РС/БЧХ, дает ~1.5дБ, но там уже совсем высшая математика и ЕМНП для кодов с малым количеством исправляемых ошибок)

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


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

Каждый бит передавать тремя символами с интерливингом, на приёме соответственно простое суммирование мягких значений до принятия решения, коды выкинуть. (:

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


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

2 hours ago, petrov said:

Каждый бит передавать тремя символами с интерливингом, на приёме соответственно простое суммирование мягких значений до принятия решения, коды выкинуть. (:

А разве база тройка даст эвк по 1е-6 больше 5дб? 

1 hour ago, iliusmaster said:

LDPC

На 392 битах? Можно пример такого кода, с хорошим эвк? В 5G NR, без кривой кодирования, не посылать) 

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


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

des00

А разве база тройка даст эвк по 1е-6 больше 5дб?

Понятно, что это так себе. Не всегда людям очевидно, что можно увеличить энергию на бит вообще ничего не делая. Можно сделать базу двойка, дальше БЧХ по-проще с Чейзом.

 

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


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

база тройка в чистом виде может дать 6дБ насколько мне известно. гуглить ternary pulse-coding.

 

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

 

LDPC - точно мимо, он хорош только для code rate 5/6 7/8 и выше.

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


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

4 часа назад, krux сказал:

база тройка в чистом виде может дать 6дБ насколько мне известно. гуглить ternary pulse-coding.

 

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

 

LDPC - точно мимо, он хорош только для code rate 5/6 7/8 и выше.

Странно. Специалист очень высокого класса говорит, что LDPC хорошо работает и для 0,6, в случае топикстартера, правда = 0,36. Завтра уточню, реализуем-ли хороший протограф для такого случая.

5 часов назад, des00 сказал:

А разве база тройка даст эвк по 1е-6 больше 5дб? 

На 392 битах? Можно пример такого кода, с хорошим эвк? В 5G NR, без кривой кодирования, не посылать) 

Ага. Этот специалист и является основным автором системы  FEC для стандарта 5G NR. 
Топикстартеру:
Как я понял из лекций нашего специалиста - основное в выборе системы кодирования - это определение типа канала. Пока вы для себя это не определите - удачи не видать. У вас какой тип канала передачи? АБГШ, Релеевский...?

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


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

25 минут назад, iliusmaster сказал:

У вас какой тип канала передачи? АБГШ, Релеевский...?

Извините, что встреваю. Вот нравится мне этот вопрос во всех умных книгах. Читал их какое-то количество, но так и не понял, как этот тип определять. У меня одна антенна в произвольной точке города на крыше, а вторая - в произвольной точке города в квартире на разумном расстоянии от первой. А еще нужно, чтобы та же система работала и в сельской местности. А еще хочется, чтобы вторую антенну в автомобиле использовать можно было. И больше информации из заказчика не вытрясти (да и эта дана на мятой салфетке из кабака с подписью "И штоб работало"). Это какой тип канала получается?

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


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

1 час назад, Сергей Борщ сказал:

Извините, что встреваю. Вот нравится мне этот вопрос во всех умных книгах. Читал их какое-то количество, но так и не понял, как этот тип определять. У меня одна антенна в произвольной точке города на крыше, а вторая - в произвольной точке города в квартире на разумном расстоянии от первой. А еще нужно, чтобы та же система работала и в сельской местности. А еще хочется, чтобы вторую антенну в автомобиле использовать можно было. И больше информации из заказчика не вытрясти (да и эта дана на мятой салфетке из кабака с подписью "И штоб работало"). Это какой тип канала получается?

А для этого моделируют распространение сигнала. 
Наш товарищ рассказывал, что господа из компании ХЮ при разработке чипа для базовых станций ошиблись с оценкой канала и товарищ с группой потратили много времени, чтобы математикой вытянуть необходимые параметры связи. 
Потому надо смотреть и моделировать и то можно промахнуться. 
Город - релеевский, пригород - райсовский(в отличие от релеевского - есть постоянный сигнал с прямой видимости), геостационар - Земля - скорее всего АБГШ. 

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


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

8 hours ago, krux said:

база тройка в чистом виде может дать 6дБ насколько мне известно. гуглить ternary pulse-coding.

ЕМНП выигрыш по базе 3, при повторении, считается как 10*log10(3) = 4.77, кодирование погуглю

Quote

LDPC - точно мимо, он хорош только для code rate 5/6 7/8 и выше.

он хорош на любых скоростях, но плох на малых длинах)

6 hours ago, iliusmaster said:

Ага. Этот специалист и является основным автором системы  FEC для стандарта 5G NR. 

Круто, клево когда в окружении такие коллеги, а если еще и Арикан у вас там рядом, то завидую белой завистью)  Если брать 5G NR, то там же не чистый LDPC, там QC-LDPC на высокую скорость для графов 1/2 22/26 и 10/14, затем выкалывание и SPC коды для набора скорости кодирования. Судя по той информации что владею, хорошо работает на кодах большой длины больше 1000 бит, а на мелких там не очень хорошо. Например есть код на 140 инф.бит, граф 2, скорость кодирования 10/28 с выкалыванием систематических бит. По моим экспериментам по 1е-6 он проигрывает RSC сверточнику. 

Поэтому я и уточнил про кривую кодирования)

5 hours ago, Сергей Борщ said:

И больше информации из заказчика не вытрясти (да и эта дана на мятой салфетке из кабака с подписью "И штоб работало"). Это какой тип канала получается?

ИМХО, с заказчиком сейчас лучше договориться на использование квадриги и параметров источника/приемника. Затем берем матлаб, ставим квадригу, настраиваем и гоняем тесты до посинения) Но, как уже сказал @iliusmaster город релей, пригород райс, РРЛ - абгш + один отраженный луч максимум, спутник АБГШ, тропосферный канал тоже релей. Если работаем до 500МГц в плотной и средней застройке, то накладываются импульсные помехи промышленного свойства. 

ЗЫ. Ну и все обсуждаемые мягкие коды, не дают ответа на вопрос о достоверности восстановленной информации. БЧХ дает его точнее и можно сказать "заменяет CRC". Ну кроме LDPC, там синдром можно посчитать, после декодирования. Да и в целом, ТС ничего не сказал о вычислительной мощности в наличии. Вдруг там арм7 какой нить. Кодирует 10кб/с с загрузкой 90%

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


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

"Судя по той информации что владею, хорошо работает на кодах большой длины больше 1000 бит, а на мелких там не очень хорошо"
Да, на коротких кодах LDPC проигрывает полярным(Арикана). Специалист говорит, что это он Эрдалу доказал. Потом они вставили коды Арикана в служебный канал 5G.

Ответ специалиста:
Лучшим решением для короткого кода являются блочные коды и  "полярные коды Арикана". Зависит от реализации. Если задержки не важны, то "Арикана".
Извините, ввел в заблуждение с LDPC.

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


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

3 часа назад, des00 сказал:

ИМХО, с заказчиком сейчас лучше договориться на использование квадриги и параметров источника/приемника. Затем берем матлаб

В моем случае заказчик - гоблины, т.е. частные охранные конторы. Они слов таких не знают, им просто надо "и чтоб работало". За информацию спасибо и вам и @iliusmaster, запишу на корочку (тем потеряла актуальность в связи с падением доходов населения).

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


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

Quote

Для примера есть RSC турбокод из ваймакса на 18 инф. байт (144 бита), в тех же условиях

des00, может быть знаете где взять реализацию на си?

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


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

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

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

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

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

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

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

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

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

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