wlanHERecoveryConfig

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

Описание

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

Создание

Описание

пример

cfg = wlanHERecoveryConfig создает объект строения восстановления HE, cfg, для HE SU, HE ER SU и MU форматов пакетов HE. Область выхода 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

HE-SIG-B индикатор модуляции с двумя несущими (DCM), заданный как -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 long training field (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

Индикатор режима High-Doppler, заданный как -1 для указания неизвестного или неопределенного состояния или как логического значения 1 (true) или 0 (false). Значение 1 (true) указывает режим high-Doppler в поле 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. Для получения дополнительной информации смотрите HE MU Transmission.

Для многопользовательской волны с полной пропускной способностью multi-input/multiple output (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.

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

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

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

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

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

Зависимости

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

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

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

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

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

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

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

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

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

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

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

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

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

Зависимости

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

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

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

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

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

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

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

Зависимости

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

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

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

getSIGBLengthВозврат информации, относящейся к длине поля HE-SIG-B
interpretHESIGABitsОбновите параметры передачи битами поля HE-SIG-A
interpretHESIGBCommonBitsОбновите параметры передачи HE MU с помощью общих бит поля 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

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

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 передачи SU HE.

Сконфигурируйте передачу SU HE путем создания объекта строения с заданной схемой модуляции и кодирования (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++ с помощью Coder™ MATLAB ®

.
Введенный в R2019a