Этот пример демонстрирует абстракцию физического уровня 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.
Качественная модель ссылки реализует поле 2 уравнение SINR от Методологии Оценки TGax. Несколько вводят несколько выходов (MIMO) SINR на поднесущую (индекс ) и пространственный поток (индекс ) между передатчиком и получателем интереса дают
.
SINR учитывает потерю пути и исчезающие каналы между всеми передатчиками и получателем и предварительным кодированием прикладного в передатчиках. Степенью сигнала интереса дают
,
где полученная степень сигнала интереса, линейный фильтр получателя, матрица канала между передатчиком и получателем интереса, и матрица перед кодированием, примененная в передатчике.
Степенью внутрипользовательской интерференции дают
.
Степенью межпользовательской интерференции дают
,
где набор вмешивающихся передатчиков в основная услуга установлена (BSS) th
Шумовой степенью дают
,
где шумовая степень спектральная плотность.
Качественная модель ссылки требует матрицы канала на поднесущую. Вычислите матрицу канала от усилений пути, возвращенных в исчезающую модель 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 на поднесущую с 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);
Этот раздел подтверждает вычисление 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
запускает симуляцию путем выполнения этих шагов:
Случайным образом пропустите передатчики (APS) и получатели (STAs) в рамках сценария.
Вычислите крупномасштабную потерю пути и сгенерируйте выборочный частотой TGax исчезающие каналы для всех ненезначительных ссылок.
Для каждого события передачи определите активные передатчики и получатели на основе правил CCA.
Вычислите и возвратите 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 ...
Увеличьте число отбрасываний для более точного сравнения.
Модель производительности ссылки предсказывает мгновенный PER, учитывая SINR на поднесущую, вычисленную частично A и параметры кодирования, используемые в передаче.
Эффективный SINR отображение и усреднение используется, чтобы сжать постэквалайзер SINR на поднесущую в один эффективный ОСШ. Эффективный ОСШ является ОСШ, который предоставляет эквивалентной производительности PER канал аддитивного белого Гауссова шума (AWGN) как с исчезающим каналом. Предварительно вычисленная интерполяционная таблица, сгенерированная с WLAN Toolbox™, обеспечивает PER для ОСШ под каналом AWGN для данного кодирования канала, схемы модуляции и кодирования уровня. Если PER получен, случайная переменная определяет, был ли пакет получен по ошибке.
Процедура оценки PER методологии оценки TGax используется в этом примере, рассматривая одно интерференционное событие.
Эффективный SINR вычисляется с помощью полученного битного взаимного информационного уровня (RBIR), сопоставляющий функцию;
.
RBIR, сопоставляющий функцию, которая преобразовывает SINR каждой поднесущей к “информационной мере" для схемы модуляции . RBIR, сопоставляющий функцию для BPSK, QPSK, 16QAM, 64QAM и 256QAM, обеспечивается в [7].
обратный RBIR, сопоставляющий функцию, которая преобразовывает “информационную меру” назад к области ОСШ.
количество пространственных потоков.
количество поднесущих.
постэквалайзер SINR поднесущая th и пространственный поток th.
и настраивают параметры. Методология оценки TGax не принимает настройки поэтому в этом примере, мы принимаем, что они установлены в 1.
PER для длины справочных данных получен путем поиска соответствующей таблицы AWGN, , учитывая схему модуляции и кодирования (MCS), схема кодирования канала и длина справочных данных ()
,
где длина справочных данных зависит от кодирования канала и длины данных для передачи .
.
Финал оценил, что PER затем настроен для длины данных:
.
Описанный метод принимает, что SINR является постоянным на время пакета. Методология оценки TGax описывает методы, чтобы иметь дело с изменяющейся во времени интерференцией и оценить коэффициент ошибок модулей данных о протоколе управления доступом медиа-контента (MPDUs) в агрегате MPDU (A-MPDU).
Вычислите эффективный SINR и PER с помощью tgaxLinkPerformanceModel
объект помощника в качестве примера.
Abstraction = tgaxLinkPerformanceModel;
effectiveSINR
метод вычисляет эффективный SINR, учитывая схему модуляции и эквалайзер сообщения SINR на поднесущую и пространственный поток. 1024-QAM схема модуляции не поддержана в этом примере.
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);
Учитывая эффективный ОСШ, оцените 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')
Чтобы проверить целый метод абстракции физического уровня, 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 9 numTxRx = [1 1]; % Matrix of MIMO schemes, each row is [numTx numRx] канал = "Model-D"; % String array of delay profiles to simulate maxnumberrors = 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, maxnumberrors, 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
rng(sprev) % Restore random state
В этом примере настраивающиеся параметры и установлены в 1. Они могли быть настроены, чтобы далее улучшить точность абстракции при желании. Результаты при симуляции 1 000 пакетных ошибок или 100 000 пакетов для MCS от 0 до 9 для 1 458-байтового пакета без настройки показывают.
Чтобы видеть, как 802.11ax абстракция физического уровня, описанная в этом примере, может использоваться в симуляции уровня системы, смотрите 802.11ax Симуляция Уровня системы с примером Абстракции Физического уровня.
Этот пример использует следующие функции помощника:
box0Simulation.m
box2Simulation.m
calculateSINR.m
helperPerfectChannelEstimate.m
plotPERvsEffectiveSNR.m
plotPERvsSNR.m
plotRBIR.m
tgaxLinkPerformanceModel.m
Черновой Стандарт IEEE P802.11ax™/D3.1 для Информационных технологий - Телекоммуникаций и обмена информацией между системами - Локальными сетями и городскими компьютерными сетями - Конкретными требованиями - Часть 11: Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Спецификации - Поправка 6: Улучшения для Высокой эффективности WLAN.
IEEE 802.11-14/0571r12 - 11ax Методология Оценки.
Brueninghaus, Karsten, и др. "Соедините модели производительности для симуляций уровня системы широкополосных радио-систем доступа". 2 005 IEEE 16-й Международный Симпозиум по Персональному, Indoor and Mobile Radio Communications. Издание 4. IEEE, 2005.
Mehlführer, христианин, и др. "Венская воспроизводимость включения средств моделирования LTE в исследовании радиосвязей". Журнал EURASIP на Усовершенствованиях в Обработке сигналов 2011.1 (2011): 29.
IEEE 802.11-14/0800r30 - Поле 1 и Калибровочные Результаты Поля 2.
IEEE 802.11-14/0980r16 - Сценарии Симуляции TGax.
IEEE 802.11-14/1450r0 - Калибровочные Результаты Поля 0