wlanConstellationDemap

Описание

пример

y = wlanConstellationDemap(sym,noiseVarEst,numBPSCS) demaps получил символы sym использование мягкого решения аппроксимирует метод логарифмического отношения правдоподобия (LLR) для numBPSCS, количество закодированных битов на поднесущую на пространственный поток.

пример

y = wlanConstellationDemap(sym,noiseVarEst,numBPSCS,demapType) также задает тип demapping.

пример

y = wlanConstellationDemap(sym,noiseVarEst,numBPSCS,phase) derotates символы по часовой стрелке прежде demapping количеством радианов задан в phase.

пример

y = wlanConstellationDemap(sym,noiseVarEst,numBPSCS,demapType,phase) задает тип demapping и вращение фазы.

Примеры

свернуть все

Выполните 4096-QAM demapping на последовательности битов данных.

Создайте последовательность битов данных.

bits = randi([0 1],49152,1,'int8');

Выполните отображение созвездия на битах данных при помощи 4096-QAM.

numBPSCS = 12;
sym = wlanConstellationMap(bits,numBPSCS);
size(sym)
ans = 1×2

        4096           1

Выполните 4096-QAM созвездие demapping. Поскольку значение по умолчанию demapping тип является мягким, выход является вектором мягких битов.

noiseVarEst = 0;
y = wlanConstellationDemap(sym,noiseVarEst,numBPSCS);
size(y)
ans = 1×2

       49152           1

Выполните 256-QAM demapping при помощи трудной демодуляции.

Создайте последовательность битов данных.

 bits = randi([0 1],416,1);

Выполните отображение созвездия на битах данных при помощи 256-QAM созвездия.

numBPSCS = 8;
sym = wlanConstellationMap(bits,numBPSCS);

Выполните трудное 256-QAM созвездие demapping.

noiseVarEst = 0;
demapType = 'hard';
y = wlanConstellationDemap(sym,noiseVarEst,numBPSCS,demapType);

Проверьте, что demapped данные совпадают с исходными данными.

isequal(bits,y)
ans = logical
   1

BPSK и QBPSK demapping для различных символов OFDM для поля VHT-SIG-A при помощи мягкой демодуляции. demapping задан в IEEE® 802.11ac™-2013 Section 22.3.8.3.3

Создайте последовательность битов данных. Задайте два символа OFDM в столбцах.

 bits = randi([0 1],48,2,'int8');

Выполните отображение созвездия на битах данных. Задайте размер вращения созвездия как номер в столбцах входной последовательности. Первый столбец сопоставлен с модуляцией BPSK. Второй столбец модулируется с модуляцией QBPSK.

numBPSCS = 1;
phase = [0 pi/2];
mappedData = wlanConstellationMap(bits,numBPSCS,phase);

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

noiseVar = 0;
demappedData = wlanConstellationDemap(mappedData,noiseVar,numBPSCS,phase);

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

demappedBits = int8((demappedData<=0));
isequal(bits,demappedBits)
ans = logical
   1

Выполните BPSK demapping на четырехмерном массиве при помощи трудной демодуляции.

Создайте последовательность битов данных как массив четырех размерностей, с 416 закодированными битами на поднесущую на пространственный поток на блок interleaver, четыре символа OFDM, два пространственных потока и два сегмента.

numCBPSSI = 416; 
numSym = 4;
numSS = 2;
numSeg = 2; 
bits = randi([0 1],numCBPSSI,numSym,numSS,numSeg);
size(bits)
ans = 1×4

   416     4     2     2

Выполните отображение созвездия BPSK на битах данных с вращением π2 радианы.

numBPSCS = 1;
phase = pi/2;
sym = wlanConstellationMap(bits,numBPSCS,phase);
size(sym)
ans = 1×4

   416     4     2     2

Выполните трудное созвездие QBPSK demapping. К derotate созвездие задайте ту же фазу как в функции отображения.

noiseVarEst = 0;
demapType = 'hard';
y = wlanConstellationDemap(sym,noiseVarEst,numBPSCS,demapType);

Проверьте, что demapped данные совпадают с исходными данными.

isequal(bits,y)
ans = logical
   1

Входные параметры

свернуть все

Полученные символы в виде комплексного вектора, матрицы или многомерного массива. Если вы задаете этот вход как матрицу или массив, функция выполняет созвездие demapping по столбцам.

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

Шумовая оценка отклонения в виде неотрицательного скаляра. Когда вы задаете demapType введите как 'hard', функция не использует этот вход.

Пример: 0.7071

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

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

  • 1 для модуляции бинарного манипулирования сдвига фазы (BPSK), как задано в разделе 17.3.5.8 из [1]

  • 2 для модуляции квадратурного манипулирования сдвига фазы (QPSK), как задано в разделе 17.3.5.8 из [1]

  • 4 для квадратурной амплитудной (16-QAM) модуляции с 16 точками, как задано в разделе 17.3.5.8 из [1]

  • 6 для 64-QAM, как задано в разделе 17.3.5.8 из [1]

  • 8 для 256-QAM, как задано в разделе 21.3.10.9 из [1]

  • 10 для 1024-QAM, как задано в разделе 27.3.11.9 из [2]

  • 12 для 4096-QAM, как задано в разделе 36.3.12.8 из [3]

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

Demapping вводят в виде одного из этих значений.

  • 'hard' — трудное решение demapping

  • 'soft' — мягкое решение аппроксимированный метод LLR

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

Вращение созвездия, в радианах в виде скаляра, вектора или многомерного массива. Размер этого входа должен быть совместим с размером sym входной параметр. Этот вход и sym имейте совместимые размеры, если для каждой соответствующей размерности размеры размерности или равны или один из них, 1. Когда одна из размерностей sym равно 1 и соответствующая размерность phase больше, чем 1, затем выходные размерности имеют тот же размер как размерности phase.

Пример: pi*(0:size(bits,1)/numBPSCS-1).'/2;

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

Выходные аргументы

свернуть все

Символы Demapped, возвращенные как вектор с целочисленным знаком, матрица или многомерный массив. Этот выход имеет тот же размер как sym за исключением количества строк, которое равно количеству строк sym умноженный на numBPSCS.

Ссылки

[1] Станд. IEEE 802.11™-2016 (Версия Станд. IEEE 802.11-2012). “Часть 11: Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Технические требования”. Стандарт IEEE для Информационных технологий — Телекоммуникации и обмен информацией между системами. Локальные сети и городские компьютерные сети — Конкретные требования.

[2] IEEE P802.11ax™/D4.1. “Часть 11: Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Технические требования. Поправка 1: Улучшения для Высокой эффективности WLAN”. Спроектируйте Стандарт для Информационных технологий — Телекоммуникации и обмен информацией между системами. Локальные сети и городские компьютерные сети — Конкретные требования.

[3] IEEE® P802.11be™/D1.0. “Часть 11: Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Технические требования. Поправка 8: Улучшения для Чрезвычайно Высокой пропускной способности (EHT)”. Спроектируйте Стандарт для Информационных технологий — Телекоммуникации и обмен информацией между системами. Локальные сети и городские компьютерные сети — Конкретные требования.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

Введенный в R2017b