Конфигурирование передачи HE TB
wlanHETBConfig объект является объектом конфигурации для формата пакетов на основе триггера WLAN HE (HE TB).
создает объект конфигурации, который инициализирует параметры для PPDU восходящего канала IEEE ® 802.11™ HE TB или нулевого пакета данных обратной связи HE TB (NDP). Подробное описание форматов WLAN HE см. в [2].cfgHETB = wlanHETBConfig
задает свойства, используя одну или несколько пар имя-значение. Заключите каждое имя свойства в отдельные кавычки. Например, cfgHETB = wlanHETBConfig(Name,Value)wlanHETBConfig('ChannelBandwidth','CBW80') определяет пропускную способность канала 80 МГц.
Во время выполнения вызывающая функция проверяет параметры объекта для свойств, относящихся к работе функции.
Свойства этого раздела применимы ко всем конфигурациям передачи HE TB.
FeedbackNDP - Генерировать обратную связь HE TB NDPfalse или 0 (по умолчанию) | true или 1Создайте NDP обратной связи HE TB, указанное как одно из этих значений.
0 (false) - Создайте PPDU HE TB.
1 (true) - Создание NDP обратной связи HE TB.
NDP обратной связи HE TB содержит информацию отчета обратной связи NDP, описанную в процедуре отчета обратной связи NDP.
Дополнительные сведения о NDP обратной связи HE TB см. в разделе 27.3.17 [2].
Примечание
Создание действительного wlanHETBConfig объект для NDP обратной связи HE TB, используйте getNDPFeedbackConfiguration объектная функция.
Типы данных: logical
ChannelBandwidth - Полоса пропускания канала передачи PPDU'CBW20' (по умолчанию) | 'CBW40' | 'CBW80' | 'CBW160'Полоса пропускания канала передачи PPDU, указанная как одно из этих значений.
'CBW20' - Полоса пропускания канала 20 МГц
'CBW40' - Полоса пропускания канала 40 МГц
'CBW80' - Полоса пропускания канала 80 МГц
'CBW160' - Полоса пропускания канала 160 МГц
Типы данных: char | string
PreHEPowerScalingFactor - Коэффициент масштабирования мощности для полей PPDU до HE1 (по умолчанию) | скаляр в интервале [1/√2, 1]Коэффициент масштабирования мощности полей PPDU до HE, заданный как скаляр в интервале [1/√2, 1].
Типы данных: double
NumTransmitAntennas - Количество передающих антенн1 (по умолчанию) | положительное целое числоЧисло передающих антенн, указанное как положительное целое число.
Типы данных: double
PreHECyclicShifts - значения циклического сдвига дополнительных передающих антенн;-75 (по умолчанию) | целое число в интервале [-200, 0] | вектор строкиЗначения циклического сдвига в наносекундах дополнительных передающих антенн для полей пре-ТО формы сигнала. Первые восемь антенн используют значения циклического сдвига, указанные в таблице 21-10 из [1]. Остальные L антенн используют значения, указанные в этом свойстве, где L = NumTransmitAntennas – 8. Укажите это свойство в качестве одного из следующих значений:
Целое число в интервале [-200, 0] - wlanHETBConfig объект использует это значение циклического сдвига для каждой из L дополнительных антенн.
Вектор строки длиной L - wlanHETBConfig объект использует k-й элемент в качестве значения циклического сдвига для (k + 8) -й передающей антенны.
Примечание
Если задать это свойство как вектор строки длиной N > L, wlanHETBConfig объект использует только первые L-записи. Например, если задать NumTransmitAntennas свойство для 16, wlanHETBConfig объект использует только первые L = 16 - 8 = 8 записей этого свойства.
Чтобы включить это свойство, установите значение NumTransmitAntennas свойство имеет значение, большее, чем 8.
Типы данных: double
NumSpaceTimeStreams - Количество пространственно-временных потоков1 (по умолчанию) | целое число в интервале [1, 8]Количество пространственно-временных потоков в передаче, указанное как целое число в интервале [1, 8].
Типы данных: double
StartingSpaceTimeStream - Начальный индекс пространственно-временного потока1 (по умолчанию) | целое число в интервале [1, 8]Начальный индекс пространственно-временного потока в одномерном виде, заданный как целое число в интервале [1, 8]. В многопользовательской конфигурации с множеством входов и множеством выходов (MU-MIMO) с множеством пользователей на одном и том же RU каждый пользователь должен передавать в отдельном пространственно-временном потоке. В этом случае необходимо задать это свойство и NumSpaceTimeStreams чтобы гарантировать, что каждый пространственно-временной поток передает не более одного пользователя.
Типы данных: double
GuardInterval - Длительность защитного интервала (циклического префикса)3.2 (по умолчанию) | 1.6Продолжительность защитного интервала (циклического префикса) для поля данных в пакете в микросекундах, указанная как 3.2 или 1.6.
Типы данных: double
HELTFType - режим сжатия HE-LTF ППДУ HE4 (по умолчанию) | 2 | 1Режим сжатия HE-LTF PPDU HE, указанный как 4, 2, или 1. Это свойство указывает тип HE-LTF, где значение 4, 2, или 1 соответствует четырем, двум или одному кратному режиму сжатия длительности HE-LTF соответственно. В таблице 27-1 [2] перечислены следующие опции типа HE-LTF:
1 × HE-LTF - длительность 3,2 микросекунды с длительностью защитного интервала 0,8 или 1,6 микросекунды
2 × HE-LTF - длительность 6,4 микросекунды с длительностью защитного интервала 0,8 или 1,6 микросекунды
4 × HE-LTF - длительность 12,8 микросекунды с длительностью защитного интервала 0,8 или 3,2 микросекунды
Для получения дополнительной информации о HE-LTF см. раздел 27.3.10.10 из [2].
Типы данных: double
NumHELTFSymbols - Количество символов HE-LTF в PPDU1 (по умолчанию) | 2 | 4 | 6 | 8Количество символов HE-LTF в PPDU, указанное как 1, 2, 4, 6, или 8.
Если установить TriggerMethod свойство для 'TRS', то необходимо установить для этого свойства значение 1.
Если установить HighDoppler свойство для 1 (true), то необходимо установить для этого свойства значение 1, 2, или 4.
Типы данных: double
BSSColor - идентификатор цвета BSS0 (по умолчанию) | целое число в интервале [0, 63]Идентификатор цвета базового набора служб (BSS), указанный как целое число в интервале [0, 63].
Типы данных: double
SpatialReuse1 - Значение подполя пространственного повторного использования 115 (по умолчанию) | целое число в интервале [0, 15]Значение подполя Spatial Reuse 1 в поле HE-SIG-A, указанное как целое число в интервале [0, 15]. Для получения дополнительной информации см. таблицу 27-20 из [2].
Типы данных: double
SpatialReuse2 - Значение субполя пространственного повторного использования 215 (по умолчанию) | целое число в интервале [0, 15]Значение подполя Spatial Reuse 2 в поле HE-SIG-A, указанное как целое число в интервале [0, 15]. Для получения дополнительной информации см. таблицу 27-20 из [2].
Типы данных: double
SpatialReuse3 - Значение подполя пространственного повторного использования 315 (по умолчанию) | целое число в интервале [0, 15]Значение подполя Spatial Reuse 3 в поле HE-SIG-A, указанное как целое число в интервале [0, 15]. Для получения дополнительной информации см. таблицу 27-20 из [2].
Типы данных: double
SpatialReuse4 - Значение подраздела пространственного повторного использования 415 (по умолчанию) | целое число в интервале [0, 15]Значение подполя Spatial Reuse 4 в поле HE-SIG-A, указанное как целое число в интервале [0, 15]. Для получения дополнительной информации см. таблицу 27-20 из [2].
Типы данных: double
TXOPDuration - Информация о продолжительности резервирования TXOP127 (по умолчанию) | целое число в интервале [0, 127]Информация о длительности для защиты возможностей передачи (TXOP), указанная как целое число в интервале [0, 127]. За исключением первого бита, который определяет гранулярность длины TXOP, каждый бит подполя TXOP в поле HE-SIG-A равен значению этого свойства. Поэтому длительность в микросекундах должна быть преобразована в соответствии с процедурой, изложенной в таблице 27-20 из [2].
Типы данных: double
Свойства в этом разделе применяются только в том случае, если FeedbackNDP свойство - 0 (false). Эти свойства используются для настройки PPDU HE TB в ответ на кадр триггера или кадр, содержащий подполю управления планированием инициированного ответа (TRS).
TriggerMethod - Тип триггерного кадра'TriggerFrame' (по умолчанию) | 'TRS'Тип триггерного кадра, указанный как одно из этих значений.
Примечание
Создание действительного wlanHETBConfig для передачи в ответ на кадр, содержащий подполю TRS Control, используйте getTRSConfiguration объектная функция.
Типы данных: char | string
RUSize - Размер RU242 (по умолчанию) | 26 | 52 | 106 | 484 | 996 | 1992Размер единицы ресурса (RU) указан как 26, 52, 106, 242, 484, 996, или 1992.
Типы данных: double
RUIndex - индекс RU для назначения поднесущих1 (по умолчанию) | целое число в интервале [1, 74]Индекс RU для выделения поднесущих, заданный как целое число в интервале [1, 74]. Индекс RU определяет местоположение RU в канале. Например, передача 80 МГц содержит четыре 242-тоновых RU (по одному для каждого подканала 20 МГц). RU номер 242-1 (размер 242, индекс 1) - самая низкая абсолютная частота в пределах канала 80 МГц. Аналогично, номер RU 242-4 является самой высокой абсолютной частотой.
Типы данных: double
SpatialMapping - Схема пространственного отображения'Direct' (по умолчанию) | 'Hadamard' | 'Fourier' | 'Custom'Схема пространственного отображения, указанная как 'Direct', 'Hadamard', 'Fourier', или 'Custom'.
Значение по умолчанию, 'Direct', применяется только при установке NumTransmitAntennas и NumSpaceTimeStreams к тому же значению.
Типы данных: char | string
SpatialMappingMatrix - Матрица пространственного отображения1 (по умолчанию) | скаляр с комплексным значением | матрица с комплексным значением | массив 3-D с комплексным значениемМатрица пространственного отображения, заданная как одно из этих значений.
Скаляр с комплексными значениями - это значение применяется ко всем поднесущим.
Комплексная матрица размера NSTS-by-NT-NSTS - это количество пространственно-временных потоков, а NT - количество передающих антенн. В этом случае матрица пространственного отображения применяется ко всем поднесущим.
Комплекснозначный массив 3-D размера NST-by-NSTS-by-NT-NST - это число занятых поднесущих. ChannelBandwidth определяет значение NST. В этом случае каждая занятая поднесущая имеет свою собственную матрицу пространственного отображения.
В этой таблице показано значение ChannelBandwidth свойство и соответствующее значение NST.
Значение ChannelBandwidth | Значение NST |
|---|---|
'CBW20' | 242 |
'CBW40' | 484 |
'CBW80' | 996 |
'CBW160' | 1992 |
Это свойство используется для поворота и масштабирования выходного вектора отображения созвездий. Матрица пространственного отображения используется для формирования луча и смешивания пространственно-временных потоков по передающим антеннам. Вызывающая функция нормализует матрицу пространственного отображения для каждой поднесущей.
Пример: [0.5 0.3; 0.4 0.4; 0.5 0.8] представляет собой матрицу пространственного отображения с тремя пространственно-временными потоками и двумя передающими антеннами.
Чтобы включить это свойство, установите значение SpatialMapping свойство для 'Custom'.
Типы данных: double
Поддержка комплексного номера: Да
STBC - Включить STBCfalse или 0 (по умолчанию) | true или 1Включение пространственно-временного блочного кодирования (STBC) поля HE-Data, указанного как 1 (true) или 0 (false). STBC передает множество копий потока данных через назначенные антенны.
При установке для этого свойства значения 0 (false), STBC не применяется к полю HE-Data. Количество пространственно-временных потоков равно числу пространственных потоков.
При установке для этого свойства значения 1 (true), STBC применяется к полю HE-Data. Количество пространственно-временных потоков вдвое превышает число пространственных потоков.
Чтобы включить это свойство, установите значение NumSpaceTimeStreams свойство для 2 и DCM свойство для 0 (false).
Типы данных: logical
MCS - Схема модуляции и кодирования0 (по умолчанию) | целое число в интервале [0, 11]Схема модуляции и кодирования (MCS), используемая при передаче текущего пакета, заданная как целое число в интервале [0, 11]. Эта таблица показывает тип модуляции и скорость кодирования для каждого действительного значения этого свойства.
Значение MCS | Тип модуляции | Модуляция с двумя несущими | Скорость кодирования |
|---|---|---|---|
| 0 | Двоичная фазовая манипуляция (BPSK) |
| 1/2 |
| 1 | Квадратурная фазовая манипуляция (QPSK) | 1/2 | |
| 2 | Неприменимо | 3/4 | |
| 3 | 16-точечная квадратурная амплитудная модуляция (16-QAM) |
| 1/2 |
| 4 | 3/4 | ||
| 5 | 64-QAM | Неприменимо | 2/3 |
| 6 | 3/4 | ||
| 7 | 5/6 | ||
| 8 | 256-QAM | 3/4 | |
| 9 | 5/6 | ||
| 10 | 1024-QAM | 3/4 | |
| 11 | 5/6 |
Типы данных: double
DCM - индикатор DCMfalse или 0 (по умолчанию) | true или 1Индикатор модуляции с двумя несущими (DCM), указанный как 1 (true) или 0 (false). Чтобы использовать DCM для поля HE-Data, установите для этого свойства значение 1 (true). В противном случае задайте для этого свойства значение 0 (false).
Можно задать для этого свойства значение 1 (true) только при выполнении всех этих условий.
NumSpaceTimeStreams свойство - 1 или 2.
MCS свойство - 0, 1, 3, или 4.
STBC свойство - 0 (false).
Типы данных: logical
ChannelCoding - Тип кодирования FEC'LDPC' (по умолчанию) | 'BCC'Тип кодирования с прямым исправлением ошибок (FEC) для поля HE-Data, указанный как 'LDPC' для кодирования с низкой плотностью проверки на четность (LDPC) или 'BCC' для двоичного сверточного кодирования (BCC).
Можно задать для этого свойства значение 'BCC' только при выполнении всех этих условий.
RUSize свойство - 26, 52, 106, или 242.
NumSpaceTimeStreams свойство - 1, 2, 3, или 4.
MCS свойство не является 10 или 11.
Если установить TriggerMethod свойство для 'TRS', можно установить для этого свойства значение 'LDPC' только при выполнении всех этих условий.
RUSize свойство - 484, 996, или 1992.
PreFECPaddingFactor свойство - 4.
LDPCExtraSymbol свойство - 1 (true).
Типы данных: char | string
PreFECPaddingFactor - Коэффициент заполнения до FEC4 (по умолчанию) | 1 | 2 | 3Коэффициент заполнения перед прямым исправлением ошибок (pre-FEC), указанный как 1, 2, 3, или 4.
Типы данных: double
LDPCExtraSymbol - Индикатор дополнительного сегмента символов OFDM0 (false) (по умолчанию) | 1 (true)Индикатор сегмента символа мультиплексирования с дополнительным ортогональным частотным разделением (OFDM), указанный как 1 (true) или 0 (false). Чтобы указать наличие дополнительного сегмента символа OFDM для кодирования LDPC, установите это свойство в значение 1 (true). В противном случае задайте для этого свойства значение 0 (false).
Чтобы включить это свойство, установите значение ChannelCoding свойство для 'LDPC'.
Типы данных: logical
PEDisambiguity - Значение подполя PEDisambiguity0 (false) (по умолчанию) | 1 (true)Значение подполя PE Disambiguity, указанное как 1 (true) или 0 (false). Для получения дополнительной информации см. раздел 27.3.12 [2].
Типы данных: logical
LSIGLength - Длина поля L-SIG142 (по умолчанию) | целое число в интервале [1, 4093]Длина поля L-SIG в символах OFDM, заданная как целое число в интервале [1, 4093]. Длина L-SIG должна соответствовать mod(LSIGLength,3) = 1, где mod(a,m) возвращает остаток после деления a около m. Дополнительные сведения см. в разделе mod.
Чтобы включить это свойство, установите значение TriggerMethod свойство для 'TriggerFrame'.
Типы данных: double
NumDataSymbols - Количество символов OFDM в поле HE-Data10 (по умолчанию) | положительное целое числоКоличество символов OFDM в поле HE-Data, указанное как положительное целое число.
Чтобы включить это свойство, установите значение TriggerMethod свойство для 'TRS'.
Типы данных: double
DefaultPEDuration - Длительность расширения пакета0 (по умолчанию) | 4 | 8 | 12 | 16Длительность расширения пакета в микросекундах, указанная как 0, 4, 8, 12, или 16. Для получения дополнительной информации о поле расширения пакета см. раздел 27.3.12 [2].
Чтобы включить это свойство, установите значение TriggerMethod свойство для 'TRS'.
Типы данных: double
SingleStreamPilots - индикатор однопоточных пилотов HE-LTFtrue или 1 (по умолчанию) | false или 0Индикатор однопоточных пилотов HE-LTF, указанный как 1 (true) или 0 (false). Чтобы указать, что HE-LTF использует однопоточные пилоты, установите для этого свойства значение 1 (true). В противном случае задайте для этого свойства значение 0 (false).
Типы данных: logical
HighDoppler - Индикатор режима высокой доплеровской частотыfalse или 0 (по умолчанию) | true или 1Индикатор режима высокой доплеровской частоты, указанный как 1 (true) или 0 (false). Для указания высокоопплеровского режима в поле HE-SIG-A установите для этого свойства значение 1 (true). В противном случае задайте для этого свойства значение 0 (false).
Можно задать для этого свойства значение 1 (true) только тогда, когда TriggerMethod свойство - 'TriggerFrame' и NumSpaceTimeStreams свойство - 1, 2, 3, или 4 для любого RU.
Типы данных: logical
MidamblePeriodicity - Средняя периодичность поля HE-Data10 (по умолчанию) | 20Средняя периодичность поля HE-Data в количестве символов OFDM, указанных как 10 или 20.
Чтобы включить это свойство, установите значение HighDoppler свойство для 1 (true).
Типы данных: double
HESIGAReservedBits - Зарезервированные биты в поле HE-SIG-Aones(9,1) (по умолчанию) | девятиэлементное двоичное значениеЗарезервированные биты в поле HE-SIG-A, заданные как девятиэлементный вектор столбца с двоичным значением.
Типы данных: double
PostFECPaddingSource - Источник битов заполнения после FEC'mt19937ar with seed' (по умолчанию) | 'Global stream' | 'User-defined'Источник битов заполнения после FEC, используемый wlanWaveformGenerator функция, указанная как одно из этих значений.
'mt19937ar with seed' - Создание нормально распределенных случайных битов с помощью алгоритма mt19937ar с начальным числом, указанным в PostFECPaddingSeed собственность.
'Global stream' - Создание нормально распределенных случайных битов с использованием текущего глобального потока случайных чисел.
'User-defined' - Использовать биты, указанные в PostFECPaddingBits свойство в качестве битов заполнения после FEC.
Типы данных: char | string
PostFECPaddingSeed - Начальное число битов заполнения после FEC для алгоритма mt19937ar73 (по умолчанию) | неотрицательное целое числоНачальное число битов заполнения после FEC для алгоритма mt19937ar, указанное как неотрицательное целое число.
Чтобы включить это свойство, установите значение PostFECPaddingSource свойство для 'mt19937ar with seed'.
Типы данных: double
PostFECPaddingBits - биты заполнения после FEC0 (по умолчанию) | вектор столбца с двоичным значениемБиты заполнения после FEC, заданные как скалярный или столбчатый вектор с двоичным значением.
Для генерации формы сигнала, wlanWaveformGenerator функция требует n битов, где n зависит от указанной конфигурации. Чтобы вычислить n, используйте getNumPostFECPaddingBits объектная функция с указанным объектом конфигурации в качестве входного аргумента и укажите это свойство как вектор длины n. В качестве альтернативы укажите этот вход как двоично-значный скалярный или столбчатый вектор произвольной длины. Если длина этого свойства меньше n, генератор формы сигнала закольцовывает вектор для создания вектора длины N. Если длина этого свойства больше n, функция использует только первые n записей в качестве битов заполнения после FEC.
Примечание
Для создания кода C/C + + необходимо указать тип данных этого свойства какint8.
Типы данных: single | double | int8
Свойства в этом разделе применяются только в том случае, если FeedbackNDP свойство - 1 (true).
RUToneSetIndex - Индекс набора тональных сигналов RU для NDP обратной связи HE TB1 (по умолчанию) | целое число в интервале [1, 144]Индекс набора тональных сигналов RU для NDP обратной связи HE TB, указанный в качестве одной из этих опций.
Когда ChannelBandwidth свойство - 'CBW20', задайте для этого свойства целое число в интервале [1, 18].
Когда ChannelBandwidth свойство - 'CBW40', задайте для этого свойства целое число в интервале [1, 36].
Когда ChannelBandwidth свойство - 'CBW80', задайте для этого свойства целое число в интервале [1, 72].
Когда ChannelBandwidth свойство - 'CBW160', задайте для этого свойства целое число в интервале [1, 144].
Это свойство определяет наборы тональных сигналов назначения поднесущих в поле обучения высокой эффективности (HE-LTF), в котором STA передает NDP обратной связи HE TB.
Типы данных: double
FeedbackStatus - Состояние обратной связиtrue или 1 (по умолчанию) | false или 0Состояние обратной связи, указанное как 1 (true) или 0 (false). Значение этого свойства указывает значение бита, используемого для модуляции тональных сигналов в каждом наборе тональных сигналов, указанном параметром RUToneSetIndex собственность. Состояние обратной связи и индекс набора тональных сигналов RU определяют отображение поднесущей HE-LTF в соответствии с таблицей 27-30 [2].
Типы данных: logical
getNDPFeedbackConfiguration | Действительная конфигурация NDP PHY для обратной связи HE TB |
getNumPostFECPaddingBits | Вычисление требуемого количества битов заполнения после FEC |
getPSDULength | Расчет длины HE PSDU |
getTRSConfiguration | Допустимая конфигурация PHY HE TB в ответ на инициирующий кадр, содержащий подполе TRS Control |
packetFormat | Возврат формата пакета WLAN |
ruInfo | Вернуть информацию о распределении единиц ресурсов в формате HE |
showAllocation | Показать распределение единиц ресурсов (RU) |
Конфигурирование и генерация сигнала WLAN, содержащего восходящий пакет HE TB.
Создайте объект конфигурации для передачи по восходящей линии связи WLAN HE TB.
cfgHETB = wlanHETBConfig;
Получение длины PSDU в байтах из объекта конфигурации с помощью getPSDULength объектная функция.
psduLength = getPSDULength(cfgHETB);
Создайте PSDU соответствующей длины.
psdu = randi([0 1],8*psduLength,1);
Создайте и постройте график формы сигнала.
waveform = wlanWaveformGenerator(psdu,cfgHETB); figure; plot(abs(waveform)); title('HE TB Waveform'); xlabel('Time (nanoseconds)'); ylabel('Amplitude');

