Обновление параметров передачи MU HE общими битами поля HE-SIG-B
обновление параметров высокоэффективной многопользовательской передачи (HE MU) cfgUpdated = interpretHESIGBCommonBits(cfg,bits,status)cfg путем перевода bitsвосстановленные биты общего поля HE-SIG-B и statusрезультат декодирования канала контента. Функция заполняет свойства cfg которые относятся к общему полю HE-SIG-B и возвращают обновленные параметры передачи HE MU cfgUpdated. Если используется этот синтаксис и функция не может интерпретировать восстановленные биты общего поля HE-SIG-B, функция не возвращает выходные данные и выдает сообщение об ошибке.
[ возвращает результат интерпретации общего поля HE-SIG-B. Если используется этот синтаксис и функция не может интерпретировать восстановленные биты общего поля HE-SIG-B, функция возвращает cfgUpdated,failInterpretation] = interpretHESIGBCommonBits(cfg,bits,status)failInterpretation вывод в виде 1 и cfgUpdated как cfg без обновления значений свойств.
Обновление объекта конфигурации восстановления WLAN HE путем интерпретации восстановленных информационных битов HE-SIG-A и HE-SIG-B.
Генерация формы сигнала MU HE
Создайте объект конфигурации MU WLAN HE, установив для индекса распределения значение 0.
cfgHEMU = wlanHEMUConfig(0);
Создайте форму сигнала WLAN и индексы полей PPDU для указанной конфигурации.
waveform = wlanWaveformGenerator(1,cfgHEMU); ind = wlanFieldIndices(cfgHEMU);
Восстановление битов L-SIG
Создайте объект конфигурации восстановления WLAN, указав формат пакета MU HE и длину поля L-SIG.
cfg = wlanHERecoveryConfig('PacketFormat','HE-MU','ChannelBandwidth','CBW20');
Декодировать поле L-SIG и получать информацию мультиплексирования с ортогональным частотным разделением каналов (OFDM). Объект конфигурации восстановления требует эту информацию для получения длины L-SIG.
lsig = waveform(ind.LSIG(1):ind.LSIG(2)); lsigDemod = wlanHEDemodulate(lsig,'L-SIG',cfg.ChannelBandwidth); info = wlanHEOFDMInfo('L-SIG',cfg.ChannelBandwidth); lsigDemod = lsigDemod(info.DataIndices,:);
Восстановите биты L-SIG и соответствующую информацию, убедившись, что биты прошли проверку на четность, и обновите объект конфигурации восстановления длиной L-SIG. Для этого примера мы предполагаем бесшумный канал. Для получения более реалистичных результатов можно передать сигнал через модель 802.11ax™ канала с помощью wlanTGaxChannel Система object™ и работает с принятой формой сигнала.
csi = ones(52,1); [lsigBits,failCheck,lsigInfo] = wlanLSIGBitRecover(lsigDemod,0,csi); cfg.LSIGLength = lsigInfo.Length;
Обновить объект конфигурации восстановления с помощью битов HE-SIG-A
Декодируйте поле HE-SIG-A и восстановите биты HE-SIG-A, гарантируя, что биты пройдут проверку циклическим избыточным кодом (CRC).
siga = waveform(ind.HESIGA(1):ind.HESIGA(2));
sigaDemod = wlanHEDemodulate(siga,'HE-SIG-A',cfg.ChannelBandwidth);
sigaDemod = sigaDemod(info.DataIndices,:);
[sigaBits,failCRC] = wlanHESIGABitRecover(sigaDemod,0,csi);
disp(failCRC)0
Обновите объект конфигурации восстановления с помощью восстановленных битов HE-SIG-A. Отображение обновленного объекта. Значение свойства -1 или 'Unknown' указывает неизвестное или неопределенное свойство, которое может быть обновлено после декодирования общих и пользовательских полей HE-SIG-B пакета HE MU.
[cfg,failInterpretation] = interpretHESIGABits(cfg,sigaBits)
cfg =
wlanHERecoveryConfig with properties:
PacketFormat: 'HE-MU'
ChannelBandwidth: 'CBW20'
LSIGLength: 878
SIGBCompression: 0
SIGBMCS: 0
SIGBDCM: 0
NumSIGBSymbolsSignaled: 10
STBC: 0
LDPCExtraSymbol: 1
PreFECPaddingFactor: 1
PEDisambiguity: 0
GuardInterval: 3.2000
HELTFType: 4
NumHELTFSymbols: 1
UplinkIndication: 0
BSSColor: 0
SpatialReuse: 0
TXOPDuration: 127
HighDoppler: 0
AllocationIndex: -1
NumUsersPerContentChannel: -1
RUTotalSpaceTimeStreams: -1
RUSize: -1
RUIndex: -1
STAID: -1
MCS: -1
DCM: -1
ChannelCoding: 'Unknown'
Beamforming: -1
NumSpaceTimeStreams: -1
SpaceTimeStreamStartingIndex: -1
failInterpretation = logical
0
Обновить объект конфигурации восстановления с помощью общих битов поля HE-SIG-B
Декодируйте общее поле HE-SIG-B, гарантируя, что все каналы контента проходят CRC.
len = getSIGBLength(cfg);
sigbCommon = waveform(ind.HESIGA(2)+(1:len.NumSIGBCommonFieldSamples),:);
sigbCommonDemod = wlanHEDemodulate(sigbCommon,'HE-SIG-B',cfgHEMU.ChannelBandwidth);
sigbCommonDemod = sigbCommonDemod(info.DataIndices);
[sigbCommonBits,status,~] = wlanHESIGBCommonBitRecover(sigbCommonDemod,0,csi,cfg);
disp(status)Success
Обновите объект конфигурации восстановления с помощью восстановленных общих битов поля HE-SIG-B и просмотрите обновленный объект. Поле, возвращенное как -1 или 'Unknown' указывает неизвестное или неопределенное значение свойства, которое может быть обновлено после декодирования пользовательского поля HE-SIG-B пакета HE MU.
[cfg,failInterpretation] = interpretHESIGBCommonBits(cfg,sigbCommonBits,status)
cfg =
wlanHERecoveryConfig with properties:
PacketFormat: 'HE-MU'
ChannelBandwidth: 'CBW20'
LSIGLength: 878
SIGBCompression: 0
SIGBMCS: 0
SIGBDCM: 0
NumSIGBSymbolsSignaled: 10
STBC: 0
LDPCExtraSymbol: 1
PreFECPaddingFactor: 1
PEDisambiguity: 0
GuardInterval: 3.2000
HELTFType: 4
NumHELTFSymbols: 1
UplinkIndication: 0
BSSColor: 0
SpatialReuse: 0
TXOPDuration: 127
HighDoppler: 0
AllocationIndex: 0
NumUsersPerContentChannel: 9
RUTotalSpaceTimeStreams: -1
RUSize: -1
RUIndex: -1
STAID: -1
MCS: -1
DCM: -1
ChannelCoding: 'Unknown'
Beamforming: -1
NumSpaceTimeStreams: -1
SpaceTimeStreamStartingIndex: -1
failInterpretation = logical
0
Обновить объект конфигурации восстановления с помощью битов пользовательского поля HE-SIG-B
Декодируйте пользовательское поле HE-SIG-B, гарантируя, что все пользователи передают CRC.
sigbUser = waveform(ind.HESIGB(1):ind.HESIGB(2));
sigbUserDemod = wlanHEDemodulate(sigbUser,'HE-SIG-B',cfgHEMU.ChannelBandwidth);
sigbUserDemod = sigbUserDemod(info.DataIndices,:);
[sigbUserBits,failCRC,~] = wlanHESIGBUserBitRecover(sigbUserDemod,0,csi,cfg);
disp(failCRC)0 0 0 0 0 0 0 0 0
Обновите объект конфигурации восстановления с помощью восстановленных битов пользовательского поля HE-SIG-B.
[user,failInterpretation] = interpretHESIGBUserBits(cfg,sigbUserBits,failCRC);
Отображение результатов интерпретации и третьего элемента user выход.
disp(failInterpretation)
0 0 0 0 0 0 0 0 0
disp(user{3}) wlanHERecoveryConfig with properties:
PacketFormat: 'HE-MU'
ChannelBandwidth: 'CBW20'
LSIGLength: 878
SIGBCompression: 0
SIGBMCS: 0
SIGBDCM: 0
NumSIGBSymbolsSignaled: 10
STBC: 0
LDPCExtraSymbol: 1
PreFECPaddingFactor: 1
PEDisambiguity: 0
GuardInterval: 3.2000
HELTFType: 4
NumHELTFSymbols: 1
UplinkIndication: 0
BSSColor: 0
SpatialReuse: 0
TXOPDuration: 127
HighDoppler: 0
AllocationIndex: 0
NumUsersPerContentChannel: 9
RUTotalSpaceTimeStreams: 1
RUSize: 26
RUIndex: 3
STAID: 0
MCS: 0
DCM: 0
ChannelCoding: 'LDPC'
Beamforming: 0
NumSpaceTimeStreams: 1
SpaceTimeStreamStartingIndex: 1
cfg - Параметры передачи MU HE перед интерпретацией битов общего поля HE-SIG-BwlanHERecoveryConfig объектПараметры передачи MU HE перед интерпретацией битов общего поля HE-SIG-B, указанные как wlanHERecoveryConfig объект.
bits - Восстановленные биты общего поля HE-SIG-BВосстановленные биты общего поля HE-SIG-B, определенные как двоично-значная матрица, размер которой зависит от полосы пропускания канала передачи.
| Пропускная способность канала | Размер bits |
|---|---|
| 20 МГц | 18 на 1 |
| 40 МГц | 18 на 2 |
| 80 МГц | 27 на 2 |
| 160 МГц | 43 на 2 |
Типы данных: int8
status - Результат декодирования канала контентаРезультат декодирования канала контента, определенный как одно из этих значений.
'Success' - Все каналы контента прошли проверку циклическим избыточным кодом (CRC).
'ContentChannel1Fail' - Канал 1 контента отказал CRC, и количество символов HE-SIG-B, переданных в поле HE-SIG-A, меньше 16.
'ContentChannel2Fail' - Канал 2 контента отказал CRC, и количество символов HE-SIG-B, переданных в поле HE-SIG-A, меньше 16.
'UnknownNumUsersContentChannel1' - Канал 1 контента отказал CRC, и количество символов HE-SIG-B, переданных в поле HE-SIG-B, равно 16.
'UnknownNumUsersContentChannel2' - Канал 2 контента отказал CRC, и количество символов HE-SIG-B, переданных в поле HE-SIG-B, равно 16.
'AllContentChannelCRCFail' - Во всех каналах контента произошел сбой CRC.
Значение этого входного сигнала зависит от результата контроля циклическим избыточным кодом (CRC) на канал контента и количества символов HE-SIG-B, сигнализируемых в поле HE-SIG-A. для получения дополнительной информации см. wlanHESIGBCommonBitRecover.
Типы данных: char | string
cfgUpdated - Обновлены параметры передачи MU HEwlanHERecoveryConfig объектОбновленные параметры передачи HE MU, возвращенные как wlanHERecoveryConfig объект. Функция обновляет свойства этого объекта в соответствии с восстановленными битами общего поля HE-SIG-B bits. Для получения информации о содержимом поля HE-SIG-B см. [1].
failInterpretation - Результат общей интерпретации поля HE-SIG-B0 | 1Результат общей интерпретации поля HE-SIG-B, возвращенный как логический 0 или 1. Значение 1 указывает, что функция не может интерпретировать восстановленные биты общего поля HE-SIG-B. Значение 0 указывает, что функция успешно интерпретирует биты общего поля HE-SIG-B.
Типы данных: logical
[1] P802.11ax™/D4.1 IEEE. "Часть 11: Спецификации управления доступом к среде беспроводной локальной сети (MAC) и физического уровня (PHY). Поправка 1: Усовершенствования для высокоэффективной WLAN. " Проект стандарта на информационные технологии - телекоммуникации и обмен информацией между системами. Локальные и столичные сети - особые требования.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.