exponenta event banner

wlanHERecoveryConfig

Параметры хранилища, восстановленные после передачи HE

Описание

wlanHERecoveryConfig является высокоэффективным (HE) объектом конфигурации восстановления для однопользовательских (HE SU), однопользовательских (HE ER SU) и многопользовательских (HE MU) форматов пакетов.

Создание

Описание

пример

cfg = wlanHERecoveryConfig создает объект конфигурации восстановления HE, cfgдля форматов пакетов HE SU, HE ER SU и HE MU. Продукция cfg содержит параметры, восстановленные после декодирования полей сигнализации передач HE SU, HE ER SU и HE MU, как определено в [2].

При создании свойства wlanHERecoveryConfig для объекта задано значение: -1 или 'Unknown' для указания неизвестного или неопределенного значения или состояния. Можно установить и обновить свойства этого объекта, указав значения в качестве декодированных полей сигнализации, как показано в процедуре восстановления для пакета 802.11ax. Для обновления свойств, относящихся к полю HE-SIG-A, используйте interpretHESIGABits объектная функция. Для обновления свойств, относящихся к полю HE-SIG-B, используйте interpretHESIGBCommonBits и interpretHESIGBUserBits функции объекта.

пример

cfg = wlanHERecoveryConfig(Name,Value) задает свойства, используя одну или несколько пар имя-значение. Заключите каждое имя свойства в кавычки. Например, wlanHERecoveryConfig('PacketFormat','HE-SU','GuardInterval',1.6) создает объект конфигурации восстановления HE для пакета HE SU с интервалом защиты 1,6 микросекунды.

Свойства

развернуть все

Восстановленный формат пакета HE, указанный как 'Unknown', 'HE-SU', 'HE-EXT-SU', или 'HE-MU'.

Информация о длине в поле L-SIG и четыре символа мультиплексирования с ортогональным частотным разделением каналов (OFDM), следующие за полем RL-SIG, определяют формат пакета. Дополнительные сведения см. в разделе Процедура восстановления пакета 802.11ax.

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

Полоса пропускания канала передачи PPDU, заданная как одно из следующих значений:

  • 'Unknown' - Неизвестная или неопределенная полоса пропускания канала

  • 'CBW20' - Полоса пропускания канала 20 МГц

  • 'CBW40' - Полоса пропускания канала 40 МГц

  • 'CBW80' - Полоса пропускания канала 80 МГц

  • 'CBW160' - Полоса пропускания канала 160 МГц

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

Длина поля L-SIG, указанная как -1 для указания неизвестной или неопределенной длины пакета или целого числа в интервале [1, 4095]. Это свойство можно установить после декодирования поля L-SIG с помощью wlanLSIGBitRecover функция.

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

Режим прокалывания преамбулы, указанный как одно из следующих значений:

  • 'Unknown' - Неизвестное или неопределенное прокалывание преамбулы в восстановленном сигнале

  • 'None' - Отсутствие прокалывания преамбулы в восстановленном сигнале

  • 'Mode-1' - Прокалывание преамбулы во вторичном подканале 20-MHz. Это значение применяется только в том случае, если ChannelBandwidth свойство - 'CBW80'.

  • 'Mode-2' - прокалывание преамбулы в одном из 20-MHz подканалов вторичного 40 МГц. Это значение применяется только в том случае, если ChannelBandwidth свойство - 'CBW80'.

  • 'Mode-3' - Прокалывание преамбулы во вторичном подканале 20-MHz. Это значение применяется только в том случае, если ChannelBandwidth свойство - 'CBW160'.

  • 'Mode-4' - Прокалывание преамбулы в первичном подканале 40-MHz. Это значение применяется только в том случае, если ChannelBandwidth свойство - 'CBW160'.

Определение PreamblePuncturing указывает проколотый 20-MHz или 40-MHz подканал в преамбуле. Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-MU'.

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

Индикатор сжатия HE-SIG-B, указанный как -1 для указания неизвестного или неопределенного состояния или в качестве логического значения 1 (true) или 0 (false). Значение 1 (true) указывает на сжатие поля HE-SIG-B. Значение 0 (false) указывает, что поле HE-SIG-B не сжато

Это свойство можно задать с помощью interpretHESIGABits функции объекта после декодирования поля HE-SIG-A.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-MU' и ChannelBandwidth свойство - 'CBW20'.

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

