Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Гексагональный и круглый QAM
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Вопросы системного уровня проектирования
des00
Доброго дня!

Заинтересовался вопросом "скругления" квадратных созвездий, аналогично MIL-STD-188-110B или DVB-S2X. Вопросы реализации пока отложим, интересна теория.

1. В матлабе сделал измеритель не кодированного BER для QAM16 (в качестве эталонного) и QAM16 из 188-110B (по сути 16APSK с поворотом внешних точек на 15 градусов). И вижу что круглое созвездие проигрывает квадратному порядка 1дб на 1е-6. Связываю это с тем, что при нормировке мощности созвездия, мощность внутренних точек меньше чем в квадратном QAM. Небольшая коррекция амплитуды внутренних точек нивелирует проигрыш. Возможно дело в используемом кодере, но судя по статье 16apsk проигрывает 16qam.

Вопрос собственно вот в чем. Пикфактор 16апск на ~2дб лучше чем 16кам. Какой тогда смысл увеличить мощность излучения на 2дб, но ухудшить чутье на 1 дб? Вытягивание последних соков ?

2. Эксперимент с ручной коррекцией точек созвездия, подтолкнул к следующему вопросу: при создании созвездия, каким критерием руководствоваться: 1)одинаковым евклидовым расстоянием точки до соседей; 2)минимальным количеством используемых амплитуд; 3)простотой мапера, демапера, блока расчета метрик?

3. Оптимальным по расстоянию является гексагональный QAM. Не натыкался ли кто в сети, на работы по исследованию пикфактора этого созвездия и кривых BER? Интересуют QAM до 2К.

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

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

Кстати о Грее, в той статье как раз упоминается некий "псевдо-Грей", который используется совместно с этим созвездием.

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

А почему гексагональная решётка является оптимальной по расстоянию? Как-то не очевидно.

Кое-что о гексагональных созвездиях есть тут:
petrov
Цитата(Pathfinder @ May 18 2016, 12:06) *
А почему гексагональная решётка является оптимальной по расстоянию? Как-то не очевидно.


Попробуйте шарики на плоскости уложить плотнее.
Pathfinder
Цитата(petrov @ May 18 2016, 12:44) *
Попробуйте шарики на плоскости уложить плотнее.


Плотнее, чем что? И как это связано с максимизацией минимального расстояния?
petrov
Цитата(Pathfinder @ May 18 2016, 12:54) *
Плотнее, чем что? И как это связано с максимизацией минимального расстояния?


Плотнее чем в гексогональной решётке, начертите круг максимальной мощности и уложите туда максимальное количество шариков, в сравнении с гексогональной решёткой в гауссовскую решётку такое количество не влезет, придётся расширять круг(увеличивать мощность).
Pathfinder
Во-первых, фиксировать нужно не максимальную мощность, а среднюю, чтобы сравнивать созвездия по влиянию на энергетическую эффективность.
Во-вторых, откуда взялись шарики, когда критерием является минимальное расстояние между позициями?
Что такое гауссовская решётка, честно говоря, не знаю.
И я так и не понял, почему шарики плотнее укладываются гексагонально. Может, какая-нибудь ссылка есть по этому поводу?
Я вам даже пример приведу. Представьте себе один шарик, окружённый кольцом из других шариков. Где тут гексагональная структура?
des00
Цитата(petrov @ May 18 2016, 16:48) *
Какие-то цифры по гексагональным созвездиям у Скляра были

Спасибо, посмотрю

Цитата(petrov @ May 18 2016, 16:48) *
Сложности с кодированием, нет такой простой штуки как двойной Грей для гауссовских решёток, коды требуеются не бинарные, не разработана тема как следует.

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

Цитата(Pathfinder @ May 18 2016, 17:06) *
Квадратная решётка удобна ещё тем, что квадратуры можно обрабатывать независимо: код Грея, мягкие решения и т.п.

Все так, но вот пикфактор...

Цитата
Кое-что о гексагональных созвездиях есть тут:

Спасибо, посмотрю.


Цитата(Pathfinder @ May 18 2016, 18:29) *
А почему гексагональная решётка является оптимальной по расстоянию? Как-то не очевидно.
....
Во-первых, фиксировать нужно не максимальную мощность, а среднюю.
Во-вторых, откуда взялись шарики, когда критерием является минимальное расстояние между позициями?
И я так и не понял, почему шарики плотнее укладываются гексагонально. Может, какая-нибудь ссылка есть по этому поводу?

Как я понял, если взять окружность единичного радиуса и задаться равенством евклидова расстояния между соседними точками(область принятия решений - круг, а не квадрат), то гексагональная решетка позволит уложить в эту окружность наибольшее количество точек. Затем можно просто выколоть ненужные, для получения нужного количества точек созвездия.
Pathfinder
Любопытный факт из статьи, про которую я писал: гексагональная решётка проигрывает (!) квадратной примерно 0.5-1 дБ.

