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

OFDM Demodulator

Демодуляция с помощью метода OFDM.

Тип: OFDMDemodulator

Путь в библиотеке:

/Communication Systems/Modulation/Digital Modulation/OFDM/OFDM Demodulator

Описание

Блок OFDM Demodulator демодулирует входной сигнал при помощи метода ортогонального частотного разделения каналов с мультиплексированием (OFDM) во временной области и выдает поднесущие на основе параметров OFDM.

Блок имеет один входной порт и один или два выходных порта, в зависимости от состояния параметра Pilot output port.

Порты

Выход

# OUT_1 — демодулированный выходной сигнал
матрица | трехмерный массив

Details

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

  • — количество поднесущих данных, такое, что ;

    • — количество поднесущих, определяемое параметром FFT length;

    • — количество поднесущих в левой защитной полосе, определяемое первым элементом параметра Number of guard bands;

    • — количество поднесущих в правой защитной полосе, определяемое вторым элементом параметра Number of guard bands;

    • — число поднесущих в нулевом DC, заданное как 0 или 1 выбором параметра Remove DC carrier;

    • — количество пилотных поднесущих в каждом символе;

      • Если выбран выходной порт Pilot, size(Pilot subcarrier indices, 1);

      • Если выходной порт Pilot не выбран, для расчета ;

    • — количество поднесущих, используемых для пользовательских нулей. Для использования пользовательских нулей необходимо задать Pilot subcarrier indices в виде трехмерного массива.

  • — количество символов, определяемое параметром Number of OFDM symbols.

  • — количество приемных антенн, определяемое параметром Number of receive antennas.

Типы данных

Float64

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

Нет

# Pilot — пилотный сигнал
скаляр

Details

Пилотный сигнал, возвращаемый в виде массива размера .

  • — количество пилотных поднесущих в каждом символе, определяемое size(Pilot subcarrier indices, 1).

  • — количество символов, определяемое параметром Number of OFDM symbols.

  • — количество приемных антенн, определяемое параметром Number of receive antennas.

Зависимости

Чтобы использовать этот порт, установите флажок Pilot output port.

Типы данных

Float64

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

Нет

Вход

# IN_1 — OFDM-модулированный широкополосный входной сигнал
матрица

Details

OFDM-модулированный широкополосный сигнал, заданный в виде матрицы на .

  • — длина циклического префикса по всем символам;

    • — длина циклического префикса, определяемая параметром Cyclic prefix length;

    • Если Cyclic prefix length является скаляром, ;

    • Если Cyclic prefix length — вектор-строка, .

  • — количество поднесущих, определяемое параметром FFT length.

  • — количество символов, определяемое параметром Number of OFDM symbols.

  • — количество приемных антенн, определяемое параметром Number of receive antennas.

Типы данных

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

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

Да

Параметры

Основные

# FFT length — количество точек БПФ
Вещественное число

Details

Количество точек БПФ, заданное как положительный целочисленный скаляр.

Значение параметра FFT length должно быть больше или равно 8 и эквивалентно количеству поднесущих.

Значение по умолчанию

64

Имя для программного использования

FFTLength

Настраиваемый

Нет

Вычисляемый

Да

# Number of guard bands — количество поднесущих, выделенных для левой и правой защитных полос
Вектор вещественных чисел

Details

Количество поднесущих, выделенных для левой и правой защитных полос, заданное как целочисленный вектор размера 2 × 1.

Число поднесущих левой и правой защитных полос должно находиться в пределах , где — общее количество поднесущих в OFDM-сигнале, определяемое параметром FFT length.

Значение по умолчанию

[6; 5]

Имя для программного использования

NumberOfGuardBands

Настраиваемый

Нет

Вычисляемый

Да

# Remove DC subcarrier from output — исключить или включить поднесущую нулевой частоты
Логический тип

Details

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

  • , если значение четное;

  • , если значение нечетное.

— это общее количество поднесущих в OFDM-сигнале, определяемое параметром FFT length.

Значение по умолчанию

false (выключено)

Имя для программного использования

RemoveDC

Настраиваемый

Нет

Вычисляемый

Нет

# Pilot output port — вывод пилотных поднесущих
Логический тип

Details

Установите этот флажок, чтобы добавить порт для вывода пилотных поднесущих.

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

Если флажок установлен, блок отделяет поднесущие, указанные параметром Pilot subcarrier indices, от выходных данных и выводит демодулированный пилотный сигнал на порт Pilot.

Значение по умолчанию

false (выключено)

Имя для программного использования

PilotOutputPort

Настраиваемый

Нет

Вычисляемый

