exponenta event banner

wlanConstellationMap

Отображение созвездий

Описание

пример

y = wlanConstellationMap(bits,numBPSCS) отображает последовательность ввода bits используя количество кодированных битов на поднесущую на пространственный поток, numBPSCS, к одной из следующих модуляций:

  • BPSK, QPSK, 16QAM или 64QAM согласно IEEE ® 802.11™-2012, раздел 18.3.5.8

  • 256QAM, согласно IEEE 802.11ac™-2012, раздел 22.3.10.9.1

  • 1024QAM, согласно IEEE 802.11-16/0922r2

Отображение созвездия выполняется по столбцам.

пример

y = wlanConstellationMap(bits,numBPSCS,phase) поворачивает точки созвездия против часовой стрелки на число радиан, указанное в phase.

Примеры

свернуть все

Выполните сопоставление 256QAM, как определено в IEEE ® 802.11ac™-2013 разделе 22.3.10.9.1.

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

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

Выполните отображение совокупности для битов данных с 256QAM модуляцией.

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

Размер выходного сигнала, возвращаемого этой модуляцией, равен размеру входной последовательности, деленному на восемь.

size(mappedData)
ans = 1×2

    52     1

Выполните сопоставление π2-BPSK для последовательности битов данных, как определено в IEEE ® 802.11ad™-2012 Раздел 21.6.3.2.4.

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

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

Выполните отображение BPSK на биты данных с поворотом на 0,2 радиана. Обратите внимание, что размер вращения созвездия phase равен размеру входной последовательности.

numBPSCS = 1;
phase = pi*(0:size(bits,1)/numBPSCS-1).'/2;
mappedData = wlanConstellationMap(bits,numBPSCS,phase);

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

size(mappedData)
ans = 1×2

   512     1

Отображение модулированной комбинации сигналов с помощью scatterplot функция.

scatterplot(mappedData);

Figure Scatter Plot contains an axes. The axes with title Scatter plot contains an object of type line. This object represents Channel 1.

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

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

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

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

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

Отображение модулированной комбинации сигналов с помощью scatterplot функция. Первый график показывает данные после модуляции BPSK, а второй график показывает QBPSK-модулированные символы.

scatterplot(mappedData(:,1))

Figure Scatter Plot contains an axes. The axes with title Scatter plot contains an object of type line. This object represents Channel 1.

scatterplot(mappedData(:,2))

Figure Scatter Plot contains an axes. The axes with title Scatter plot contains an object of type line. This object represents Channel 1.

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

свернуть все

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

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

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

  • 1 для модуляции BPSK

  • 2 для модуляции QPSK

  • 4 для модуляции 16QAM

  • 6 для модуляции 64QAM

  • 8 для модуляции 256QAM

  • 10 для модуляции 1024QAM

Пример: 4

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

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

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

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

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

свернуть все

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

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

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.

См. также

Представлен в R2017b