wlanFieldIndices

Сгенерируйте индексы поля PPDU

Синтаксис

ind = wlanFieldIndices(cfg)
ind = wlanFieldIndices(cfg,field)

Описание

пример

ind = wlanFieldIndices(cfg) возвращает ind, структура, содержащая запуск и индексы остановки отдельных полей компонента, которые включают основополосную форму волны модуля данных о протоколе процедуры (PPDU) сходимости физического уровня.

Примечание

Для "не высокая пропускная способность" (non-HT) формат, эта функция поддерживает генерацию полевых индексов только для модуляции OFDM.

пример

ind = wlanFieldIndices(cfg,field) возвращает запуск и индексы остановки для заданного типа поля в строках матричного ind.

Примеры

свернуть все

Извлеките "очень высокую пропускную способность" короткое учебное поле (VHT-STF) от формы волны VHT.

Создайте объект настройки VHT-формата для multiple-input/multiple-output (MIMO) передача с помощью пропускной способности канала на 160 МГц. Сгенерируйте соответствующую форму волны VHT.

cfg = wlanVHTConfig('MCS',8,'ChannelBandwidth','CBW160', ... 
    'NumTransmitAntennas',2,'NumSpaceTimeStreams',2);
txSig = wlanWaveformGenerator([1;0;0;1],cfg);

Определите индексы поля PPDU компонента для формата VHT.

ind = wlanFieldIndices(cfg)
ind = struct with fields:
       LSTF: [1 1280]
       LLTF: [1281 2560]
       LSIG: [2561 3200]
    VHTSIGA: [3201 4480]
     VHTSTF: [4481 5120]
     VHTLTF: [5121 6400]
    VHTSIGB: [6401 7040]
    VHTData: [7041 8320]

Форма волны VHT PPDU состоит из восьми полей, включая семь полей преамбулы и одно поле данных.

Извлеките VHT-STF от переданной формы волны.

stf = txSig(ind.VHTSTF(1):ind.VHTSTF(2),:);

Проверьте, что VHT-STF имеет размерность 640 2, соответствуя количеству выборок (80 для каждого сегмента пропускной способности на 20 МГц) и количеству антенн передачи.

disp(size(stf))
   640     2

Сгенерируйте форму волны VHT. Извлеките и демодулируйте VHT длинное учебное поле (VHT-LTF), чтобы оценить коэффициенты канала. Восстановитесь поле данных при помощи канала оценивают и используют это поле, чтобы определить количество битовых ошибок.

Сконфигурируйте объект настройки VHT-формата с двумя путями.

vht = wlanVHTConfig('NumTransmitAntennas',2,'NumSpaceTimeStreams',2);

Сгенерируйте случайный PSDU и создайте соответствующую форму волны VHT.

txPSDU = randi([0 1],8*vht.PSDULength,1);
txSig = wlanWaveformGenerator(txPSDU,vht);

Передайте сигнал через TGac 2x2 канал MIMO.

tgacChan = wlanTGacChannel('NumTransmitAntennas',2,'NumReceiveAntennas',2, ...
    'LargeScaleFadingEffect','Pathloss and shadowing');
rxSigNoNoise = tgacChan(txSig);

Добавьте AWGN в полученный сигнал. Установите шумовое отклонение для случая, в котором получатель имеет шумовую фигуру на 9 дБ.

nVar = 10^((-228.6+10*log10(290)+10*log10(80e6)+9)/10);
awgnChan = comm.AWGNChannel('NoiseMethod','Variance','Variance',nVar);
rxSig = awgnChan(rxSigNoNoise);

Определите индексы для VHT-LTF и извлеките поле от полученного сигнала.

indVHT = wlanFieldIndices(vht,'VHT-LTF');
rxLTF = rxSig(indVHT(1):indVHT(2),:);

Демодулируйте VHT-LTF и оцените коэффициенты канала.

dLTF = wlanVHTLTFDemodulate(rxLTF,vht);
chEst = wlanVHTLTFChannelEstimate(dLTF,vht);

Извлеките VHT-поле-данных и восстановите информационные биты.

indData = wlanFieldIndices(vht,'VHT-Data');
rxData = rxSig(indData(1):indData(2),:);
rxPSDU = wlanVHTDataRecover(rxData,chEst,nVar,vht);

Определите количество битовых ошибок.

numErrs = biterr(txPSDU,rxPSDU)
numErrs = 0

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

свернуть все

Формат передачи, заданный как один из этих объектов настройки: wlanHESUConfig, wlanHEMUConfig, wlanHERecoveryConfig wlanDMGConfig, wlanS1GConfig, wlanVHTConfig, wlanHTConfig или wlanNonHTConfig.

Пример: cfg = wlanVHTConfig

Имя поля PPDU, заданное как вектор символов. Допустимый набор значений field зависит от формата передачи, заданного во входе cfg.

