wlanVHTData

Сгенерируйте VHT-поле-данных

Описание

пример

y = wlanVHTData(psdu,cfg) генерирует VHT-поле-данных [] 1форма волны временного интервала от входных пользовательских битов данных, psdu, для заданного объекта настройки, cfg. Смотрите, что VHT-поле-данных Обрабатывает для деталей генерации сигналов.

y = wlanVHTData(psdu,cfg,scramInit) использование scramInit для состояния инициализации скремблера.

Примеры

свернуть все

Сгенерируйте форму волны для VHT-поля-данных MIMO 20 МГц.

Создайте объект настройки VHT. Присвойте пропускную способность канала на 20 МГц, две антенны передачи, два пространственно-временных потока, и установите MCS на четыре.

cfgVHT = wlanVHTConfig('ChannelBandwidth','CBW20','NumTransmitAntennas',2,'NumSpaceTimeStreams',2,'MCS',4);

Сгенерируйте пользовательские данные о полезной нагрузке и форму волны VHT-поля-данных.

psdu = randi([0 1],cfgVHT.PSDULength*8,1);
y = wlanVHTData(psdu,cfgVHT);
size(y)
ans = 1×2

        2160           2

Форма волны на 20 МГц является массивом с двумя столбцами, соответствуя двум антеннам передачи. В каждом столбце существует 2 160 комплексных выборок.

y(1:10,:)
ans = 10×2 complex

  -0.0598 + 0.1098i  -0.1904 + 0.1409i
   0.6971 - 0.3068i  -0.0858 - 0.2701i
  -0.1284 + 0.9268i  -0.8318 + 0.3314i
  -0.1180 + 0.0731i   0.1313 + 0.4956i
   0.3591 + 0.5485i   0.9749 + 0.2859i
  -0.9751 + 1.3334i   0.0559 + 0.4248i
   0.0881 - 0.8230i  -0.1878 - 0.2959i
  -0.2952 - 0.4433i  -0.1005 - 0.4035i
  -0.5562 - 0.3940i  -0.1292 - 0.5976i
   1.0999 + 0.3292i  -0.2036 - 0.0200i

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

свернуть все

Модуль эксплуатационных данных PHY (PSDU), заданный как N b-1 вектор. N b является количеством битов и равняется PSDULength × 8.

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

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

Пропускная способность канала, заданная как 'CBW20', 'CBW40', 'CBW80', или 'CBW160'. Если передача имеет многого пользователя, та же пропускная способность канала применяется ко всем пользователям. Значение по умолчанию 'CBW80' устанавливает пропускную способность канала на 80 МГц.

Типы данных: char | string

Количество антенн передачи, заданных как целое число в области значений [1, 8].

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

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

  • Для отдельного пользователя количество пространственно-временных потоков является скалярным целым числом от 1 до 8.

  • Для многого пользователя количество пространственно-временных потоков является 1 NUsers вектором целых чисел от 1 до 4, где длина вектора, NUsers, является целым числом от 1 до 4.

Пример: [1 3 2] количество пространственно-временных потоков для каждого пользователя.

Примечание

Сумма пространственно-временных потоковых элементов вектора не должна превышать восемь.

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

Пространственная схема отображения, заданная как 'Direct'Адамар, 'Fourier', или 'Custom'. Значение по умолчанию 'Direct' применяется когда NumTransmitAntennas и NumSpaceTimeStreams равны.

Типы данных: char | string

Пространственная матрица отображения, заданная как скаляр, матрица или трехмерный массив. Используйте это свойство применить beamforming держащаяся матрица, и вращать и масштабировать выходной вектор картопостроителя созвездия. Если применимо масштабируйтесь, пространственно-временной кодер блока вывел вместо этого. SpatialMappingMatrix применяется когда SpatialMapping свойство установлено в 'Custom'. Для получения дополнительной информации смотрите Станд. IEEE 802.11™-2012, Раздел 20.3.11.11.2.

  • Когда задано как скаляр, постоянное значение применяется ко всем поднесущим.

  • Когда задано как матрица, размером должен быть NSTS_Total-by-NT. Пространственная матрица отображения применяется ко всем поднесущим. NSTS_Total является суммой пространственно-временных потоков для всех пользователей, и NT является количеством антенн передачи.

  • Когда задано как трехмерный массив, размером должен быть NST-by-NSTS_Total-by-NT. NST является суммой занятых данных (NSD) и пилот (NSP) поднесущие, как определено ChannelBandwidth. NSTS_Total является суммой пространственно-временных потоков для всех пользователей. NT является количеством антенн передачи.

    ST N увеличивается с пропускной способностью канала.

    ChannelBandwidthКоличество занятых поднесущих (ST N)Количество поднесущих данных (SD N)Количество экспериментальных поднесущих (SP N)
    'CBW20'56524
    'CBW40'1141086
    'CBW80'2422348
    'CBW160'48446816

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