По поводу пик-фактора. Почему бы не использовать ту же квадратную решётку, выбросив "выпирающие" позиции по углам? Наподобие того, как конструируются крестообразные с позиционностью 32 и 128.
petrov
Цитата(Pathfinder @ May 18 2016, 13:46) *
Любопытный факт из статьи, про которую я писал: гексагональная решётка проигрывает (!) квадратной примерно 0.5-1 дБ.


Херня, https://ru.wikipedia.org/wiki/%D0%A3%D0%BF%...%80%D0%BE%D0%B2
В двумерном евклидовом пространстве наилучшим заполнением является размещение центров кругов в вершинах паркета, образованного правильными шестиугольниками, в котором каждый круг окружен шестью другими. Плотность данной упаковки:

\frac{\pi}{2\sqrt{3}} \approx 0.9069[1].

Оптимальная упаковка кругов на плоскости
Empilement compact plan.svg

В 1940 году было доказано, что данная упаковка является самой плотной.


Цитата(Pathfinder @ May 18 2016, 13:29) *
Что такое гауссовская решётка, честно говоря, не знаю.


https://ru.wikipedia.org/wiki/%D0%93%D0%B0%...%81%D0%BB%D0%B0

Цитата(Pathfinder @ May 18 2016, 13:29) *
Я вам даже пример приведу. Представьте себе один шарик, окружённый кольцом из других шариков. Где тут гексагональная структура?


Перед глазами.
Pathfinder
Цитата(petrov @ May 18 2016, 14:17) *
Херня,

Правильно, к чёрту всякие там исследования и статьи в рецензируемых научных журналах. Даёшь Википедию со статьями об апельсинах!
petrov
Цитата(Pathfinder @ May 18 2016, 14:46) *
Правильно, к чёрту всякие там исследования и статьи в рецензируемых научных журналах. Даёшь Википедию со статьями об апельсинах!


https://arxiv.org/pdf/1009.4322v1
_pv
Цитата(des00 @ May 18 2016, 17:36) *
Как я понял, если взять окружность единичного радиуса и задаться равенством евклидова расстояния между соседними точками(область принятия решений - круг, а не квадрат), то гексагональная решетка позволит уложить в эту окружность наибольшее количество точек. Затем можно просто выколоть ненужные, для получения нужного количества точек созвездия.

это скорее треугольная решетка, нежели гексагональная, так как для любые три соседние вершины будут образовывать равносторонний треугольник.

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

так что оптимальнее может оказаться не равномерная треугольная сетка с равным расстоянием, а точки расположенные на концентрических окружностях, при этом на каждой окружности сидит по одинаковому числу точек (ну или в 2, 3, N раз больше чем на предыдущей, от соотношения радиусов зависит), и каждая вторая окружность по фазе повернута на угол в полшага между точками.
Grizzzly
Цитата(Pathfinder @ May 18 2016, 13:06) *
А почему гексагональная решётка является оптимальной по расстоянию? Как-то не очевидно.

Из структурированных решений именно гексагональная решетка. Есть огромная книга по их теории - Конвей Дж., Слоэн Н. Упаковки шаров, решетки и группы.
Но для неструктурированного созвездия, возможно, результаты будут лучше. Только вот получение глобального оптимума такого созвездия вроде как пока не найдено. Итерационные алгоритмы имеют тенденцию скатываться к локальным максимумам/минимумам...
des00
Цитата(_pv @ May 18 2016, 20:09) *
это скорее треугольная решетка, нежели гексагональная, так как для любые три соседние вершины будут образовывать равносторонний треугольник.

И как раз этим и будет обеспечиваться равное расстояние до соседа. У внутренней точки будет 6 соседей.

Цитата
но в реальности расстояние не должно быть равным и область принятия решения пожалуй не совсем круг, так как ошибки по фазе и по амплитуде совсем не обязательно должны быть одинаковые.

Рассматриваю только AWGN канал, там шум - круг. ФШ, лучше заранее подавить чем потом декодером вытаскивать.

Цитата
так что оптимальнее может оказаться не равномерная треугольная сетка с равным расстоянием, а точки расположенные на концентрических окружностях, при этом на каждой окружности сидит по одинаковому числу точек (ну или в 2, 3, N раз больше чем на предыдущей, от соотношения радиусов зависит), и каждая вторая окружность по фазе повернута на угол в полшага между точками.

Это созвездие на 16 точек содержит 4 амплитуды, уже проигрывая классическому КАМ16 (3 амплитуды) по пикфактору. Не говоря о 16APSK (2 амплитуды). Но решение интересное sm.gif


