Абстракция физического слоя для симуляции уровня системы

Этот пример демонстрирует абстракцию физического 802.11ax™ IEEE ® для симуляции уровня системы. Ссылки модель качества и ссылки модель эффективности основанная на методологии оценки TGax, представлены и подтверждены путем сравнения с опубликованными результатами.

Введение

Моделирование обработки полного физического слоя в каждом передатчике и приемнике при симуляции больших сетей является вычислительно дорогим. Абстракция физического слоя или отображение звена с системой - это метод для своевременного выполнения симуляций путем точного предсказания эффективности ссылки вычислительно эффективным способом.

Этот пример демонстрирует абстракцию физического слоя для фрагмента данных пакета 802.11ax [1] на основе методологии оценки TGax [2].

В модели абстракции физического слоя существует две части [3, 4]:

  • Модель качества ссылки вычисляет сигнал после эквалайзера в отношении интерференции и шума (SINR) на поднесущую. Для приемника это основано на характеристиках местоположения и передачи интересующего передатчика и интерферирующих передачах, а также на влиянии крупномасштабного и мелкомасштабного замирания.

  • Модель ссылки эффективности предсказывает мгновенную частоту ошибок пакета (PER), и, следовательно, успешную передачу отдельного пакета, учитывая SINR на поднесущую и параметры кодирования, используемые для передачи.

Пример разделен на две части:

  • Часть A демонстрирует модель качества ссылки, используемую для получения SINR на поднесущую, и подтверждает ее путем сравнения результатов для жилого сценария в соответствии со вставкой 2 тестов в методологии оценки TGax. Цель тестов коробки 2 состоит в том, чтобы согласовать распределение небольших и крупных шкал с замираниями с строениями MIMO участников TGax.

  • Часть B демонстрирует модель эффективности ссылки, используемую для оценки PER, и сравнивает результат использования абстракции с симуляцией уровня канала с затухающей моделью канала TGax согласно тестам коробки 0 в методологии оценки TGax. Цель тестов коробки 0 состоит в том, чтобы согласовать абстракции PHY участников TGax.

Часть A - Ссылка модели качества

Модель качества ссылки реализует прямоугольное уравнение 2 SINR из методологии оценки TGax. SINR на поднесущую (индекс m) и пространственный поток (индекс j) между передатчиком и приемником интереса задается

SINRRXTXm,j=SRXTXm,jIsRXTXm,j+IoRXTXm,j+Nm,j.

SINR учитывает каналы потерь пути и замираний между всеми передатчиками и приемником и предварительное кодирование, применяемое к передатчикам. Степень интересующего сигнала задается как

SRXTXm,j=PRXTXTRXmjHHRXTXmWTXmj2,

где PRXTX - мощность приемника интересующего сигнала,TRX - линейный фильтр приемника, HRXTX- матрица канала между передатчиком и приемниками, представляющими интерес, и WTX - матрица предварительного кодирования, примененная к передатчику.

Степень внутрипользовательской интерференции задается

IsRXTXm,j=PRXTXTRXmjHHRXTXmWTXm2-SRXTXm,j.

Степень межпользовательских помех задается

IoRXTXm,j=kiΩ(k)PRXTX[TRX(m)]jHHRXTXimWTXim2,

где Ω(k) - набор интерферирующих передатчиков в kПервый основной набор услуг (BSS)

Шумовая степень задается как

Nm,j=TRXmj2N0,

где N0 - спектральная плотность степени шума.

Сгенерируйте матрицу канала на поднесущую

Модель качества ссылки требует матрицы канала на поднесущую. Вычислите матрицу канала из коэффициентов усиления пути, возвращенных моделью затухающего канала wlanTGaxChannel при помощи helperPerfectChannelEstimate() вспомогательная функция. Эффективно генерируйте усиления пути путем установки ChannelFiltering свойство wlanTGaxChannel на false.

sprev = rng('default'); % Seed random number generator and store previous state

% Get an HE OFDM configuration: 80 MHz channel bandwidth, 3.2 us guard
% interval
ofdmInfo = wlanHEOFDMInfo('HE-Data','CBW80',3.2);
k = ofdmInfo.ActiveFrequencyIndices;