Пример: [0.5 0.3 0.4; 0.4 0.5 0.8] представляет пространственную матрицу отображения, имеющую два пространственно-временных потока и три антенны передачи.

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

Включите пространственно-временное блочное кодирование (STBC) поля данных PPDU, заданного как логическое. STBC передает несколько копий потока данных через присвоенные антенны.

  • Когда установлено в false, никакой STBC не применяется к полю данных, и количество пространственно-временных потоков равно количеству пространственных потоков.

  • Когда установлено в true, STBC применяется к полю данных, и количество пространственно-временных потоков удваивает количество пространственных потоков.

Смотрите IEEE® 802.11ac™-2013, Раздел 22.3.10.9.4 для дальнейшего описания.

Примечание

STBC важно для однопользовательских передач только.

Типы данных: логический

Модуляция и схема кодирования, используемая в передаче текущего пакета, заданного как скаляр или вектор.

  • Для отдельного пользователя значение MCS является скалярным целым числом от 0 до 9.

  • Для многого пользователя MCS является 1 NUsers вектором целых чисел или скаляра со значениями от 0 до 9, где длина вектора, NUsers, является целым числом от 1 до 4.

MCSМодуляцияКодирование уровня
0BPSK1/2
1QPSK1/2
2QPSK3/4
316QAM1/2
416QAM3/4
564QAM2/3
664QAM3/4
764QAM5/6
8256QAM3/4
9256QAM5/6

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

Тип прямого кодирования с коррекцией ошибок для поля данных, заданного как 'BCC' (значение по умолчанию) или 'LDPC'. 'BCC' указывает на бинарное сверточное кодирование и 'LDPC' указывает на низкое кодирование проверки четности плотности. Обеспечение вектора символов или вектора символов отдельной ячейки задает тип кодирования канала для отдельного пользователя или всех пользователей в многопользовательской передаче. Путем обеспечения массиву ячеек различные типы кодирования канала могут быть заданы на пользователя для многопользовательской передачи.

Типы данных: char | cell | string

Циклическая длина префикса для поля данных в пакете, заданном как 'Long' или 'Short'.

  • Долгая защитная длина интервала составляет 800 нс.

  • Короткая защитная длина интервала составляет 400 нс.

Типы данных: char | string

Количество байтов в дополнении A-MPDU pre-EOF, заданном как скалярное целое число или вектор целых чисел.

  • Для отдельного пользователя, APEPLength неотрицательное целое число в интервале [0, 220 – 1].

  • Для многопользовательского, APEPLength 1 NUsers вектором неотрицательных целых чисел, где NUsers является целым числом в [1, 4]. Записи в APEPLength целые числа в интервале [0, 220 – 1].

  • Для пустого пакета данных (NDP), APEPLength = 0.

APEPLength используется внутренне, чтобы определить количество символов OFDM в поле данных. Для получения дополнительной информации смотрите 802.11ac Станд. IEEE 2013, Таблица 22-1.

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

Это свойство доступно только для чтения.

Количество байтов несут в пользовательской полезной нагрузке, включая A-MPDU и любое дополнение MAC. Для пустого пакета данных (NDP) длина PSDU является нулем.

  • Для отдельного пользователя длина PSDU является скалярным целым числом от 1 до 1 048 575.

  • Для многого пользователя длина PSDU является 1 NUsers вектором целых чисел от 1 до 1 048 575, где длина вектора, Пользователи N, является целым числом от 1 до 4.

  • Когда неопределенный, PSDULength возвращен как пустой из размера 1×0. Это может произойти, когда набор значений свойств для объекта находится в недопустимом состоянии.

PSDULength свойство только для чтения и вычисляется внутренне на основе APEPLength свойство и другие связанные с кодированием свойства, как задано в 802.11ac Станд. IEEE 2013, Раздел 22.4.3. Это доступно прямым вызовом свойства.

Пример: [1035 4150] вектор длины PSDU для wlanVHTConfig объекту с двумя пользователями, где MCS для первого пользователя 0 и MCS для второго пользователя, 3 года.

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

