getNDPFeedbackConfiguration

Действительная обратная связь HE TB NDP PHY строения

Описание

пример

cfgFeedback = getNDPFeedbackConfiguration(cfgHETB) генерирует допустимое строение физического слоя (PHY) для пакета null данных (NDP) на основе высокоэффективных триггеров (HE TB). Функция задает свойства cfgFeedback путем изменения подмножества свойств строения HE TB cfgHETB. Можно параметризовать NDP обратной связи HE TB с помощью cfgFeedback выход. Для получения дополнительной информации о NDP обратной связи HE TB, смотрите раздел 27.3.17 [1].

Примеры

свернуть все

Сконфигурируйте восходящую передачу NDP с обратной связью HE TB с четырьмя станциями (STA), пропускной способностью канала 20 МГц и отношением сигнал/шум (ОСШ) 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, учитывая энергию шума в нулях, чтобы убедиться, что ОСШ задан для каждой активной и комплементарной поднесущей.

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

Входные параметры

свернуть все

Строение HE TB PHY, заданная как wlanHETBConfig объект.

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

свернуть все

Действительная обратная связь HE TB NDP PHY строения, возвращенная как wlanHETBConfig объект. Функция устанавливает значения свойств таким образом, чтобы этот объект мог параметризовать действительный NDP обратной связи HE TB.

Ссылки

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

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

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