% Configure channel to return path gains for one OFDM symbol
tgax = wlanTGaxChannel;
tgax.ChannelBandwidth = 'CBW80';
tgax.SampleRate = 80e6; % MHz
tgax.ChannelFiltering = false;
tgax.NumSamples = ofdmInfo.FFTLength+ofdmInfo.CPLength;

% Generate channel matrix per subcarrier for signal of interest
pathGains = tgax();    % Get path gains
chanInfo = info(tgax); % Get channel info for filter coefficients
chanFilter = chanInfo.ChannelFilterCoefficients;
Hsoi = helperPerfectChannelEstimate(pathGains,chanFilter, ...
    ofdmInfo.FFTLength,ofdmInfo.CPLength,ofdmInfo.ActiveFFTIndices);

% Generate channel matrix per subcarrier for interfering signal
reset(tgax); % Get a new channel realization
pathGains = tgax();  
Hint = helperPerfectChannelEstimate(pathGains,chanFilter, ...
    ofdmInfo.FFTLength,ofdmInfo.CPLength,ofdmInfo.ActiveFFTIndices);

Расчет SINR

Вычислите и визуализируйте SINR после эквалайзера на поднесущую с calculateSINR и plotSINR вспомогательные функции.

Psoi = -20; % Signal of interest received power (dBm)
Pint = -45; % Interfering signal received power (dBm)
N0 = -85;   % Noise power (dBm)
W = ones(ofdmInfo.NumTones,1); % Precoding matrix (assume no precoding)

sinr = calculateSINR(Hsoi,db2pow(Psoi-30),W,db2pow(N0-30),{Hint},db2pow(Pint-30),{W});

plotSINR(sinr,Hsoi,Psoi,Hint,Pint,N0,k);

Figure contains 2 axes. Axes 1 with title Per-subcarrier receive power contains 3 objects of type line. These objects represent Signal of interest, Interferer, Noise floor. Axes 2 with title Post-equalizer SINR contains an object of type line.

Блок 2 методологии оценки TGax - Проверьте калибровку SINR

В этом разделе проверяется вычисление SINR путем сравнения функции совокупной плотности (CDF) SINR на поднесущую с результатами калибровки, предоставленными рабочей группой TGax. Мы сравниваем расчет SINR с результатами, опубликованными TGax [5] для вставки 2, тест 3: «нисходящая передача по основному правилу доступа к каналу» для жилого сценария.

Для получения дополнительной информации о сценарии и результатах долгосрочной калибровки SINR смотрите пример 802.11ax PHY-Focused System-Level Simulation.

Основные параметры симуляции определяются как принадлежащие Физическому слою (PHY), слою управления доступом к среде (MAC), сценарию или симуляции. В этом примере параметры PHY и MAC приняты одинаковыми для всех узлов.

sinrCalibration = true; % Disable box 2 calibration
if sinrCalibration

PHYParams = struct;
PHYParams. TxPower = 20;      % Transmitter power in dBm
PHYParams. TxGain = 0;        % Transmitter antenna gain in dBi
PHYParams. RxGain =-2;       % Receiver antenna gain in dBi
PHYParams. NoiseFigure = 7;   % Receiver noise figure in dB
PHYParams. NumTxAntennas = 1; % Number of transmitter antennas
PHYParams. NumSTS = 1;        % Number of space-time streams
PHYParams. NumRxAntennas = 1; % Number of receiver antennas
PHYParams. ChannelBandwidth = 'CBW80'; % Bandwidth of system
PHYParams. TransmitterFrequency = 5e9; % Transmitter frequency in Hz

MACParams = struct;
MACParams. NumChannels = 3; % Number of non-overlapping channels
MACParams. CCALevel =-70;  % Transmission threshold in clear channel assessment algorithm (dBm)

Параметры сценария определяют размер и размещение жилого создания по [6]. Обратите внимание, что только один приемник (STA) может быть активен в любой момент времени.

ScenarioParams = struct;
ScenarioParams.BuildingLayout = [10 2 5]; % Number of rooms in [x,y,z] directions
ScenarioParams.RoomSize = [10 10 3];      % Size of each room in metres [x,y,z]
ScenarioParams.NumRxPerRoom = 1;          % Number of receivers per room.