Начальное состояние скремблера скремблера данных для каждого пакета, сгенерированного, заданного как целое число, бинарный вектор, 1 NU целочисленный вектор-строка или 7 NU бинарная матрица. NU является количеством пользователей, от 1 до 4. Если задано как целочисленный или бинарный вектор, установка применяется ко всем пользователям. Если задано как вектор-строка или бинарная матрица, установка для каждого пользователя задана в соответствующем столбце как скалярное целое число от 1 до 127 или соответствующий бинарный вектор.

Инициализация скремблера, используемая на данных о передаче, следует за процессом, описанным в Станд. IEEE 802.11-2012, Раздел 18.3.5.5 и Станд. IEEE 802.11ad™-2012, Раздел 21.3.9. Заголовок и поля данных, которые следуют за полем инициализации скремблера (включая дополнительные биты данных) скремблированы XORing каждый бит с длиной 127 периодических последовательностей, сгенерированных полиномиальным S(x) = x 7+x4+1. Октеты PSDU (Модуль Эксплуатационных данных Физического уровня) помещаются в небольшой поток, и в каждом октете, бит 0 (LSB) является первыми и битными 7 (MSB), является последним. Генерацию последовательности и операцию "исключающее ИЛИ" показывают в этом рисунке:

Преобразование из целого числа вдребезги использует ориентацию лево-MSB. Для инициализации скремблера с десятичным 1, биты сопоставлены с показанными элементами.

ЭлементX7X6X5X4X3X2 X1
Битовое значение0000001

Чтобы сгенерировать поток битов, эквивалентный десятичному числу, используйте de2bi. Например, для десятичного 1:

de2bi(1,7,'left-msb')
ans =

     0     0     0     0     0     0     1

Пример: [1;0;1;1;1;0;1] передает состояние инициализации скремблера 93 как бинарный вектор.

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

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

свернуть все

Форма волны временного интервала VHT-поля-данных, возвращенная как матрица S-by-NT N. N S является количеством выборок временного интервала, и N T является количеством антенн передачи. Смотрите, что VHT-поле-данных Обрабатывает для деталей генерации сигналов.

Больше о

свернуть все

VHT-поле-данных

Очень высокие данные о пропускной способности (данные VHT) поле используются, чтобы передать один или несколько кадров от слоя MAC. Это следует за полем VHT-SIG-B в пакетной структуре для формата VHT PPDUs.

Поле данных VHT задано в 802.11ac Станд. IEEE 2013, Раздел 22.3.10. Это состоит из четырех подполей.

  • Поле Service — Содержит семибитное состояние инициализации скремблера, один бит, зарезервированный для будущих факторов и восемь битов для поля VHT-SIG-B CRC.

  • PSDU — Поле переменной длины, содержащее модуль эксплуатационных данных PLCP. В 802,11, PSDU может состоять из агрегата нескольких модулей эксплуатационных данных MAC.

  • Клавиатура PHY — Переменное количество битов передало передатчику, чтобы создать полный символ OFDM.

  • Хвост — Биты раньше отключали сверточный код. Биты хвоста не нужны, когда LDPC используется.

PSDU

Физический уровень (PHY) Модуль Эксплуатационных данных (PSDU). PSDU может состоять из одного модуля данных о протоколе среднего управления доступом (MAC) (MPDU) или нескольких MPDUs в агрегате MPDU (A-MPDU). В сценарии отдельного пользователя VHT-поле-данных содержит один PSDU. В многопользовательском сценарии VHT-поле-данных несет до четырех PSDUs максимум для четырех пользователей.

Алгоритмы

свернуть все

Обработка VHT-поля-данных

VHT-поле-данных кодирует сервис, PSDU, биты клавиатуры и биты хвоста. wlanVHTData функция выполняет обработку передатчика на VHT-поле-данных и выводит форму волны временного интервала для антенн передачи NT.

NES является количеством энкодеров BCC.
NSS является количеством пространственных потоков.
NSTS является количеством пространственно-временных потоков.
NT является количеством антенн передачи.

Кодирование канала BCC показывают.

Для получения дополнительной информации алгоритма обратитесь к 802.11ac Станд. IEEE 2013 [1], Раздел 22.3.4.9 и 22.3.4.10, соответственно, отдельный пользователь и многопользовательский.

Ссылки

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

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

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

Введенный в R2015b


[1]  802.11ac Станд. IEEE 2 013 Адаптированных и переизданные с разрешением от IEEE. Авторское право IEEE 2013. Все права защищены.