Нет

# Pilot subcarrier indices — индексы расположения пилотных поднесущих
Массив вещественных чисел

Details

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

где

  • — общее количество поднесущих в OFDM-сигнале, определяемое параметром FFT length;

  • и — левая и правая защитные полосы, заданные значением параметра Number of guard bands.

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

  • Если пилотные индексы одинаковы для каждого символа и передающей антенны, параметр имеет размерность .

  • Если пилотные индексы различаются по символам, параметр имеет размерность .

  • Если принятому сигналу присвоен один символ на нескольких передающих антеннах, то параметр имеет размерность .

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

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

Зависимости

Чтобы использовать этот параметр, установите флажок Pilot output port.

Значение по умолчанию

[12; 26; 40; 54]

Имя для программного использования

PilotSubcarrierIndices

Настраиваемый

Нет

Вычисляемый

Да

# Cyclic prefix length — длина циклического префикса
Скаляр / вектор вещественных чисел

Details

Длина циклического префикса для каждого OFDM-символа, заданная как положительный целочисленный скаляр или вектор-строка, содержащий количество элементов OFDM-символов. При указании длины циклического префикса в виде:

  • скаляр — длина циклического префикса одинакова для всех символов через все антенны;

  • вектор-строка — длина циклического префикса может варьироваться между символами, но не варьируется между антеннами.

Значение по умолчанию

16

Имя для программного использования

CyclicPrefixLength

Настраиваемый

Нет

Вычисляемый

Да

# Oversampling factor — коэффициент передискретизации
Вещественное число

Details

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

  • Произведение Oversampling factor на FFT length должно быть целым числом;

  • Произведение Oversampling factor на Cyclic prefix length должно быть целым числом.

Если Oversampling factor задан как иррациональное число, укажите дробное значение. Например, при FFT length 12 и Oversampling factor 4/3 их произведение равно целому числу 16. Однако округление 4/3 до 1.333 при установке Oversampling factor приводит к нецелочисленному произведению 15.9960, что приводит к ошибке.
Значение по умолчанию

1

Имя для программного использования

OversamplingFactor

Настраиваемый

Нет

Вычисляемый

Да

# Number of OFDM symbols — количество OFDM-символов
Вещественное число

Details

Количество OFDM-символов во временно-частотной сетке, заданное как положительный целочисленный скаляр.

Значение по умолчанию

1

Имя для программного использования

NumberOfOFDMSymbols

Настраиваемый

Нет

Вычисляемый

Да

# Number of receive antennas — количество приемных антенн
Вещественное число

Details

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

Значение по умолчанию

1

Имя для программного использования

NumberOfReceiveAntennas

Настраиваемый

Нет

Вычисляемый

Да

Алгоритмы

Демодуляция OFDM

Details

Метод ортогонального мультиплексирования с частотным разделением (OFDM) демодулирует входной сигнал OFDM с помощью операции БПФ, в результате чего получается параллельных потоков данных.

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

ofdm demodulator 1

Распределение поднесущих, защитные полосы и защитные интервалы

Details

Отдельные поднесущие OFDM распределяются как поднесущие данных, пилотные или нулевые.

Как показано здесь, поднесущие обозначаются как поднесущие данных, DC, пилота или защитной полосы.

ofdm demodulator 2

  • Поднесущие данных передают пользовательские данные.

  • Пилотные поднесущие предназначены для оценки канала.

  • Поднесущие нулевой частоты не передают никаких данных. Поднесущие без данных обеспечивают нулевую частоту центральной поднесущей и служат в качестве буферов между блоками ресурсов OFDM.

    • Поднесущая нулевой частоты является центром полосы частот с индексом

      , если значение четное,

      , если значение нечетное,

      где — это общее количество поднесущих в OFDM-сигнале.

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

Поднесущие нулевой частоты позволяют моделировать защитные полосы и расположение нулевых поднесущих для конкретных стандартов, таких как различные форматы 802.11, LTE, WiMAX, или для пользовательских распределений. Расположение нулевых поднесущих можно определить, назначив вектор индексов нулевых поднесущих.

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

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

ofdm demodulator 3

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

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

Литература

  1. Dahlman, E., S. Parkvall, and J. Skold. 4G LTE/LTE-Advanced for Mobile Broadband. London: Elsevier Ltd., 2011.

  2. Andrews, J. G., A. Ghosh, and R. Muhamed, Fundamentals of WiMAX, Upper Saddle River, NJ: Prentice Hall, 2007.

  3. IEEE Standard 802.16-2017. «Part 16: Air Interface for Broadband Wireless Access Systems.» March 2018.