Схема модуляции и кодирования (MCS) поля HE-SIG-B, заданная как целое число в интервале [-1, 5]. Значение -1 указывает неизвестный или неопределенный MCS.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-MU'.

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

Индикатор модуляции с двумя несущими (DCM) HE-SIG-B, указанный как -1 для указания неизвестного или неопределенного статуса или в качестве логического значения 1 (true) или 0 (false). Значение 1 (true) указывает, что поле HE-SIG-B модулировано с помощью DCM. Значение 0 (false) указывает, что поле HE-SIG-B не модулировано с помощью DCM.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-MU' и когда SIGBMCS свойство - 0, 1, 3, или 4.

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

Количество символов HE-SIG-B, сигнализируемых в поле HE-SIG-A, указанное как -1 для указания неизвестного или неопределенного числа символов или целого числа в интервале [1, 16]. Значение 16 указывает на наличие 16 или более символов HE-SIG-B.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-MU' и когда SIGBCompression свойство - 0 (false).

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

Индикатор пространственно-временного блочного кодирования (STBC), указанный как -1 для указания неизвестного или неопределенного статуса или в качестве логического значения 1 (true) или 0 (false). Значение 1 (true) указывает, что STBC активизирован при передаче поля данных PPDU. Значение 0 (false) указывает, что STBC не включен.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

Зависимости

Это свойство может быть только 1 (true), когда NumSpaceTimeStreams является 2 и когда DCM является 0.

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

Индикатор сегмента символа мультиплексирования с дополнительным ортогональным частотным разделением (OFDM), указанный как -1 для указания неизвестного или неопределенного статуса или в качестве логического значения 1 (true) или 0 (false). Значение 1 (true) указывает наличие дополнительного сегмента символа OFDM для кодирования с низкой плотностью проверки на четность (LDPC). Значение 0 (false) указывает на отсутствие дополнительного символа OFDM.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Коэффициент заполнения перед прямым исправлением ошибок (pre-FEC), указанный как -1 для указания неизвестного или неопределенного коэффициента заполнения или в виде положительного целого числа в интервале [1, 4].

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Индикатор несоответствия расширения пакета (PE), указанный как -1 для указания неизвестного или неопределенного статуса определения PE или в качестве логического значения 1 (true) или 0 (false). Для получения дополнительной информации см. раздел 27.3.12 [2].

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Продолжительность защитного интервала (циклического префикса) для поля данных в пакете в микросекундах, указанная как -1 для указания неизвестной или неопределенной длины защитного интервала или 0.8, 1.6, или 3.2.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Тип сжатия восстановленного пакета в длинном учебном поле HE (HE-LTF), указанный как одно из следующих значений:

  • -1 - Неизвестный или неопределенный режим сжатия HE-LTF

  • 1 - Сжатие длительности HE-LTF

  • 2 - Сжатие вдвое больше длительности HE-LTF

  • 4 - Сжатие в четыре раза больше длительности HE-LTF

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Количество символов HE-LTF, указанных как -1 или целое число в интервале [1, 8]. Значение -1 указывает неизвестное или неопределенное количество символов HE-LTF.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Индикатор передачи по восходящей линии связи, указанный как -1 для указания неизвестного или неопределенного направления передачи или как логического значения 1 (true) или 0 (false). Значение 1 (true) указывает, что PPDU посылается при передаче по восходящей линии связи. Значение 0 (false) указывает, что PPDU посылается при передаче по нисходящей линии связи.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Идентификатор цвета базового набора служб (BSS), указанный как целое число в интервале [-1, 63]. Значение -1 указывает неизвестный или неопределенный цвет. Для получения дополнительной информации см. раздел 26.11.4 [2].

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Индикатор пространственного повторного использования, заданный как целое число в интервале [-1, 15]. Значение -1 указывает неизвестное или неопределенное состояние.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Продолжительность защиты возможностей передачи (TXOP), заданная как целое число в интервале [-1, 127]. Значение -1 указывает неизвестную или неопределенную длительность.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Индикатор режима высокой доплеровской частоты, указанный как -1 для указания неизвестного или неопределенного статуса или в качестве логического значения 1 (true) или 0 (false). Значение 1 (true) указывает режим высокой доплеровской частоты в поле HE-SIG-A.