The NumDrops и NumTxEventsPerDrop параметры управляют длиной симуляции. В этом примере эти параметры сконфигурированы для короткой симуляции. A 'drop' случайным образом помещает передатчики и приемники в сценарий и выбирает канал для BSS. Событие 'transmission' случайным образом выбирает передатчики и приемники для передач согласно основным правилам оценки четкого канала (CCA), определенным в методологии оценки.

SimParams = struct;
SimParams.Test = 3; % Downlink transmission per basic channel access rule
SimParams.NumDrops = 3;
SimParams.NumTxEventsPerDrop = 2;

Функция box2Simulation запускает симуляцию путем выполнения следующих шагов:

  1. Передатчики (AP) и приемники (STA) случайным образом сбрасываются в рамках сценария.

  2. Вычислите крупномасштабные потери пути и сгенерируйте частотно-избирательные каналы TGax с замираниями для всех немалых ссылок.

  3. Для каждого события передачи определите активные передатчики и приемники на основе правил CCA.

  4. Вычислите и верните SINR на поднесущую и эффективный SINR для каждого активного приемника согласно вставке 2, тест 3 в методологии оценки TGax.

box2Results = box2Simulation(PHYParams,MACParams,ScenarioParams,SimParams);

Постройте график CDF SINR на поднесущую и эффективный SINR (как определено в вставке 2, тест 3) по представленным результатам калибровки.

tgaxCalibrationCDF(box2Results.sinr(:), ...
    ['SS1Box2Test' num2str(SimParams.Test) 'A'],'CDF of SINR per subcarrier');
tgaxCalibrationCDF(box2Results.sinrEff(:), ...
    ['SS1Box2Test' num2str(SimParams.Test) 'B'],'CDF of effective SINR per reception');

end
  Running drop #1/3 ...
    Generating 3518 fading channel realizations ...
    Running transmission event #1/2 ...
    Running transmission event #2/2 ...
  Running drop #2/3 ...
    Generating 3366 fading channel realizations ...
    Running transmission event #1/2 ...
    Running transmission event #2/2 ...
  Running drop #3/3 ...
    Generating 3750 fading channel realizations ...
    Running transmission event #1/2 ...
    Running transmission event #2/2 ...

Figure contains an axes. The axes with title Calibration: CDF of SINR per subcarrier contains 11 objects of type line. These objects represent Calibrated Curves, WLAN Toolbox.

Figure contains an axes. The axes with title Calibration: CDF of effective SINR per reception contains 12 objects of type line. These objects represent Calibrated Curves, WLAN Toolbox.

Увеличьте количество капель для более точного сравнения.

Часть B - Ссылка Эффективности модель

Модель ссылки эффективности предсказывает мгновенный PER, заданный SINR на поднесущую, вычисленный в части А, и параметры кодирования, используемые для передачи.

Эффективное отображение и усреднение SINR используется для сжатия SINR после эквалайзера на поднесущую в один эффективный ОСШ. Эффективным ОСШ является ОСШ, который обеспечивает эквивалентную эффективность PER с аддитивным каналом белого Гауссова шума (AWGN), как и с каналом с замираниями. Предварительно вычисленная интерполяционная таблица, сгенерированная с помощью WLAN Toolbox™, обеспечивает PER для ОСШ в канале AWGN для данного канала, схемы модуляции и скорости кодирования. Когда PER получен, случайная переменная определяет, был ли пакет принят с ошибкой.

Методология оценки TGax PER используется в этом примере, рассматривая одно событие интерференции.

Эффективный SINR вычисляется с использованием функции отображения принятой взаимной скорости передачи битовой информации (RBIR);

SINReff=αϕ-11NssNscj=1Nssm=1NscϕSINR(m,j)β,M,M.

  • ϕ(x,M) - функция отображения RBIR, которая преобразует SINR каждой поднесущей в «информационную меру» для схемы модуляции M. Функция отображения RBIR для BPSK, QPSK, 16QAM, 64QAM и 256QAM предусмотрена в [7].

  • ϕ-1(x,M) - обратная функция отображения RBIR, которая преобразует «информационную меру» назад в область ОСШ.

  • Nss - количество пространственных потоков.

  • Nsc - количество поднесущих.

  • SINR - SINR после эквалайзера m1-я поднесущая и jвторой пространственный поток.

  • α и β являются параметрами настройки. Методология оценки TGax не принимает никакой настройки, поэтому в этом примере мы предполагаем, что они установлены на 1.

