реклама на сайте
подробности

 
 
> LDPC+QAM256, Создание QC-LDPC-BC пров.матриц под модуляцию QAM256
brig01
сообщение Dec 7 2010, 11:55
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 7-05-10
Пользователь №: 57 120



Добрый день коллеги!

Возможно учесть вид модуляции(QAM256) при создании матриц LDPC? Сейчас использую алгоритм PEG.

P.S. Сорри за тупой вопрос, кодированием занимаюсь недавно.


--------------------
Ох не лёгкая это работа попасть в группу "свой"....
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Serg76
сообщение Dec 7 2010, 15:53
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(brig01 @ Dec 7 2010, 15:55) *
Добрый день коллеги!

Возможно учесть вид модуляции(QAM256) при создании матриц LDPC? Сейчас использую алгоритм PEG.

P.S. Сорри за тупой вопрос, кодированием занимаюсь недавно.

Если я правильно понимаю Вам необходимо преобразовать мягкие решения сигнала 256-КАМ в последовательность мягких оценок, т.е. реализовать квадратурный расщепитель. Другими словами, на входе некоего блока I/Q составляющие сигнала 256-КАМ с выхода демодулятора, на выходе блока последовательность из 8-ми мягких оценок на каждую I/Q пару. Эту последовательность затем можно преобразовать в жесткие решения, т.е. битовый поток и уже по нему рассчитать проверочную матрицу. От типа применяемой конструкции эти действия зависеть не будут. Или я что-то не так понял из Вашего вопроса?
Go to the top of the page
 
+Quote Post
brig01
сообщение Dec 8 2010, 06:12
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 7-05-10
Пользователь №: 57 120



Цитата(Serg76 @ Dec 7 2010, 21:53) *
Если я правильно понимаю Вам необходимо преобразовать мягкие решения сигнала 256-КАМ в последовательность мягких оценок, т.е. реализовать квадратурный расщепитель. Другими словами, на входе некоего блока I/Q составляющие сигнала 256-КАМ с выхода демодулятора, на выходе блока последовательность из 8-ми мягких оценок на каждую I/Q пару. Эту последовательность затем можно преобразовать в жесткие решения, т.е. битовый поток и уже по нему рассчитать проверочную матрицу. От типа применяемой конструкции эти действия зависеть не будут. Или я что-то не так понял из Вашего вопроса?


Добрый день!

1. Расщепитель квадратур с которого я получаю метрику для каждого бита у меня есть.

2. "... Эту последовательность затем можно преобразовать в жесткие решения, т.е. битовый поток и уже по нему рассчитать проверочную матрицу... " - если не сложно поясните?

3. В КАМ256 энергетика у бит разная, а значит и ВЕR у каждого бита свой, у младшего бита он больше, возможно ли какнибудь это учесть при построении схемы FEC, идеально конечно чтобы это можно было учесть в пров.мат. LDPC.

4. Для получения наибольшего выигрыша от кодирования для КАМ256 применяют каскадные схемы FEC. Например R=5/6, сначал поток накрывается кодом R=20/21, затем младший бит накрывается R=1/2(для потока это будет 7/8). Я оч. сильно ограничен в ресурсе, для меня это не вариант.

P.S. Возможны разночтения в терминах, если что не понятно, спрашивайте.





--------------------
Ох не лёгкая это работа попасть в группу "свой"....
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 8 2010, 11:34
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(brig01 @ Dec 8 2010, 10:12) *
Добрый день!

1. Расщепитель квадратур с которого я получаю метрику для каждого бита у меня есть.

2. "... Эту последовательность затем можно преобразовать в жесткие решения, т.е. битовый поток и уже по нему рассчитать проверочную матрицу... " - если не сложно поясните?

3. В КАМ256 энергетика у бит разная, а значит и ВЕR у каждого бита свой, у младшего бита он больше, возможно ли какнибудь это учесть при построении схемы FEC, идеально конечно чтобы это можно было учесть в пров.мат. LDPC.