Это свойство можно задать с помощью interpretHESIGABits после декодирования поля HE-SIG-A.

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

Средняя периодичность поля HE-Data в символах OFDM, указанных как -1 для указания неизвестной или неопределенной периодичности или 10 или 20.

Это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

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

Индексы распределения единиц ресурсов (RU) для каждого 20-MHz подканала, заданные как целое число или вектор целых чисел в интервале [-1, 223]. Значение -1 указывает неизвестный или неопределенный индекс распределения. Восстановленные биты определяют, сколько индексов распределения установлено, что определяет формат этого свойства.

Индексы распределения определяют распределение полосы пропускания путем указания количества RU, размера каждого RU и количества пользователей, назначенных каждому RU. Для получения дополнительной информации см. раздел Передача MU HE.

Для многопользовательской формы сигнала MU-MIMO можно задать это свойство с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A. Для формы сигнала OFDM можно установить это свойство после декодирования поля HE-SIG-B.

Зависимости

Это свойство применяется только в том случае, если PacketFormat является 'HE-MU'.

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

Индикация сигнализации нижнего центра 26-тонового RU, указанного как -1 для указания неизвестного состояния или в качестве логического значения 1 (true) или 0 (false). Значение 1 (true) указывает на наличие низкочастотного центра 26-тонального RU.

Это свойство можно установить после декодирования поля HE-SIG-B.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-MU', ChannelBandwidth свойство - 'CBW80' или 'CBW160', и выделение полной полосы пропускания не используется.

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

Включить сигнализацию 26-тонового RU верхнего центра, указанная как -1 для указания неизвестного состояния или в качестве логического значения 1 (true) или 0 (false). Значение 1 (true) указывает на наличие 26-тонального RU верхнего частотного центра.

Это свойство можно установить после декодирования поля HE-SIG-B.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-MU', ChannelBandwidth свойство - 'CBW160', и выделение полной полосы пропускания не используется.

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

Количество пользователей на канал контента SIGB, указанное как -1 или положительное целое число. Значение -1 указывает неизвестное или неопределенное число пользователей.

Это свойство применимо для назначения MU-MIMO и OFDMA с полной полосой пропускания. Для формы сигнала MU-MIMO с полной полосой пропускания распределение пользователей по каналу контента SIGB определено в разделе 27.3.10.8 из [2]. Для формы сигнала OFDMA декодированное общее поле HE-SIG-B определяет распределение пользователей.

Для формы сигнала MU-MIMO с полной полосой пропускания это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A. Для формы сигнала OFDMA это свойство можно задать после декодирования поля HE-SIG-B.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-MU'.

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

Общее количество пространственно-временных потоков в интересующем RU, указанное как -1 или в виде целого числа в интервале [1, 8]. Значение -1 указывает неизвестное или неопределенное количество пространственно-временных потоков.

Это свойство можно установить после декодирования поля HE-SIG-B.

Зависимости

Это свойство применяется только в том случае, если PacketFormat является 'HE-MU'.

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

Размер RU для интересующего пользователя, указанный как -1, 26, 52, 106, 242, 484, 996, или 1992. Значение -1 указывает неизвестный или неопределенный размер RU.

Для пакета SU HE или HE ER SU это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A. Для пакета MU HE это свойство можно установить после декодирования поля HE-SIG-B.

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

Индекс RU для интересующего пользователя, указанный как -1 или положительное целое число. Значение -1 указывает неизвестный или неопределенный индекс RU. Индекс RU определяет местоположение RU в канале. Например, передача 80 МГц содержит четыре 242-тоновых RU (по одному для каждого подканала 20 МГц). RU номер 242-1 (размер 242, индекс 1) - самая низкая абсолютная частота в пределах канала 80 МГц. RU номер 242-4 - самая высокая абсолютная частота.

Для пакета SU HE или HE ER SU это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A. Для пакета MU HE это свойство можно установить после декодирования поля HE-SIG-B.

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

Идентификационный номер станции (STA), указанный как целое число в интервале [-1, 2047]. Значение -1 указывает неизвестный или неопределенный идентификационный номер STA.

Идентификационный номер STA определен в разделе 26.11.1 [2]. 11 младших битов (LSB) поля идентификатора ассоциации (AID) используются для адресации STA. Связанный RU не несет данных, когда STAID является 2046.

