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

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

Введение

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

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

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

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

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

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

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

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

Часть A - соединяет качественную модель

Качественная модель ссылки реализует уравнение SINR поля 2 от Методологии Оценки TGax. Несколько вводят несколько выходов (MIMO) 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) th

Шумовой мощностью дают

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 objects. Axes object 1 with title Per-subcarrier receive power contains 3 objects of type line. These objects represent Signal of interest, Interferer, Noise floor. Axes object 2 with title Post-equalizer SINR contains an object of type line.

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

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

Для получения дополнительной информации о сценарии, и для результатов долгосрочной калибровки SINR смотрите 802.11ax PHY-фокусируемый пример Симуляции Уровня системы.

Главные параметры симуляции заданы или как принадлежащий Физическому уровню (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.

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

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

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

  1. Случайным образом пропустите передатчики (APS) и приемники (STAs) в рамках сценария.

  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 object. The axes object 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 object. The axes object 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 на поднесущую, вычисленную частично A и параметры кодирования, используемые для передачи.

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

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

Эффективный 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 mподнесущая th и jпространственный поток th.

  • α и β настраивают параметры. Методология оценки 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-1-PERPL0PLPL0.

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

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

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

Abstraction = tgaxLinkPerformanceModel;

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

format = 'HE_SU';
мГц = 6; % MCS 6 is 64-QAM
[snreff, rbir_sc, rbir_av] = effectiveSINR (Абстракция, sinr, формат, мГц);

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

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

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

Оцените пакетный коэффициент ошибок

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

channelCoding = "LDPC";
dataLength = 1458; % Bytes
[на, ~, ~, lut] = estimatePER (Абстракция, snreff, формат, мГц, channelCoding, dataLength);

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

Figure contains an axes object. The axes object 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. Только ошибки во фрагменте данных пакета рассматриваются.

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

verifyAbstraction = true; % Disable box 0 simulation
if verifyAbstraction

% Simulation Parameters
мГц = [4 8]; % Vector of MCS to simulate between 0 and 11
numTxRx = [1 1]; % Matrix of MIMO schemes, each row is [numTx numRx]
канал = "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 (канал, numTxRx, мГц, cfgHE, maxNumErrors, maxNumPackets);

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

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

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 object. The axes object 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 object. The axes object 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. Они могли быть настроены, чтобы далее улучшить точность абстракции при желании. Результаты при симуляции 1 000 пакетных ошибок или 100 000 пакетов для MCS от 0 до 9 для 1 458-байтового пакета без настройки показывают.

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

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

Выбранная библиография

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

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

  3. Brueninghaus, Karsten, и др. "Соедините модели эффективности для симуляций уровня системы широкополосных радио-систем доступа". 2 005 IEEE 16-й Международный Симпозиум по Персональному, Indoor and Mobile Radio Communications. Издание 4. IEEE, 2005.

  4. Mehlführer, христианин, и др. "Венская воспроизводимость включения средств моделирования LTE в исследовании радиосвязей". Журнал EURASIP на Усовершенствованиях в Обработке сигналов 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

Похожие темы