PER для опорной длины данных PERPL0 получается путем просмотра соответствующей таблицы AWGN, LUT, учитывая схему модуляции и кодирования (MCS), схему канального кодирования и длину опорных данных (PL0)

PERPL0=LUTSNReff;MCS, coding scheme, PL0,

где длина ссылки данных зависит от кодирования канала и длины данных для передачи PL.

PL0=32 bytes,  BCC and PL<400 bytes1458 bytes,  BCC and PL400 bytes1458 bytes, LDPC.

Окончательная оценка PER затем корректируется на длину данных:

PERPL=1-PERPL0PLPL0.

Описанный способ принимает, что SINR является постоянным на время пакета. Методика оценки TGax описывает методы для борьбы с изменяющимися во времени помехами и оценки частоты ошибок модулей данных протокола управления доступом к среде (MPDU) в совокупном MPDU (A-MPDU).

Вычисление эффективного SINR

Вычислите эффективные SINR и PER с помощью tgaxLinkPerformanceModel пример вспомогательного объекта.

Abstraction = tgaxLinkPerformanceModel;

The effectiveSINR метод вычисляет эффективный SINR, учитывая схему модуляции и SINR после эквалайзера на поднесущую и пространственный поток.

format = 'HE_SU';
mcs = 6; % MCS 6 is 64-QAM
[snreff,rbir_sc,rbir_av] = effectiveSINR (Abstraction, sinr, формат, mcs);

RBIR (информационная мера) на поднесущую, полученную путем отображения SINR на поднесущую, и средний RBIR показаны на первом подграфике рисунка. Эффективный SINR на поднесущую получают путем обратного отображения среднего RBIR и показывают во второй подграфике.

plotRBIR(sinr,snreff,rbir_av,rbir_sc,k);

Figure contains 2 axes. Axes 1 with title RBIR contains 2 objects of type line. These objects represent RBIR per subcarrier, Average RBIR. Axes 2 with title SINR contains 2 objects of type line. These objects represent SINR per subcarrier, Effective SINR.

Оценка вероятности пакетной ошибки

Учитывая эффективный ОСШ, оцените PER путем линейной интерполяции и экстраполяции предварительно вычисленной кривой уровня канала AWGN в логарифмической области и корректировки длины данных. The estimatePER метод возвращает окончательный PER, per, и используемая интерполяционная таблица AWGN, lut .

channelCoding = "LDPC";
dataLength = 1458; % Bytes
[per, ~, ~, lut] = estimatePER (Abstraction, snreff, формат, mcs, channelCoding, dataLength);

% Plot the AWGN lookup table and the estimated PER
рисунок;
semilogy (лют (:, 1), лют (:, 2));
сетка on
держаться on
график (snreff, per,'d');
легенда ('AWGN LDPC lookup table','Estimated PER from effective SINR')
заголовок ('Packet error rate')
xlabel ('SNR (dB)')
ylabel ('PER')

Figure contains an axes. The axes with title Packet error rate contains 2 objects of type line. These objects represent AWGN LDPC lookup table, Estimated PER from effective SINR.

Блок 0 методологии оценки TGax - Проверьте эффективный ОСШ по сравнению с PER- Эффективности

Чтобы проверить весь метод абстракции физического уровня, PER из симуляции канального уровня сравнивается с оценками PER с помощью абстракции. Это следует за шагами 2 и 3 вставки 0, проверка в методологии оценки TGax. Однопользовательская ссылка 802.11ax моделируется с идеальной синхронизацией, оценкой канала и без нарушений, кроме затухающей модели канала TGax и AWGN. Рассматриваются только ошибки в части данных пакета.

В этом примере ОСШ, которые нужно моделировать, выбираются на основе MCS, количества передающих и приемных антенн и модели канала для заданного строения PHY. Количество пространственно-временных потоков принято равным количеству передающих антенн. Симуляция сконфигурирована в короткие запуски; для получения более значимых результатов следует увеличить количество пакетов для моделирования.

verifyAbstraction = true; % Disable box 0 simulation
if verifyAbstraction