Это свойство можно установить после декодирования поля HE-SIG-B.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-MU'.

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

Пользовательская MCS, заданная как целое число в интервале [-1, 11]. Значение -1 указывает неизвестный или неопределенный MCS. Эта таблица показывает тип модуляции и скорость кодирования для каждого действительного значения MCS:

MCSМодуляцияСкорость кодирования
0Двоичная фазовая манипуляция (BPSK)1/2
1Квадратурная фазовая манипуляция (QPSK)1/2
23/4
316-точечная квадратурная амплитудная модуляция (16-QAM)1/2
43/4
564-QAM2/3
63/4
75/6
8256-QAM3/4
95/6
101024-QAM3/4
115/6

Это свойство можно установить после декодирования поля HE-SIG-B.

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

Индикатор DCM, указанный как -1 для указания неизвестного или неопределенного статуса или в качестве логического значения 1 (true) или 0 (false). Значение 1 (true) указывает, что DCM используется для поля HE-Data. Значение 0 (false) указывает, что DCM не используется.

Для пакета SU HE или HE ER SU это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A. Для пакета MU HE это свойство можно установить после декодирования поля HE-SIG-B.

Зависимости

DCM может использоваться только при выполнении всех этих условий:

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

Тип кодирования с прямым исправлением ошибок (FEC) для поля HE-Data, указанный как одно из следующих значений:

  • 'Unknown' - Неизвестный или неопределенный тип кодирования канала

  • 'BCC' - Двоичное сверточное кодирование (BCC)

  • 'LDPC'- кодирование LDPC

Для пакета SU HE или HE ER SU это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A. Для пакета MU HE это свойство можно установить после декодирования поля HE-SIG-B.

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

Индикатор матрицы рулевого управления для формирования луча, указанный как -1 для указания неизвестного или неопределенного статуса или в качестве логического значения 1 (true) или 0 (false). Значение 1 (true) указывает, что матрица управления формированием луча применяется к принятой форме сигнала.

Для формы сигнала HE SU это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A. Для формы сигнала MU HE это свойство можно задать после декодирования поля HE-SIG-B.

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

Пространственное отображение участка pre-HE-short-training-field (pre-HE-STF) блока PPDU, указанного как -1 для указания неизвестного или неопределенного статуса или в качестве логического значения 1 (true) или 0 (false). Значение 1 (true) указывает, что часть pre-HE-STF блока PPDU пространственно отображается так же, как первый символ HE-LTF на каждом тональном сигнале.

Для формы сигнала MU-MIMO с полной полосой пропускания это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-SU'.

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

Количество пространственно-временных потоков для интересующего пользователя, указанное как -1 или в виде целого числа в интервале [1, 8]. Значение -1 указывает неизвестное или неопределенное количество пространственно-временных потоков.

Для пакета SU HE или HE ER SU это свойство можно задать с помощью interpretHESIGABits функция объекта после декодирования поля HE-SIG-A. Для пакета MU HE это свойство можно установить после декодирования поля HE-SIG-B.

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

Начальный индекс пространственно-временного потока, заданный как целое число. Значение -1 указывает неизвестный или неопределенный индекс.

Когда несколько пользователей передают в одном и том же RU в конфигурации MU-MIMO, каждый пользователь должен передавать в различных пространственно-временных потоках. NumSpaceTimeStreams и SpaceTimeStreamStartIndex свойства определяют начальный пространственно-временной поток для каждого пользователя. Это свойство можно установить после декодирования поля HE-SIG-B.

Зависимости

Это свойство применяется только в том случае, если PacketFormat свойство - 'HE-MU'

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

Функции объекта

getSIGBLengthВозврат информации, относящейся к длине поля HE-SIG-B
interpretHESIGABitsОбновление параметров передачи битами поля HE-SIG-A
interpretHESIGBCommonBitsОбновление параметров передачи MU HE общими битами поля HE-SIG-B
interpretHESIGBUserBitsОбновление параметров передачи HE MU с помощью битов пользовательского поля HE-SIG-B

Примеры

свернуть все

Создайте объект конфигурации восстановления со значениями свойств по умолчанию.

cfg = wlanHERecoveryConfig;

Перезаписать настройки по умолчанию, указав полосу пропускания канала, формат пакета и длину L-SIG восстановленного сигнала. Отображение результирующего объекта.