Цитата(Pathfinder @ May 18 2016, 17:46) *
По поводу пик-фактора. Почему бы не использовать ту же квадратную решётку, выбросив "выпирающие" позиции по углам? Наподобие того, как конструируются крестообразные с позиционностью 32 и 128.

Выбросить нельзя, иначе нужно будет резать алфавит и скорость. Но, можно подвинуть. Например вот одна из прикидок скругленного КАМ64(внешние точки на окружности одного радиуса). Вместо 10 амплитуд, всего 7. Но, при нормировке созвездия к единичной мощности, мощность внутренних точек снижается. В итоге приемник проиграет по чувствительности, но передатчик выиграет по мощности.

ЗЫ. Похожим образом поступают в MIL-STD 188-110 с qam256. Но и тут, сравнивая точки с квадратным 256ым видно что чувствительность будет хуже.
petrov
Относительно простую TCM с гексагональными созвездиями можно сделать, однократное разбиение на 3 подобраза уже почти в 2 раза расстояние между некодируемыми точками увеличивает.

Про тернарные свёрточные коды гугл знает. Одна и та же схема для любого размера QAM. Будут потери из-за укладывания битов в триты. Сомнительно, что получитыся обыграть мощные бинарные турбо коды за счёт уменьшения пик-фактора(шестиугольник лучше круг аппроксимирует чем квадрат) и чуть более плотной двумерной решётки.
_pv
Цитата(des00 @ May 18 2016, 20:24) *
Это созвездие на 16 точек содержит 4 амплитуды, уже проигрывая классическому КАМ16 (3 амплитуды) по пикфактору. Не говоря о 16APSK (2 амплитуды). Но решение интересное sm.gif

можно сделать 2 окружности с 4 и 12 точками, что собственно в первом посте и нарисовано sm.gif только радиусы надо немного поменять (внутренний увеличить немного) чтобы растояния между всеми точками более менее одинаковые стали.
ну или 3 окружности с 4+4+8.

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

Цитата(des00 @ May 18 2016, 20:24) *
Рассматриваю только AWGN канал, там шум - круг. ФШ, лучше заранее подавить чем потом декодером вытаскивать.
...
QAM до 2К

подавить конечно лучше, но для больших, до 2К, требования к подавлению ФШ, я так понимаю, заметно подрастут.
всех не передавишь sm.gif, и что-нибудь некруглое вылезет. соответственно на больших радиусах шаг сетки по углу придётся увеличить.
des00
Цитата(petrov @ May 18 2016, 22:04) *
...... Сомнительно, что получитыся обыграть мощные бинарные турбо коды за счёт уменьшения пик-фактора(шестиугольник лучше круг аппроксимирует чем квадрат) и чуть более плотной двумерной решётки.

к TCM не хотелось бы скатываться. Но идея интересная.


Цитата(_pv @ May 18 2016, 22:30) *
подавить конечно лучше, но для больших, до 2К, требования к подавлению ФШ, я так понимаю, заметно подрастут.
всех не передавишь sm.gif, и что-нибудь некруглое вылезет. соответственно на больших радиусах шаг сетки по углу придётся увеличить.

максимальный ФШ считается, от него и танцевать. ИМХО корректировать его надо не по сетке метрик, после округления, а на полной разрядности по выходным символам демодулятора.

с 16 точками разобрались, осталось еще 7 созвездий sm.gif
petrov
Цитата(des00 @ May 19 2016, 06:41) *
с 16 точками разобрались, осталось еще 7 созвездий sm.gif


Интересно выглядит 18 36 72 144 288 576 1152 2304 QAM гексагональная, 3^2*2^n точек в созвездии, 2 трита переносят чуть больше 3-х бит, центральная точка не используется.
des00
Что бы поставить точку в созвездиях MIL-STD, взял CML либу, выбрал режим WiMAX LDPC 2304 5/6 и сравнил круглые и квадратные КАМы. Проигрыш по чутью от 0.2 - 1,2 дб. При этом пик фактор, на RRC a = 0.35 дает тот же 1дб, а при a = 0.1 всего 0.5дб. Шило на мыло.
ilya79
Цитата(des00 @ May 24 2016, 10:53) *
Что бы поставить точку в созвездиях MIL-STD, взял CML либу, выбрал режим WiMAX LDPC 2304 5/6 и сравнил круглые и квадратные КАМы. Проигрыш по чутью от 0.2 - 1,2 дб. При этом пик фактор, на RRC a = 0.35 дает тот же 1дб, а при a = 0.1 всего 0.5дб. Шило на мыло.