Формат передачи (cfg)Допустимые значения имени поля (field)
wlanHESUConfig, wlanHEMUConfig или wlanHERecoveryConfig

'L-STF', 'L-LTF', 'L-SIG', 'RL-SIG', 'HE-SIG-A', 'HE-SIG-B', 'HE-STF', 'HE-LTF' или 'HE-Data'

wlanDMGConfig

'DMG-STF', 'DMG-CE', 'DMG-Header' и 'DMG-Data' характерны для всего физического уровня направленного мультигигабита (DMG) (PHY) настройки.

Когда свойство wlanDMGConfig, TrainingLength положителен, дополнительные допустимые поля, включает: 'DMG-AGC', 'DMG-AGCSubfields', 'DMG-TRN', 'DMG-TRNCE' и 'DMG-TRNSubfields'.

  • 'DMG-AGCSubfields' возвращен в матрице со строками TrainingLength.

  • 'DMG-TRNCE' возвращен в матрице с TrainingLength/4 строки.

  • 'DMG-TRNSubfields' возвращен в матрице со строками TrainingLength.

wlanS1GConfig

'S1G-STF', 'S1G-LTF1' и 'S1G-Data' характерны для всего sub-one-gigahertz (S1G) настройки.

Для 1 МГц или больше, чем короткая настройка преамбулы на 2 МГц, дополнительные допустимые поля включают 'S1G-SIG' и 'S1G-LTF2N'.

Для большего, чем настройка преамбулы 2 МГц длиной дополнительные допустимые поля включают 'S1G-SIG-A', 'S1G-DSTF', 'S1G-DLTF' и 'S1G-SIG-B'.

wlanVHTConfig

'L-STF', 'L-LTF', 'L-SIG', 'VHT-SIG-A', 'VHT-STF', 'VHT-LTF', 'VHT-SIG-B' или 'VHT-Data'

wlanHTConfig

'L-STF', 'L-LTF', 'L-SIG', 'HT-SIG', 'HT-STF', 'HT-LTF' или 'HT-Data'

wlanNonHTConfig

'L-STF', 'L-LTF', 'L-SIG' или 'NonHT-Data'

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

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

свернуть все

Запустите и остановите индексы, возвращенные как матрица структуры. Индексы соответствуют запуску и индексам остановки полей, включенных в основополосную форму волны, заданную входом cfg.

Если вы задаете вход field, функция возвращает ind как N-by-2 матрица значений uint32, состоя из запуска, и остановите индексы поля PPDU. Эта таблица обрисовывает в общих чертах размерность N N-by-2 матрица, которая возвращена на основе определенного формата и настройки.

ФорматНастройкаind или определенная полевая размерность

non-HT

1 2 матрица для каждого поля

HT

1 2 матрица для каждого поля

Режим Null data packet (NDP), если свойством PSDULength объекта wlanHTConfig является 0Пустая матрица

VHT и S1G

1 2 матрица для каждого поля

Когда режим пустого пакета данных (NDP), если свойством APEPLength объекта wlanVHTConfig или wlanS1GConfig является 0Пустая матрица

HE (1)

1 2 матрица для каждого поля

Режим Null data packet (NDP), если свойством APEPLength объекта wlanHESUConfig или wlanHESUConfig является 0Пустая матрица
Когда midamble добавляется к Полю данных HE, чтобы улучшить оценки канала для высоких Доплеровских сценариев.

'HE Data' является R-by-2 матрица, где R является количеством блоков данных, разделенных midamble периодами.

DMG (2)

1 2 матрица для каждого поля

Когда свойство TrainingLength объекта wlanDMGConfig положительно'DMG-AGC' 1 2 матрица.
'DMG-TRN' 1 2 матрица
'DMG-AGCSubfields' является TrainingLength-by-2 матрица.
'DMG-TRNSubfields' является TrainingLength-by-2 матрица.
'DMG-TRNCE' (TrainingLength/4)-by-2 матрица.
Когда свойством TrainingLength объекта wlanDMGConfig является 0'DMG-AGC' является пустой матрицей.
'DMG-TRN' является пустой матрицей.
'DMG-AGCSubfields' является пустой матрицей.
'DMG-TRNSubfields' является пустой матрицей.
'DMG-TRNCE' является пустой матрицей.
  1. Как описано в Разделе 28.3.11.16 из [1], можно добавить midamble в Поле данных HE, чтобы улучшить оценки канала для высоких Доплеровских сценариев.

  2. Для DMG поле 'DMG-AGC' содержит подполя N TrainingLength, где N TrainingLength является 0–64 подполями. Поле 'DMG-TRN' содержит N TrainingLength + (N TrainingLength/4) подполя. Как показано в этой фигуре, индексы для 'DMG-AGC' и 'DMG-TRN' накладываются с индексами их соответствующих подполей, 'DMG-AGCSubfields' и 'DMG-TRNSubfields'.

Ссылки

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

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

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

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

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

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

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

Введенный в R2015b