Сконфигурируйте NDP-передачу обратной связи HE TB восходящей линии связи с четырьмя станциями (STA), полосой пропускания канала 20 МГц и отношением сигнал/шум (SNR) 20 дБ.
numSTA = 4;
cbw = 'CBW20';
snr = 20;
cfgSTA = cell(1,numSTA);Укажите индекс набора тональных сигналов блока ресурсов (RU), начальный пространственно-временной поток и состояние обратной связи для всех STA.
ruToneSetIndex = repmat([1 2],1,round(numSTA/2)); startingSTS = repmat([1 2],1,round(numSTA/2)); feedbackStatus = repmat([1 0],1,round(numSTA/2));
Создайте допустимую конфигурацию NDP обратной связи HE TB.
cfg = wlanHETBConfig; cfg = getNDPFeedbackConfiguration(cfg);
Сконфигурируйте канал для передачи без изменений по STA.
tgax = wlanTGaxChannel('ChannelBandwidth',cbw, ... 'TransmissionDirection','Uplink', ... 'SampleRate',wlanSampleRate(cfg)); chanInfo = info(tgax); awgn = comm.AWGNChannel('NoiseMethod','Signal to noise ratio (SNR)', ... 'SignalPower',1/tgax.NumReceiveAntennas);
Настройте STA и создайте сигнал NDP обратной связи HE TB.
rx = 0; for idx = 1:numSTA % Configure STAs cfg.RUToneSetIndex = ruToneSetIndex(idx); cfg.StartingSpaceTimeStream = startingSTS(idx); cfg.FeedbackStatus = feedbackStatus(idx); cfgSTA{idx} = cfg; % Generate transmit waveform waveform = wlanWaveformGenerator([],cfg); % Pass waveform through TGax channel rx = rx + tgax([waveform; zeros(15,size(waveform,2))]); end
Пропускают сигнал через канал AWGN с учетом энергии шума в нулях, чтобы гарантировать, что SNR определяется на активную и комплементарную поднесущую.
field = 'HE-LTF';
ofdmInfo = wlanHEOFDMInfo(field,cbw,cfg.GuardInterval);
awgn.SNR = snr - 10*log10(ofdmInfo.FFTLength/12);
rx = awgn(rx);Получите индексы полей и извлеките HE-LTF.
ind = wlanFieldIndices(cfgSTA{1});
offset = chanInfo.ChannelFilterDelay;
heltf = rx(offset+(ind.HELTF(1):ind.HELTF(2)),:);Демодулируйте HE-LTF.
rxSym = wlanHEDemodulate(heltf,field,cbw,cfg.GuardInterval,cfg.HELTFType);
Восстановление состояния обратной связи для STA.
status = zeros(1,numSTA); for n = 1:numSTA status(n) = wlanHETBNDPFeedbackStatus(rxSym,cfgSTA{n}); end
Сравните переданное и полученное состояние обратной связи для STA.
disp(isequal(feedbackStatus(1:numSTA),status))
1
Конфигурирование и генерация сигнала WLAN HE TB, передаваемого в ответ на кадр, содержащий подполе управления TRS.
Создайте объект конфигурации HE TB, указав тип триггерного кадра.
cfgHETB = wlanHETBConfig('TriggerMethod','TRS');
Создайте допустимую конфигурацию с помощью getTRSConfiguration объектная функция, отображающая результат.
cfgTRS = getTRSConfiguration(cfgHETB)
cfgTRS =
wlanHETBConfig with properties:
FeedbackNDP: 0
TriggerMethod: 'TRS'
ChannelBandwidth: 'CBW20'
RUSize: 242
RUIndex: 1
PreHEPowerScalingFactor: 1
NumTransmitAntennas: 1
NumSpaceTimeStreams: 1
StartingSpaceTimeStream: 1
SpatialMapping: 'Direct'
STBC: 0
MCS: 0
DCM: 0
ChannelCoding: 'BCC'
PreFECPaddingFactor: 4
NumDataSymbols: 10
DefaultPEDuration: 0
GuardInterval: 3.2000
HELTFType: 4
NumHELTFSymbols: 1
SingleStreamPilots: 1
BSSColor: 0
SpatialReuse1: 15
SpatialReuse2: 15
SpatialReuse3: 15
SpatialReuse4: 15
TXOPDuration: 127
HighDoppler: 0
HESIGAReservedBits: [9x1 double]
PostFECPaddingSource: 'mt19937ar with seed'
PostFECPaddingSeed: 73
Получите длину PSDU в байтах и создайте PSDU для передачи.
psduLength = getPSDULength(cfgTRS); psdu = randi([0 1],8*psduLength,1);
Создайте и постройте график формы сигнала.
waveform = wlanWaveformGenerator(psdu,cfgTRS); figure; plot(abs(waveform)); title('HE TB Waveform'); xlabel('Time (nanoseconds)'); ylabel('Amplitude');