Без модели нелинейного усилителя и оценки TD (Total Degradation)= потери Eb/N0+потерии OBO, наверное не корректный вывод. Посмотрите тут http://jwcn.eurasipjournals.springeropen.c...7-1499-2012-317 Выигрыш APSK-16 относительно QAM-16 ~ (2дБ-0.6дБ)=1.4 при OBO 3 дБ (рис. 7 в статье) . Вы учитываете что оптимальное отношение радиусов колец для APSK разное для разных кодовых скоростей? В статье цифры для некодированой передачи. Применение хорошего кода снизит разницу до 0.6-0.7 дБ .
des00
Цитата(ilya79 @ May 25 2016, 01:29) *
Без модели нелинейного усилителя и оценки TD (Total Degradation)= потери Eb/N0+потерии OBO, наверное не корректный вывод. Посмотрите тут http://jwcn.eurasipjournals.springeropen.c...7-1499-2012-317 Выигрыш APSK-16 относительно QAM-16 ~ (2дБ-0.6дБ)=1.4 при OBO 3 дБ (рис. 7 в статье) . Вы учитываете что оптимальное отношение радиусов колец для APSK разное для разных кодовых скоростей? В статье цифры для некодированой передачи. Применение хорошего кода снизит разницу до 0.6-0.7 дБ .

Документ этот еще в начале темы посмотрел. Отметил для себя моменты в статье: некодированный сигнал, большое скругление (0.42).
Изначально нашел вариант когда не кодированный 16APSK идет один в один с 16QAM. Но когда взял слабый LDPC код появился небольшой проигрыш. Причем, по моим измерениям, 16APSK с точками на осях, выигрывает у 16APSK с точками на линиях pi/4 (как в статье). Что в принципе очевидно. ИМХО 16APSK единственный круглый QAM, который позволяет немного отыграть/остаться при своих.

Меня интересуют высокие скорости. А это камы >64 и скругления 5-10%. На таких скруглениях выигрыш по пикфактору круглых старших камов мал и меньше проигрыша по чутью.

PS. Подозреваю что на круглых КАМ проще сделать long tail DPD, т.к. можно упростить структуру сигнала для этого. Но и в квадратных эта проблема решается sm.gif
des00
Попробовал иерархическое кодирование...А в этом, что-то есть.
Если взять QAM256 LDPC 5/6 и QAM16+0,25*QAM16 LDPC 5/6 то получается выигрыш по чутью ~0.7дб. Потом чуток читернул, сделал QAM16+0,28*QAM16 LDPC 5/6 и 1,5 дб на "ровном" месте. Правда за это надо заплатить двойным декодером(правда меньшей производительности), выравнивающим буфером, масштабирующим усилителем и более сложными LLR sm.gif

PS. Слева нелинейное созвездие. Справа линейное
petrov
Цитата(des00 @ May 25 2016, 09:48) *
Попробовал иерархическое кодирование...А в этом, что-то есть.


Для больших созвездий нет смысла все биты кодировать мягким кодом, в разбиении Унгербоека хорошо видно, что с какого-то разбиения точки в подобразе уже слишком далеко находятся, чтобы там ошибки возникали из-за АБГШ, лучше на эти точки ресурс мягкого кода не тратить, а для кодируемых подобразов использовать более низкоскоростной код.
des00
Цитата(petrov @ May 25 2016, 17:57) *
Для больших созвездий нет смысла все биты кодировать мягким кодом, в разбиении Унгербоека хорошо видно, что с какого-то разбиения точки в подобразе уже слишком далеко находятся, чтобы там ошибки возникали из-за АБГШ, лучше на эти точки ресурс мягкого кода не тратить, а для кодируемых подобразов использовать более низкоскоростной код.

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

И фишка еще в том, что я сам "порчу" первый слой созвездия, в пределах корректирующей способности декодера, при этом увеличиваю мощность второго слоя.
petrov
Цитата(des00 @ May 25 2016, 14:47) *
Хмм. Насколько понимаю, при использовании этого разбиения, во избежание появления нежелательных переходов используется решетка. Поэтому по факту кодер там есть. Если я правильно помню, как делается такой декодер, там формируется многомерный символ со своей метрикой, которая используется в декодере. Что не есть хорошо для реализации.

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


Унгербоек просто для примера, то же можно и в прагматическом подходе реализовать, скажем использовать кодирование только как для 64 QAM, а остальные точки в одномерных подобразах больших созвездий не кодировать, в идеале надо код с неравной защитой битов в соответствии с их положением в созвездии.
des00
Цитата(petrov @ May 25 2016, 19:30) *
в идеале надо код с неравной защитой битов в соответствии с их положением в созвездии.

думал над этим, пока уперся в отсутствии разработанных, в своей библиотеке, кодов на скорости кодирования больше 8/9. Поэтому посмотрел в сторону увеличения коэффициента системы, при той же скорости
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.