Документация Engee

Rectangular QAM Demodulator Baseband

Демодуляция данных с прямоугольной QAM-модуляцией.

rectangular qam demodulator baseband

Описание

Блок Rectangular QAM Demodulator Baseband демодулирует сигнал, модулированный с помощью квадратурной амплитудной модуляции с заданным порядком M с созвездием на прямоугольной решетке.

Все значения мощности предполагают номинальный импеданс 1 Ом.

Порты

Вход

In — QAM-модулированный сигнал
скаляр | вектор

QAM-модулированный сигнал, заданный в виде скаляра или вектора столбцов.

Этот порт остается безымянным до тех пор, пока не будет включен порт Var.

Типы данных: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

Поддержка комплексных чисел: Да

Var — дисперсия шума
положительный скаляр | вектор положительных значений

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

Зависимости

Чтобы включить этот параметр, установите для параметра Noise variance source значение Port.

Типы данных: Float64

Выход

Out — демодулированный сигнал
скаляр | вектор

Демодулированный сигнал, возвращаемый в виде скаляра или вектора.

Размеры демодулированного сигнала зависят от значений параметров Output type и Decision type.

В блоке этот порт не имеет названия.

Параметры

Main

M-ary number — порядок модуляции
16 (по умолчанию) | целое положительное число

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

M должно иметь вид 2K для некоторого целого положительного числа K.

Блок масштабирует сигнальное созвездие в зависимости от значения параметра Normalization method.

Output type — тип выхода
Integer (по умолчанию) | Bit

Определяет, будет ли блок выдавать целые числа или двоичные представления целых чисел.

  • Если установить для параметра Output type значение Integer, блок выдает целые числа в диапазоне [0, (M - 1)] для каждого символа. M – это порядок модуляции (M-ary number).

  • Если установить для параметра Output type значение Bit,а для параметра Decision type – значение Hard decision, то для каждого символа блок выдает группу из K бит, называемую двоичным словом. K=log2(M).

  • Если установить для параметра Output type значение Bit, а для параметра Decision type – значение Log-likelihood ratio или Approximate log-likelihood ratio, блок выдает побитовый LLR (сигнал потери связи) или приближенный LLR соответственно.

Decision type — тип решения о демодуляции
Hard decision (по умолчанию) | Log-likelihood ratio | Approximate log-likelihood ratio

Тип решения демодуляции, заданный как Hard decision, Log-likelihood ratio или Approximate log-likelihood ratio.

Зависимости

Этот параметр появляется при установке для параметра Output type значения Bit1.

Noise variance source — источник дисперсии шума
Dialog (по умолчанию) | Port

Источник дисперсии шума, указанный как Dialog или Port.

  • При выборе Dialog для установки дисперсии шума необходимо использовать параметр Noise variance.

  • При выборе Port для установки дисперсии шума необходимо использовать порт Var.

Зависимости

Чтобы включить этот параметр, установите для параметра Decision type значение Approximate log-likelihood ratio или Log-likelihood ratio.

Noise variance — дисперсия шума
1 (по умолчанию) | положительный скаляр | вектор положительных значений

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

При задании параметра Noise variance в виде скаляра это значение используется для всех элементов входного сигнала.

При задании параметра Noise variance в виде вектора длина вектора должна быть равна количеству столбцов во входном сигнале. Каждый элемент вектора дисперсии шума применяется к соответствующему столбцу входного сигнала.

Этот параметр настраивается в обычном режиме, режиме ускорителя и режиме быстрого ускорителя.

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

  • Inf или -Inf, если дисперсия шума очень велика.

  • NaN, если дисперсия шума и мощность сигнала очень малы.

Приближенный алгоритм LLR не вычисляет экспоненты. Вы можете избежать результатов Inf, -Inf и NaN, используя приближенный алгоритм LLR.

Зависимости

Чтобы включить этот параметр, установите для параметра Decision Type значение Log-likelihood ratio или Approximate log-likelihood ratio и установите для параметра Noise variance source значение Dialog.

Constellation ordering — порядок отображения символов
Binary (по умолчанию) | Gray | User-defined

Порядок отображения символов, задается как Binary, Gray или User-defined.

Параметр Constellation ordering определяет, как блок сопоставляет каждый символ с группой выходных битов или целым числом.

Constellation mapping — определяемое пользователем отображение созвездий
[0:15] (по умолчанию) | вектор

Определяемое вами отображение созвездия, заданное в виде M-элемента, содержащего уникальные целочисленные значения в диапазоне [0, (M - 1)].

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