% Simulation Parameters
mcs = [4 8]; % Vector of MCS to simulate between 0 and 11
numTxRx = [1 1]; % Matrix of MIMO schemes, each row is [numTx numRx]
chan = "Model-D"; % String array of delay profiles to simulate
maxNumErrors = 1e1;  % The maximum number of packet errors at an SNR point
maxNumPackets = 1e2; % The maximum number of packets at an SNR point

% Fixed PHY configuration for all simulations
cfgHE = wlanHESUConfig;
cfgHE.ChannelBandwidth = 'CBW20'; % Channel bandwidth
cfgHE.APEPLength = 1000;          % Payload length in bytes
cfgHE.ChannelCoding = 'LDPC';     % Channel coding

% Generate a structure array of simulation configurations. Each element is
% one SNR point to simulate.
simParams = getBox0SimParams (chan, numTxRx, mcs, cfgHE, maxNumErrors, maxNumPackets);

% Simulate each configuration
результаты = камера (1, число (simParams));
% parfor isim = 1:numel(simParams) % Use 'parfor' to speed up the simulation
for isim = 1: numel (simParams)
    результаты {isim} = box0Simulation (simParams (isim));
end

Пригодность абстракции определяется путем сравнения PER, вычисленного симуляцией уровня звена и абстракцией. Первый рисунок сравнивает PER в каждом моделируемом ОСШ.

plotPERvsSNR(simParams,results);

Второй рисунок сравнивает количество успешно декодированных пакетов симуляции канального уровня с эффективным ОСШ с эталонной кривой AWGN. Если абстракция успешна, PER должен следовать за кривой AWGN.

plotPERvsEffectiveSNR(simParams,results);
end
Model-D 1-by-1, MCS 4, SNR 11 completed after 14 packets, PER:0.78571
Model-D 1-by-1, MCS 4, SNR 15 completed after 22 packets, PER:0.5
Model-D 1-by-1, MCS 4, SNR 19 completed after 100 packets, PER:0.05
Model-D 1-by-1, MCS 4, SNR 23 completed after 100 packets, PER:0.02
Model-D 1-by-1, MCS 4, SNR 27 completed after 100 packets, PER:0
Model-D 1-by-1, MCS 8, SNR 21.5 completed after 13 packets, PER:0.84615
Model-D 1-by-1, MCS 8, SNR 25.5 completed after 23 packets, PER:0.47826
Model-D 1-by-1, MCS 8, SNR 29.5 completed after 100 packets, PER:0.03
Model-D 1-by-1, MCS 8, SNR 33.5 completed after 100 packets, PER:0.02
Model-D 1-by-1, MCS 8, SNR 37.5 completed after 100 packets, PER:0

Figure contains an axes. The axes with title Abstracted vs Simulated PHY, 1x1, Model-D contains 4 objects of type line. These objects represent Simulated, MCS 4, Abstracted, MCS 4, Simulated, MCS 8, Abstracted, MCS 8.

Figure contains an axes. The axes with title Simulated link PER vs effective SNR, 1x1, Model-D contains 4 objects of type line. These objects represent MCS 4, MCS 8, AWGN.

rng(sprev) % Restore random state

В этом примере параметры настройки α и β имеют значение 1. Они могут быть настроены, чтобы дополнительно улучшить точность абстракции, если это необходимо. Показаны результаты моделирования 1000 пакетных ошибок или 100000 пакетов для MCS 0-9 для 1458-байтового пакета без настройки.

Дальнейшие исследования

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

Избранная библиография

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

  2. IEEE 802.11-14/0571r12 - 11ax Методика оценки.

  3. Brueninghaus, Karsten, et al. «Модели производительности связи для моделирования системного уровня систем широкополосного радиодоступа». IEEE 16th International Symposium on Personal, Indoor and Mobile Radio Communications 2005. Том 4. IEEE, 2005.

  4. Mehlführer, Christian, et al. «Венские симуляторы LTE - обеспечение воспроизводимости в исследованиях радиосвязей». EURASIP Journal on Advances in Signal Processing 2011.1 (2011): 29.

  5. IEEE 802.11-14/0800r30 - Результаты калибровки коробок 1 и 2.

  6. IEEE 802.11-14/0980r16 - Сценарии симуляции TGax.

  7. IEEE 802.11-14/1450r0 - Блок 0 Результаты калибровки