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

LDPC код из стандарта DVB-S2

Возможно я и ошибаюсь, но не в этом суть...

 

Замечательно. Вы не знаете, насколько далеко от предела работает ваш "декодер", то есть, фактически, работает ли он вообще, но суть, оказывается, не в этом.. :-))))

 

 

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

 

Как вы можете сравнить результаты, если у вас их нет? У меня написано несколько разных декодеров, и я могу назвать децибелы и итерации. Это и есть результат.

 

Я не знаю что такое RandG, но по всей видимости N=0.4 это и есть сигма. А что там дальше за бред? Почему сигма возводится в квадрат, а амплитуда сигнала при этом НЕ возводится? Сигнал было бы удобнее сделать от -1 до +1, тогда его мощность единица.

В вашем случае SNR = 20log(0.5/0.4)=1.9 дБ.

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


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

Замечательно. Вы не знаете, насколько далеко от предела работает ваш "декодер", то есть, фактически, работает ли он вообще, но суть, оказывается, не в этом.. :-))))

 

 

 

 

Как вы можете сравнить результаты, если у вас их нет? У меня написано несколько разных декодеров, и я могу назвать децибелы и итерации. Это и есть результат.

 

Я не знаю что такое RandG, но по всей видимости N=0.4 это и есть сигма. А что там дальше за бред? Почему сигма возводится в квадрат, а амплитуда сигнала при этом НЕ возводится? Сигнал было бы удобнее сделать от -1 до +1, тогда его мощность единица.

В вашем случае SNR = 20log(0.5/0.4)=1.9 дБ.

 

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

 

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

 

Вот что такое RandG вы действительно можете не знать... следовательно не можете знать, какие параметры там используются. За ваше предположение спасибо) Сигнал амплитудой 0.5 я сделал потому, что входные значения декодера у меня представлены в дополнительном коде и должны находится в диапазоне [-1,1). Вместе с шумом такой сигнал на мой взгляд более равномерно находится в нем, хотя некоторые выборки на копейку выходят за него, что контролируется.

Изменено пользователем Neznaika

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


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

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

 

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

 

Сигнал амплитудой 0.5 я сделал потому, что входные значения декодера у меня представлены в дополнительном коде и должны находится в диапазоне [-1,1).

 

Мда, похоже, наставить вас на путь истинный только патриарху всея Руси под силу.

 

Видимо, бесполезно также объяснять, что на декодер подаются LLR, а вовсе не то что вы приняли из канала. Конечно, в случае гауссова шума подсчёт LLR это всего лишь умножение на константу, но результат почти всегда будет больше 1, иногда намного. Поэтому какой бы "дополнительный код" у вас не был, должно быть известно, сколько бит отводится под целую часть, и сколько под дробную.

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


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

Мда, похоже, наставить вас на путь истинный только патриарху всея Руси под силу.

 

Видимо, бесполезно также объяснять, что на декодер подаются LLR, а вовсе не то что вы приняли из канала. Конечно, в случае гауссова шума подсчёт LLR это всего лишь умножение на константу, но результат почти всегда будет больше 1, иногда намного. Поэтому какой бы "дополнительный код" у вас не был, должно быть известно, сколько бит отводится под целую часть, и сколько под дробную.

 

Из всего выше приведенного мне понравилась идея des00 о сборе стенда в матлабе, лицензию на который вчера оплатили. Надеюсь удастся прояснить некоторые детали.

 

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

 

Речь шла о разной сходимости алгоритма при 2-х разных вариантах его реализации, потому я не сильно заморачивался в идеальности входного сигнала декодера. Если вам не трудно, то поясните, пожалуйста, как с вашей точки зрения в моделе должны вычисляться LLR, подаваемые на вход декодера. Пусть разрядность LLR 5 бит, 1 бит под целую и 4 бита под дробную части. Как я понимаю... 0х10 - это -1.0, а 0x0f - это 0.9375.

 

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


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

разрядность LLR 5 бит, 1 бит под целую и 4 бита под дробную части. Как я понимаю... 0х10 - это -1.0, а 0x0f - это 0.9375.

 

Неправильно канешна. Это значит у вас УЖЕ диапазон от -2 до +2. Но этого мало, в статьях видел что при менее чем 6-битной арифметике требования стандарта вообще не достигаются.

 

LLR = 2x/sigma^2, где х выход канала.

 

UPD: Впрочем, если в доке формат называется 1.4, то значит диапазон от -1 до 1.

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


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

Неправильно канешна. Это значит у вас УЖЕ диапазон от -2 до +2. Но этого мало, в статьях видел что при менее чем 6-битной арифметике требования стандарта вообще не достигаются.

 

LLR = 2x/sigma^2, где х выход канала.

 

UPD: Впрочем, если в доке формат называется 1.4, то значит диапазон от -1 до 1.

 

Что касается выбранной разрядности, то могу лишь сослаться на Falcao по чьим статьям и реализую проект. Там не указан формат.. просто дана оптимальная разрядность входного сигнала на декодер в 5 бит.

 

По поводу LLR... пусть из кодера идут данные... C=1, 0, 1... модулятор их преобразует в Ch=-1, 1, -1... далее добавляем шум с помощью функции RandG, одним параметром из которого является sigma, т.е. Cn=Сh+RandG(0,sigma), далее получаем LLR=2*Cn/(sigma^2)... я вас правильно понял?

Ну и в этом случае входное отношение с/ш=20Log(1.0/sigma)?

 

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


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

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

Вот и меня настигла данная задача :0)

Помогите разобраться где я не прав.

Имеем DVBS2, R=1/4 и R=9/10.

Для R=1/4.

Грубо говоря к каждой CN подходит 4 узла VN или от каждая VN (в среднем) участвует в вычисление 3 CN.

Тогда для расчета CN(j,i) необходимо произвести 48600*3*4 условных операций в результате получим 48600*4 CN.

Для обновления 3*64800 VN(i,j) необходимо произвести 4*3*64800 условных операции.

 

Для R=9/10.

Грубо говоря к каждой CN подходит 30 узлов VN или от каждая VN (в среднем) участвует в вычисление 3 CN.

Тогда для расчета CN(j,i) необходимо произвести 6480*29*30 условных операций в результате получим 6480*30 CN.

Для обновления 3*64800 VN(i,j) необходимо произвести 30*3*64800 условных операции.

У меня получилось что для одной итерации 9/10 необходимо произвести ~ в 10 раз больше условных операций, чем для скорости R=1/4.

Что-то мне подсказывает, что я сильно не прав, но вот где не прав. Понять не могу.

Помогите пожалуйста. Спасибо.

PS: Хотя если что пропускная способность у всех скоростей -+20%, а R=9/10 данных отдает в 3.9 раза больше, то все равно не сходится....

Ведь пропускная способность у них одинаковая

12345.png

Статья в прикрепленном файле.

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


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

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

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

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

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

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

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

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

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

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