Зависимости

Чтобы включить этот параметр, установите для параметра Constellation ordering значение User-defined.

Normalization method — метод масштабирования для созвездия
Min. distance between symbols (по умолчанию) | Average Power | Peak Power

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

Minimum distance — расстояние между двумя ближайшими точками созвездия
2 (по умолчанию)| положительный скаляр

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

Зависимости

Чтобы включить этот параметр, установите для параметра Normalization method значение Min. distance between symbols.

Average power, referenced to 1 ohm (W) — средняя мощность
1 (по умолчанию)| положительный скаляр

Средняя мощность символов в созвездии в ваттах, заданная в виде положительного скаляра. Значения мощности предполагают номинальный импеданс 1 Ом.

Единица измерения – ватт.

Зависимости

Чтобы включить этот параметр, установите для параметра Normalization method значение Average Power.

Peak power, referenced to 1 ohm (W) — пиковая мощность
1 (по умолчанию)| положительный скаляр

Максимальная мощность символов в созвездии, заданная в виде положительного скаляра. Значения мощности предполагают номинальный импеданс 1 Ом.

Единица измерения – ватт.

Зависимости

Чтобы включить этот параметр, установите для параметра Normalization method значение Peak Power.

Phase offset (rad) — вращение сигнального созвездия
0 (по умолчанию) | числовой скаляр

Вращение сигнального созвездия, заданное в виде числового скаляра.

Единица измерения – радиан.

Алгоритмы

Жесткая демодуляция QAM-сигнала

Алгоритм демодулятора преобразует полученные значения созвездий входного сигнала в M-мерные целочисленные индексы символов I и Q в диапазоне [ ], а затем преобразует эти демодулированные символьные индексы в форматированные выходные значения. M – это значение параметра M-ary number.

Вычисление целочисленного символьного индекса выполняется путем деротации и масштабирования комплексного созвездия входного сигнала (возможно, с шумом) на коэффициент деротации и коэффициент денормализации соответственно. Эти коэффициенты определяются на основе фазового смещения (рад), метода нормализации и соответствующих параметров. Эти деротационные и денормализованные значения добавляются к , чтобы перевести их в приблизительный диапазон [ ]. – это добавленное значение шума.

Затем полученные значения масштабируются с помощью деления на два (или, что эквивалентно, сдвига вправо на один бит для операций с фиксированной точкой), чтобы получить диапазон примерно [ ] для I и Q.

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

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

На данных рисунках представлены блок-схемы для работы алгоритмов с плавающей и фиксированной точкой.

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

Диаграммы с фиксированной точкой применяются, когда входной сигнал представляет собой знаковый тип данных с фиксированной точкой. Диаграмма упрощается, если фазовое смещение (рад) кратно или производный коэффициент денормализации равен 1.

Схемы преобразования сигналов с тривиальным фазовым смещением и коэффициентом денормализации, равным 1.

rectangular qam demodulator baseband 1

rectangular qam demodulator baseband 2

Схемы преобразования сигналов с нетривиальным фазовым смещением и неравномерным коэффициентом денормализации.

rectangular qam demodulator baseband 3

rectangular qam demodulator baseband 4

Программная демодуляция QAM-сигнала

Для программной демодуляции доступны два алгоритма с логарифмическим отношением правдоподобия (LLR) с плавным принятием решения: точный LLR и приблизительный LLR.

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

Алгоритм exact LLR вычисляет экспоненты с использованием арифметики конечной точности. Для вычислений, связанных с очень большими положительными или отрицательными величинами, алгоритм exact LLR дает результат: Inf или -Inf, если дисперсия шума очень велика, NaN, если дисперсия шума и мощность сигнала являются очень малы. Алгоритм approximate LLR не вычисляет экспоненты. Вы можете избежать результатов Inf, -Inf и NaN, используя алгоритм approximate LLR.
Размер и масштабирование созвездия

Совокупность сигналов содержит M точек, где M – параметр M-ary number.

M должно иметь вид для некоторого целого положительного числа K.

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

В следующей таблице перечислены возможные условия масштабирования.

Значение параметра Normalization method Условие масштабирования

Min. distance between symbols

Ближайшая пара точек в созвездии разделяется в зависимости от значения параметра Minimum distance.

Average Power

Средняя мощность символов в созвездии - это параметр Average power, referenced to 1 ohm (W).

Peak Power

Максимальная мощность символов в созвездии - это параметр Peak power, referenced to 1 ohm (W)