4. Для получения наибольшего выигрыша от кодирования для КАМ256 применяют каскадные схемы FEC. Например R=5/6, сначал поток накрывается кодом R=20/21, затем младший бит накрывается R=1/2(для потока это будет 7/8). Я оч. сильно ограничен в ресурсе, для меня это не вариант.

P.S. Возможны разночтения в терминах, если что не понятно, спрашивайте.

2. Если значения метрики положительное число, то значит единичный бит, в противном случае - нулевой, либо же наоборот.
3. Если правильно подобран манипуляционный код, то BER для каждого бита должен быть одинаков, иначе вы получите пачечную структуру ошибок. Хотя для КАМ-256 это условие выполнить будет трудновато.

Цитата(brig01 @ Dec 8 2010, 10:12) *
Но выражение "расчитать проверочную матрицу" немного ставит в тупик. Проверочная матрица строится заранее и потом уже ни от чего не зависит.

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

Цитата(brig01 @ Dec 8 2010, 10:12) *
Хоть примерно какой DVB-xx рыть?, их там много и в них много букфф и страничек и всё на буржуинском)


DVB-S2. там применяется, по-моему, LDPC+BCH совместно с APSK32
Go to the top of the page
 
+Quote Post
Modest
сообщение Dec 8 2010, 12:53
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 15-12-06
Пользователь №: 23 551



Цитата(Serg76 @ Dec 8 2010, 14:34) *
3. Если правильно подобран манипуляционный код, то BER для каждого бита должен быть одинаков, иначе вы получите пачечную структуру ошибок.
Дык, а если перемежение использовать?
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 8 2010, 15:57
Сообщение #6


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(Modest @ Dec 8 2010, 16:53) *
Дык, а если перемежение использовать?

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

Цитата(brig01 @ Dec 8 2010, 16:07) *
Re.2. Как из мягкого решения вытянуть жёсткое понятно, не ясно из фразы как по принятым данным посчитать проверочную матрицу по принятым данным, может вы имели ввиду, по принятым данным и с пров.матрицей посчитать синдром?


Я имел ввиду как раз, что по принятым безошибочным данным можно посчитать проверочную (или порождающую) матрицу составив и решив СЛАУ. Если Вас интересуют подробности, то мне надо вспомнить как это делается.

Цитата(brig01 @ Dec 8 2010, 16:07) *
P.P.P.S Ктонибудь реализовывал CTC? и сколько весит, может у кого есть модель в matlab-е?

CTC - это Convolution Turbo Codes?
Go to the top of the page
 
+Quote Post
des00
сообщение Jan 25 2011, 14:56
Сообщение #7


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Serg76 @ Dec 8 2010, 09:57) *
Имеется ввиду, что главное правило при построении манипуляционного кода заключается в том, что бинарные значения соседних отсчетов в сигнальном созвездии не должны отличаться более, чем на один бит, иначе при возникновении ошибки в принятом символе Вы сразу можете получить несколько ошибочных бит, которые декодеру будет сложнее исправить.

немного офттопик. Мучает меня один вопрос про использование кодов Грея ("созвездия по грею", как например в атаче). С одной стороны понятно, что использование этого кода имеет определенные перспективы, но с другой стороны рассмотрим модем. Можем взять один из модемов уважаемого petrov. В модуляторе, перед мапером ставят кодер грея, затем в демодуляторе, после жесткого решения, ставят декодер грея. Этим на корню убивая эффект от применения этого кода, т.к. берется функция от битов жесткого решения. И пусть ошибка в символе будет только в одном бите, после прохождения декодера грея она может преобразоваться в многобитную ошибку. Вот пример на созвездии в атаче : пусть передавалась точка 1111 (до кодера грея это было числом 1010), а принята точка 0111 (после декодера это будет число 0110). Вместо ошибки в одном бите, мы получили ошибку в двух битах. Так какой тогда смысл в таком кодировании созвездия?

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

Спасибо.