cfg.ChannelBandwidth = 'CBW40';
cfg.PacketFormat = 'HE-SU';
cfg.LSIGLength = 100;
disp(cfg);
  wlanHERecoveryConfig with properties:

           PacketFormat: 'HE-SU'
       ChannelBandwidth: 'CBW40'
             LSIGLength: 100
                   STBC: -1
        LDPCExtraSymbol: -1
    PreFECPaddingFactor: -1
         PEDisambiguity: -1
          GuardInterval: -1
              HELTFType: -1
        NumHELTFSymbols: -1
       UplinkIndication: -1
               BSSColor: -1
           SpatialReuse: -1
           TXOPDuration: -1
            HighDoppler: -1
    MidamblePeriodicity: -1
                 RUSize: -1
                RUIndex: -1
                    MCS: -1
                    DCM: -1
          ChannelCoding: 'Unknown'
            Beamforming: -1
    PreHESpatialMapping: -1
    NumSpaceTimeStreams: -1

Создайте объект конфигурации восстановления HE для указанного формата пакета, полосы пропускания канала и длины L-SIG.

cfg = wlanHERecoveryConfig('PacketFormat','HE-MU','ChannelBandwidth','CBW80','LSIGLength',100);

Отображение объекта конфигурации восстановления.

disp(cfg);
  wlanHERecoveryConfig with properties:

                    PacketFormat: 'HE-MU'
                ChannelBandwidth: 'CBW80'
                      LSIGLength: 100
              PreamblePuncturing: 'Unknown'
                 SIGBCompression: -1
                         SIGBMCS: -1
                         SIGBDCM: -1
          NumSIGBSymbolsSignaled: -1
                            STBC: -1
                 LDPCExtraSymbol: -1
             PreFECPaddingFactor: -1
                  PEDisambiguity: -1
                   GuardInterval: -1
                       HELTFType: -1
                 NumHELTFSymbols: -1
                UplinkIndication: -1
                        BSSColor: -1
                    SpatialReuse: -1
                    TXOPDuration: -1
                     HighDoppler: -1
             MidamblePeriodicity: -1
                 AllocationIndex: -1
             LowerCenter26ToneRU: -1
       NumUsersPerContentChannel: -1
         RUTotalSpaceTimeStreams: -1
                          RUSize: -1
                         RUIndex: -1
                           STAID: -1
                             MCS: -1
                             DCM: -1
                   ChannelCoding: 'Unknown'
                     Beamforming: -1
             NumSpaceTimeStreams: -1
    SpaceTimeStreamStartingIndex: -1

Создайте объект конфигурации формата WLAN HE-MU, указав индекс распределения.

cfgHEMU = wlanHEMUConfig(0);

Создайте форму сигнала WLAN для указанной конфигурации и верните индексы полей PPDU.

waveform = wlanWaveformGenerator(1,cfgHEMU);
ind = wlanFieldIndices(cfgHEMU);

Декодирование поля L-SIG и получение информации OFDM. Эта информация необходима для получения длины L-SIG, которая используется в объекте конфигурации восстановления.

lsig = waveform(ind.LSIG(1):ind.LSIG(2),:);
lsigDemod = wlanHEDemodulate(lsig,'L-SIG',cfgHEMU.ChannelBandwidth);
preHEInfo = wlanHEOFDMInfo('L-SIG',cfgHEMU.ChannelBandwidth);

Восстановите биты информации L-SIG и соответствующую информацию, убедившись, что биты прошли проверку на четность. Для этого примера мы предполагаем бесшумный канал. Для получения более реалистичных результатов можно передать сигнал через модель 802.11ax™ канала с помощью wlanTGaxChannel Система object™ и работает с принятой формой сигнала.

csi = ones(52,1);
[lsigBits,failCheck,lsigInfo] = wlanLSIGBitRecover(lsigDemod(preHEInfo.DataIndices,:,:),0,csi);

Декодируйте поле HE-SIG-A и восстановите информационные биты HE-SIG-A, гарантируя, что биты пройдут проверку циклическим избыточным кодом (CRC).