Блок данных протокола физического уровня (PHY) (PPDU) является кадром полной процедуры сходимости физического уровня (PLCP), включая заголовки PLCP, заголовки MAC, поле данных MAC и трейлеры MAC и PLCP.
Для выделения ресурсов станции (STA) для передачи PPDU HE TB точка доступа (AP) HE требует одновременной информации запроса ресурсов (состояния обратной связи) от множества STA восходящей линии связи. Точка доступа получает эту информацию с помощью процедуры отчета обратной связи NDP HE TB, указанной в разделе 26.5.7 из [2]. Эта процедура повышает мощность и эффективность системы 802.11ax™ сети IEEE.
Точка доступа запрашивает ответ отчета обратной связи NDP от STA, посылая кадр триггера опроса отчета обратной связи NDP (NFRP). Триггерный кадр NFRP содержит информацию планирования для STA. Каждый STA передает ответ только в том случае, если он удовлетворяет всем этим условиям.
STA связан с идентификаторами базового набора услуг (BSSID), указываемыми подполем адреса передатчика (TA) кадра триггера NFRP.
AIDstart ≤ AIDSTA ≤ AIDstart + NSTA, где AIDSTA - идентификатор ассоциации СТАНЦИИ (ПОМОЩЬ), AIDstart, является ценностью стартового подполя ПОМОЩИ рамы спускового механизма NFRP, и NSTA - общее количество неAP, STAs наметил отвечать на раму спускового механизма NFRP.
STA, которые передают ответ, используют информацию, содержащуюся в кадре триггера NFRP, для получения этих параметров для ответа NDP обратной связи HE TB.
Индекс набора тональных сигналов RU (соответствует RUToneSetIndex свойство этого объекта), определяющее малые наборы тональных сигналов распределения в HE-LTF
Номер начального пространственно-временного потока, который определяет ортогональное распределение наборов тональных сигналов для мультиплексирования состояния обратной связи различных STA
Все участвующие STA отвечают в течение короткого интервала межкадрового пространства (SIFS) после приема кадра триггера NFRP.
[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. " Проект стандарта на информационные технологии - телекоммуникации и обмен информацией между системами. Локальные и столичные сети - особые требования.
Необходимо указать тип данных postFECPaddingBits свойство как int8.
wlanDMGConfig | wlanHEMUConfig | wlanHERecoveryConfig | wlanHTConfig | wlanNonHTConfig | wlanS1GConfig | wlanVHTConfigИмеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.