ЗЫ. вижу единственный вариант когда такое кодирование имеет смысл. Это поставить кодирование грея не на входе мапера, а на входе кодера. Тогда декодирование грея можно осуществлять после основного декодера. Но как тогда использовать например, байтовый кодер рида соломона для QPSK или QAM32 остается не понятным.
Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Go to the top of the page
 
+Quote Post
Serg76
сообщение Jan 25 2011, 16:31
Сообщение #8


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(des00 @ Jan 25 2011, 17:56) *
В модуляторе, перед мапером ставят кодер грея, затем в демодуляторе, после жесткого решения, ставят декодер грея. Этим на корню убивая эффект от применения этого кода, т.к. берется функция от битов жесткого решения. И пусть ошибка в символе будет только в одном бите, после прохождения декодера грея она может преобразоваться в многобитную ошибку.

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

Кстати, в приведенном Вами сигнальном созвездии правило Грея выполняется.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- brig01   LDPC+QAM256   Dec 7 2010, 11:55
|- - SKov   Цитата(brig01 @ Dec 8 2010, 09:12) 3. В К...   Dec 8 2010, 08:45
||- - Modest   Цитата(SKov @ Dec 8 2010, 11:45) Но выраж...   Dec 8 2010, 09:37
||- - brig01   Цитата(SKov @ Dec 8 2010, 14:45) Вм надо ...   Dec 8 2010, 10:28
|- - brig01   Цитата(Serg76 @ Dec 8 2010, 17:34) 2. Есл...   Dec 8 2010, 12:07
||- - SKov   Цитата(brig01 @ Dec 8 2010, 15:07) Re.3.П...   Dec 8 2010, 17:49
|- - SKov   Может, здесь что полезное найдете.   Dec 8 2010, 12:50
|- - brig01   Цитата(Serg76 @ Dec 8 2010, 21:57) CTC - ...   Dec 9 2010, 06:58
||- - petrov   Цитата(brig01 @ Dec 9 2010, 09:58) 2. Как...   Dec 9 2010, 08:11
||- - brig01   Цитата(petrov @ Dec 9 2010, 14:11) I и Q ...   Dec 9 2010, 14:27
||- - petrov   В гугле достаточно статей можно найти, вот на вски...   Dec 9 2010, 16:41
||- - SKov   Цитата(brig01 @ Dec 9 2010, 17:27) P.S.S....   Dec 9 2010, 21:23
||- - brig01   Цитата(SKov @ Dec 10 2010, 03:23) Вообще,...   Dec 10 2010, 06:05
||- - SKov   Цитата(brig01 @ Dec 10 2010, 09:05) QC-LD...   Dec 10 2010, 08:51
||- - brig01   Цитата(SKov @ Dec 10 2010, 14:51) Ну, с т...   Dec 10 2010, 09:51
||- - petrov   Цитата(brig01 @ Dec 10 2010, 12:51) P.S. ...   Dec 10 2010, 10:35
||- - brig01   Цитата(petrov @ Dec 10 2010, 16:35) Не то...   Dec 10 2010, 11:17
|- - vadimuzzz   Цитата(des00 @ Jan 25 2011, 20:56) Так ка...   Jan 25 2011, 15:38
- - Serg76   2 brig01 А можно для лучшего восприятия привести ...   Dec 10 2010, 11:28
|- - brig01   Цитата(Serg76 @ Dec 10 2010, 17:28) 2 bri...   Dec 10 2010, 11:39
|- - petrov   Цитата(Serg76 @ Dec 10 2010, 14:28) 2 bri...   Dec 10 2010, 11:39
|- - brig01   Цитата(petrov @ Dec 10 2010, 17:39) Да тя...   Dec 10 2010, 12:16
- - petrov   Смотрите чтобы не получалось неправильных метрик, ...   Dec 10 2010, 13:09
|- - brig01   Цитата(petrov @ Dec 10 2010, 19:09) Смотр...   Dec 10 2010, 13:18
|- - petrov   Цитата(brig01 @ Dec 10 2010, 16:18) А как...   Dec 10 2010, 13:34
|- - brig01   Цитата(petrov @ Dec 10 2010, 19:34) Это у...   Dec 10 2010, 13:45
|- - Serg76   Цитата(brig01 @ Dec 10 2010, 17:45) Честн...   Dec 10 2010, 15:44
|- - brig01   Цитата(Serg76 @ Dec 10 2010, 21:44) вам м...   Dec 13 2010, 05:18
|- - Serg76   Цитата(brig01 @ Dec 13 2010, 08:18) Двумя...   Dec 13 2010, 11:13
- - thermit   Цитатаdes00: Так какой тогда смысл в таком кодиров...   Jan 25 2011, 15:34
- - des00   Цитата(thermit @ Jan 25 2011, 09:34) Кажд...   Jan 25 2011, 16:42
- - vadimuzzz   по-моему вы путаете алгоритм с конкретной реализац...   Jan 25 2011, 16:48
- - Serg76   2 des00 поддерживаю vadimuzzz Цитата(des00 ...   Jan 25 2011, 17:23
- - thermit   Цитатаdes00: в приведенном мной численном примере,...   Jan 25 2011, 20:53
- - des00   Цитата(vadimuzzz @ Jan 25 2011, 10:48) по...   Jan 26 2011, 05:37
- - vadimuzzz   нативное созвездие явно не оптимально. например, с...   Jan 26 2011, 05:57
|- - des00   Цитата(vadimuzzz @ Jan 25 2011, 23:57) на...   Jan 26 2011, 06:05
|- - vadimuzzz   Цитата(des00 @ Jan 26 2011, 12:05) все та...   Jan 26 2011, 06:58
- - des00   либо я объяснять не умею, либо туплю. Зайду с друг...   Jan 26 2011, 11:10
|- - petrov   Цитата(des00 @ Jan 26 2011, 14:10) 3. Есл...   Jan 26 2011, 11:35
|- - des00   Цитата(petrov @ Jan 26 2011, 05:35) Эквив...   Jan 26 2011, 12:00
- - Serg76   Ну вот теперь вроде как все окончательно прояснило...   Jan 26 2011, 11:44
- - thermit   Цитатаdes00: Если результаты эквивалентны, почему ...   Jan 26 2011, 12:13
- - brig01   Стоило отвлечься и тема зажила своей жизнью.... Ц...   Jan 26 2011, 14:07
|- - des00   Цитата(brig01 @ Jan 26 2011, 08:07) В доп...   Jan 26 2011, 14:28
|- - SKov   Цитата(des00 @ Jan 26 2011, 17:28) что то...   Jan 26 2011, 16:13
|- - brig01   Цитата(des00 @ Jan 26 2011, 20:28) что то...   Jan 27 2011, 05:56
|- - des00   Цитата(brig01 @ Jan 26 2011, 23:56) Для т...   Jan 27 2011, 06:28
|- - brig01   Цитата(des00 @ Jan 27 2011, 12:28) если н...   Jan 27 2011, 06:55
|- - des00   Цитата(brig01 @ Jan 27 2011, 00:55) Допус...   Jan 27 2011, 07:01
||- - brig01   Цитата(des00 @ Jan 27 2011, 13:01) ничего...   Jan 27 2011, 07:07
|- - Serg76   Цитата(brig01 @ Jan 27 2011, 10:55) Все г...   Jan 27 2011, 07:59
|- - SKov   Цитата(brig01 @ Jan 27 2011, 09:55) Допус...   Jan 27 2011, 16:38
|- - brig01   Цитата(SKov @ Jan 27 2011, 22:38) На само...   Jan 28 2011, 04:39
|- - SKov   Цитата(brig01 @ Jan 28 2011, 07:39) 1.5дБ...   Jan 28 2011, 08:52
- - vadimuzzz   тут есть по-простому, с m-скриптами и теоретически...   Jan 28 2011, 05:03
- - kill_LDPC   подскажите пожалуйста возможно ли на приемной стор...   Feb 2 2011, 20:38


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 18:46
Рейтинг@Mail.ru


Страница сгенерированна за 0.0153 секунд с 7
ELECTRONIX ©2004-2016