exponenta event banner

wlanInterpretScramblerState

Восстановление сигнализации полосы пропускания из начального состояния скремблера

Описание

пример

[bandwidth,dyn] = wlanInterpretScramblerState(scramInit) восстанавливает сигнализацию полосы пропускания из начального состояния скремблера scramInit. Функция возвращает bandwidth, полоса пропускания канала и dyn, индикацию того, является ли работа полосы пропускания динамической или статической.

[bandwidth,dyn] = wlanInterpretScramblerState(scramInit,idx1) определяет idx1, параметр dot11CurrentChannelCenterFrequencyIndex1, как определено в таблице 17-9 из [1].

Примеры

свернуть все

Конфигурирование и генерация сигнала данных без HT с полосой пропускания канала 160 МГц и динамической полосой пропускания.

bandwidth = 'CBW160';
cfg = wlanNonHTConfig('ChannelBandwidth',bandwidth,'PSDULength',1, ...
    'SignalChannelBandwidth',true,'BandwidthOperation','Dynamic');
bits = randi([0 1],8*cfg.PSDULength,1,'int8');
[range,~] = scramblerRange(cfg);
scramInit = randi(range);
y = wlanNonHTData(bits,cfg,scramInit);

Передача сигнала через канал AWGN с SNR 50.

snr = 50;
noiseVarEst = 10^(-snr/10);
rx = awgn(y,snr);

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

field = 'NonHT-Data';
symOffset = 0.5;
sym = wlanNonHTOFDMDemodulate(rx,field,bandwidth,'OFDMSymbolOffset',symOffset);

Извлеките поднесущие данных.

info = wlanNonHTOFDMInfo(field,bandwidth);
sym = sym(info.DataIndices,:);

Восстановите первый подканал PSDU с частотой 20 МГц, улучшив преобразование поднесущих OFDM путем указания информации о состоянии канала. Убедитесь, что принятые и переданные PSDU совпадают.

csi = ones(48,1);
[psdu,scramInit] = wlanNonHTDataBitRecover(sym(1:48,:),noiseVarEst,csi,cfg);
isequal(bits,psdu)
ans = logical
   1

Восстановление и отображение сигнализации полосы пропускания путем интерпретации состояния скремблера.

[bandwidth,dyn] = wlanInterpretScramblerState(scramInit)
bandwidth = 
'CBW160'
dyn = logical
   1

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

свернуть все

Начальное состояние скремблера, указанное как целое число в интервале [1, 127], или соответствующий вектор столбца с двоичным значением длины 7.

Раздел 17.3.5.5 [1] определяет процесс скремблирования и дескремблирования, применяемый к передаваемым данным. Поля заголовка и данных, которые следуют за полем инициализации скремблера (включая биты заполнения данных), скремблируются посредством XORing каждого бита с длиной 127 периодической последовательности, генерируемой многочленом S (x) = x7 + x4 + 1. Октеты PSDU помещаются в битовый поток, и в каждом октете бит 0 (LSB) является первым, а бит 7 (MSB) является последним. На этом рисунке показана генерация последовательности и операция XOR.

Преобразование из целого числа в биты использует левую ориентацию MSB. Для инициализации скремблера с десятичной запятой 1, биты отображаются на показанные элементы.

ЭлементX7X6X5X4X3X2X1
Битовое значение0000001

Чтобы создать битовый поток, эквивалентный десятичному, используйте de2bi функция. Например, для десятичного знака 1:

de2bi(1,7,'left-msb')
ans =

     0     0     0     0     0     0     1

Пример: [1; 0; 1; 1; 1; 0; 1] передает состояние инициализации скремблера 93 как вектор столбца с двоичным значением.

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

Параметр dot11CurrentChannelCenterFrequencyIndex1, определенный в таблице 17-9 из [1], указан как скаляр в интервале [0, 200].

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

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

свернуть все

Восстановленная полоса пропускания канала, возвращенная как одно из этих значений.

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

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

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

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

  • 'CBW80+80' - Полоса пропускания канала 160 МГц, включающая два несмежных канала 80 МГц

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

Индикация динамической или статической работы полосы пропускания, возвращаемой как логическая 1 или 0. Значение 0 указывает статическую операцию с полосой пропускания. Значение 1 указывает на работу с динамической полосой пропускания.

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

Ссылки

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

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

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

.

См. также

Функции

Представлен в R2020b