Демодулируйте rectangular-QAM-modulated данные
AM, в подбиблиотеке Digital Baseband Модуляции
Блок Rectangular QAM Demodulator Baseband демодулирует сигнал, который модулировался с помощью квадратурной амплитудной модуляции с совокупностью на прямоугольной решетке.
Все значения степени принимают номинальный импеданс 1 Ома.
Сигнальное созвездие имеет точки M, где M является параметром M-ary number. M должен иметь форму 2K для некоторого положительного целого числа K. Блок масштабирует сигнальное созвездие на основе того, как вы устанавливаете параметр Normalization method. Для получения дополнительной информации смотрите страницу с описанием для блока Rectangular QAM Modulator Baseband.
Этот блок принимает на вход сигнал в виде вектора - столбца или скалярной величины. Для получения информации о типах данных, которые поддерживает каждый порт блока см. таблицу Supported Data Types на этой странице.
Алгоритм демодулятора сопоставляет полученные значения совокупности входного сигнала с M-арным целым числом I и индексы символа Q между 0 и и затем карты эти демодулируемые индексы символа к значениям отформатированного вывода.
Целочисленное индексное вычисление символа выполняется первым derotating и масштабированием комплексной совокупности входного сигнала (возможно с шумом) derotate фактором и фактором денормализации, соответственно. Эти факторы выведены от Phase offset, Normalization method и связанных параметров. Эти derotated и денормализованные значения добавляются к переводить их в аппроксимированную область значений между 0 и (плюс шум). Получившиеся значения затем повторно масштабируются через divide-two (или, эквивалентно, сдвиг вправо на один бит для операции фиксированной точки), чтобы получить область значений приблизительно между 0 и (плюс шум), поскольку я и Q. Шумные индексные значения округлены к самому близкому целому числу и отсечены, через насыщение, и сопоставлены с целочисленными значениями символа в области значений [0 M-1]. Наконец, на основе других параметров блоков, целочисленный индекс сопоставлен со значением символа, которое отформатировано и брошено к выбранному Output data type.
Следующие фигуры содержат схемы потока сигналов для операции алгоритма и фиксированной точки с плавающей точкой. Схемы с плавающей точкой применяются, когда типом данных входного сигнала является double
или single
. Схемы фиксированной точки применяются, когда входной сигнал является типом данных с фиксированной точкой со знаком. Обратите внимание на то, что схема упрощена, когда Phase offset кратный π/2, и/или выведенный фактор денормализации равняется 1.
Схемы потока сигналов с тривиальным фактором смещения и денормализации фазы, равным 1
Схемы потока сигналов с нетривиальным фактором денормализации смещения и неединицы фазы
Число точек в сигнальном созвездии. Это должно иметь форму 2K для некоторого положительного целого числа K.
Определяет, как блок масштабирует сигнальное созвездие. Выбором является Min. distance between symbols
, Average Power
и Peak Power
.
Этот параметр появляется, когда Normalization method установлен в Min. distance between symbols
.
Расстояние между двумя самыми близкими точками совокупности.
Средняя степень символов в совокупности, на которую ссылаются к 1 Ому. Это поле появляется только, когда Normalization method установлен в Average Power
.
Максимальная мощность символов в совокупности, на которую ссылаются к 1 Ому. Это поле появляется только, когда Normalization method установлен в Peak Power
.
Вращение сигнального созвездия, в радианах.
Определяет, как блок присваивает двоичные слова точкам сигнального созвездия. Больше деталей находится на странице с описанием для блока Rectangular QAM Modulator Baseband.
Выбор User-defined
отображает поле Constellation mapping, допуская заданное пользователями отображение.
Этот параметр появляется, когда User-defined
выбран в выпадающем списке Constellation ordering.
Это - строка или вектор-столбец размера M и должно иметь уникальные целочисленные значения в области значений [0, M-1]. Значения должны иметь тип данных double
.
Первый элемент этого вектора соответствует главной крайней левой точке совокупности, с последующими элементами, бегущими по столбцам, слева направо. Последний элемент соответствует самой правой нижней частью точке.
Определяет, производит ли блок целые числа или бинарные представления целых чисел.
Если установлено в Integer
, блок производит целые числа.
Если установлено в Bit
, блок производит группу битов K, названных двоичным словом, для каждого символа, когда Decision type установлен в Hard decision
. Если Decision type установлен в Log-likelihood ratio
или Approximate log-likelihood ratio
, блок выходные параметры поразрядный LLR и аппроксимированный LLR, соответственно.
Этот параметр появляется, когда Bit
выбран в выпадающем списке Output type.
Задает использование трудного решения, LLR или аппроксимированного LLR во время демодуляции. См. Точный Алгоритм LLR и Аппроксимируйте Алгоритм LLR в Руководстве пользователя Communications Toolbox™ для деталей алгоритма.
Этот параметр появляется, когда Approximate log-likelihood ratio
или Log-likelihood ratio
выбраны для Decision type.
Когда установлено в Dialog
, шумовое отклонение может быть задано в поле Noise variance. Когда установлено в Port
, порт появляется на блоке, через который может быть введено шумовое отклонение.
Этот параметр появляется, когда Noise variance source установлен в Dialog
и задает шумовое отклонение во входном сигнале. Этот параметр является настраиваемым в режиме normal mode, Режиме Accelerator и Быстром Режиме Accelerator.
Если вы используете Simulink® Coder™ быстрая симуляция (RSIM) цель, чтобы создать исполняемый файл RSIM, то можно настроить параметр, не перекомпилировав модель. Это полезно для симуляций Монте-Карло, в которых вы запускаете симуляцию многократно (возможно, на нескольких компьютерах) с различными количествами шума.
Алгоритм LLR включает вычислительные экспоненциалы очень больших или очень небольших чисел с помощью конечной арифметики точности и уступил бы:
Inf
к -Inf
, если Noise variance очень высок
NaN
, если Noise variance и степень сигнала являются оба очень маленькими
В таких случаях используйте аппроксимированный LLR, когда его алгоритм не включает вычислительные экспоненциалы.
Когда параметр будет установлен на 'Inherit via internal rule'
(настройка по умолчанию), блок наследует тип выходных данных от входного порта. Тип выходных данных совпадет с типом входных данных, если вход будет иметь тип single
или double
. В противном случае тип выходных данных будет то, как будто этот параметр устанавливается на 'Smallest unsigned integer'
.
Когда параметр устанавливается на 'Smallest unsigned integer'
, тип выходных данных выбран на основе настроек, используемых в панели Hardware Implementation диалогового окна Configuration Parameters модели. Если ASIC/FPGA
выбран в панели Hardware Implementation, тип выходных данных является идеальным минимальным размером, т.е. ufix(1)
для битных выходных параметров и ufix(ceil(log2(M)))
для целочисленных выходных параметров. Для всех других выборов это - беззнаковое целое с самым маленьким доступным размером слова, достаточно большим, чтобы соответствовать идеальному минимальному размеру, обычно соответствуя размеру char (например, uint8
).
Для целочисленных выходных параметров этот параметр может быть установлен на Smallest unsigned integer
, int8
, uint8
, int16
, uint16
, int32
, uint32
, single
и double
. Для битных выходных параметров опциями является Smallest unsigned integer
, int8
, uint8
, int16
, uint16
, int32
, uint32
, boolean
, single
или double
.
Этот параметр только применяется, когда вход является фиксированной точкой, и Phase offset не является кратным π/2.
Это может быть установлено в Same word length as input
или Specify word length
, в этом случае поле включено для ввода данных пользователем.
Этот параметр только применяется, когда вход является фиксированной точкой, и выведенным фактором денормализации является неединица (не равный 1). Этот масштабный коэффициент выведен от Normalization method и других значений параметров в диалоговом окне блока.
Это может быть установлено в Same word length as input
или Specify word length
, в этом случае поле включено для ввода данных пользователем. Длина части лучшей точности всегда используется.
Этот параметр только применяется, когда вход является сигналом фиксированной точки и существует неединица (не равна 1) денормализованный фактор. Это может быть установлено в Inherit via internal rule
или Specify word length
, который включает поле для ввода данных пользователем.
Установка на Inherit via internal rule
вычисляет размер слова продукта полной точности и дробную длину. Внутреннее Правило для Типов данных продукта (DSP System Toolbox) в Руководстве пользователя DSP System Toolbox™ описывает полную точность Product output внутреннее правило.
Установка на Specify word length
позволяет вам задавать размер слова. Блок вычисляет длину части лучшей точности на основе заданного размера слова и предварительно вычисленный худший случай (min / макс.) значение реального мира результат Product output. Худший случай результат Product output предварительно вычисляется путем умножения денормализованного фактора с худшим случаем (min / макс.) область значений входного сигнала, просто на основе типа данных входного сигнала.
Блок использует Rounding mode, когда результат вычисления фиксированной точки не сопоставляет точно с номером, представимым, по условию вводят и масштабирующий хранение результата. Для получения дополнительной информации смотрите Округление Режимов (DSP System Toolbox) или Округление Режима: Самый Простой (Fixed-Point Designer).
Этот параметр только применяется, когда вход является сигналом фиксированной точки. Это может быть установлено в Inherit via internal rule
, Same as product output
или Specify word length
, в этом случае поле включено для ввода данных пользователем
Установка на Inherit via internal rule
вычисляет размер слова суммы полной точности и дробную длину, на основе двух входных параметров к Сумме в схеме потока сигналов Алгоритма Трудного решения фиксированной точки. Правило эквивалентно, фиксированная точка наследовали правило внутреннего параметра Accumulator data type в блоке Simulink Sum.
Установка на Specify word length
позволяет вам задавать размер слова. Лучшая длина части точности вычисляется на основе размера слова, заданного в предварительно вычисленной максимальной области значений, необходимой для демодулируемого алгоритма, чтобы привести к точным результатам. Тип данных с фиксированной точкой со знаком, который имеет лучшую точность полностью, содержит значения в области значений для заданного размера слова.
Установка на Same as product output
позволяет типу данных Суммы совпадать с типом данных Product output (когда Product output используется). Если Product output не будет использоваться, то эта установка будет проигнорирована, и установка Inherit via internal rule
Sum будет использоваться.
Порт | Поддерживаемые типы данных |
---|---|
Входной параметр |
|
Var |
|
Вывод |
|
[1] Смит, Джоэл Г., “нечетно-битное квадратурное манипулирование Амплитудного Сдвига”, транзакции IEEE на коммуникациях, издании COM-23, март 1975, 385–389.