siga = waveform(ind.HESIGA(1):ind.HESIGA(2),:);
sigaDemod = wlanHEDemodulate(siga,'HE-SIG-A',cfgHEMU.ChannelBandwidth);
preHEInfo = wlanHEOFDMInfo('HE-SIG-A',cfgHEMU.ChannelBandwidth);
[bits,failCRC] = wlanHESIGABitRecover(sigaDemod(preHEInfo.DataIndices,:,:),0,csi);

Создайте объект конфигурации восстановления WLAN, указав пакет формата HE-MU и длину поля L-SIG.

cfg = wlanHERecoveryConfig('PacketFormat','HE-MU','LSIGLength',lsigInfo.Length);

Обновите объект конфигурации восстановления с помощью восстановленных битов HE-SIG-A.

cfgUpdated = interpretHESIGABits(cfg,bits);

Вернитесь и просмотрите информацию HE-SIG-B.

info = getSIGBLength(cfgUpdated);
disp(info);
    NumSIGBCommonFieldSamples: 80
               NumSIGBSymbols: 10

Восстановление битов из поля HE-Data передачи HE SU.

Сконфигурируйте передачу HE SU путем создания объекта конфигурации с указанной схемой модуляции и кодирования (MCS). Извлеките полосу пропускания канала.

cfgHESU = wlanHESUConfig('MCS',0);
cbw = cfgHESU.ChannelBandwidth;       % Channel bandwidth of transmission

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

bits = randi([0 1],8*getPSDULength(cfgHESU),1,'int8');
waveform = wlanWaveformGenerator(bits,cfgHESU);

Создайте объект конфигурации восстановления WLAN, указав известную полосу пропускания канала и формат пакета.

cfgRX = wlanHERecoveryConfig('ChannelBandwidth',cbw,'PacketFormat','HE-SU');

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

ind = wlanFieldIndices(cfgRX);
heLSIGandRLSIG = waveform(ind.LSIG(1):ind.RLSIG(2),:);
symLSIG = wlanHEDemodulate(heLSIGandRLSIG,'L-SIG',cbw);
info = wlanHEOFDMInfo('L-SIG',cbw);

Объедините поля L-SIG и RL-SIG для разнесения и получите поднесущие данных.

symLSIG = mean(symLSIG,2);
lsig = symLSIG(info.DataIndices,:);

Декодируйте поле L-SIG, предполагая наличие бесшумного канала, и используйте поле длины для обновления объекта восстановления.

noiseVarEst = 0;
[~,~,lsigInfo] = wlanLSIGBitRecover(lsig,noiseVarEst);
cfgRX.LSIGLength = lsigInfo.Length;

Восстановите и демодулируйте поле HE-SIG-A, получите поднесущие данных и восстановите биты HE-SIG-A.

heSIGA = waveform(ind.HESIGA(1):ind.HESIGA(2),:);
symSIGA = wlanHEDemodulate(heSIGA,'HE-SIG-A',cbw);
siga = symSIGA(info.DataIndices,:);
[sigaBits,failCRC] = wlanHESIGABitRecover(siga,0);

Обновите объект конфигурации восстановления с помощью восстановленных битов HE-SIG-A и получите обновленные индексы полей.

cfgHE = interpretHESIGABits(cfgRX,sigaBits);
ind = wlanFieldIndices(cfgHE);

Извлеките и декодируйте поле HE-Data.

heData = waveform(ind.HEData(1):ind.HEData(2),:);
symData = wlanHEDemodulate(heData,'HE-Data', ... 
    cbw,cfgHE.GuardInterval,[cfgHE.RUSize cfgHE.RUIndex]);
infoData = wlanHEOFDMInfo('HE-Data',cbw,cfgHE.GuardInterval,[cfgHE.RUSize cfgHE.RUIndex]);
rxDataSym = symData(infoData.DataIndices,:,:);
dataBits = wlanHEDataBitRecover(rxDataSym,noiseVarEst,cfgHE);

Убедитесь, что восстановленные биты соответствуют переданным битам.

isequal(bits,dataBits)
ans = logical
   1

Подробнее

развернуть все

Ссылки

[1] IEEE Std 802.11™-2016 (версия IEEE Std 802.11-2012). «Часть 11: Спецификации управления доступом к среде беспроводной локальной сети (MAC) и физического уровня (PHY)». Стандарт IEEE для информационных технологий - телекоммуникации и обмен информацией между системами. Локальные и столичные сети - особые требования.

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

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

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

.
Представлен в R2019a