主要内容

802.11 ax PHY-Focused系统级模拟

这个例子展示了如何执行PHY-focused IEEE®802.11 ax™的系统级仿真。(A)部分验证仿真场景中,广播特性,大规模的衰落模型通过比较对校准结果公布。部分(B)估计802.11的包错误率ax网络通过模拟个体活跃节点之间的链接下一个基本清晰频道评估方案。

介绍

在这个例子中802.11 ax的性能(1网络在一个住宅公寓使用PHY-focused系统级仿真评估。

住宅公寓仿真场景中指定的(2]。这个由五层的建筑,和二十10 m x 10 m x 3米每楼公寓。每个公寓都有一个接入点(AP)和一个或多个电台(斯塔斯)放置在随机xy-locations,这一过程称为“下降”节点。这将创建一个基本服务集(BSS) /公寓是随机分配三个通道之一。仿真场景中指定了一个大规模的路径损耗模型基于节点之间的距离,和墙壁和地板遍历的数量。

TGax评价方法(3]对体育系统仿真是跟着这个例子:

  1. APs和斯塔斯是随机“下降”的场景。

  2. 每对节点的大规模计算路径损耗。

  3. 执行一个或多个“传播事件”。每个传输事件包括选择活跃APs和斯塔斯基于信道访问规则和确定每个链接的性能。

这个例子包括两个部分:

在(A)部分中,“校准”阶段,signal-to-interference-plus-noise比(SINR)计算出多个“滴”,假设下行干扰传输。SINR捕捉长期广播的特点。累积分布函数(CDF)的SINR而发表的结果TGax任务组(4]。

在(B)部分,体育系统级仿真的阶段,为每个传输事件PHY层建模为个人链接。一个基本清晰频道评估(CCA)计划是用来控制哪些APs是活跃的。为感兴趣的信号和干扰波形,受衰落信道模型,生成和总和。生成的数据包由接收机恢复处理感兴趣的包。网络计算的平均包错误率。

本例的两个部分可以使用的参数被禁用校准systemLevelSimulation。图显示模拟场景中,节点,主动链接和干扰时显示showScenarioPlot是真的。

校准= true;%执行部分校准测试systemLevelSimulation = true;% B部分执行系统级模拟showScenarioPlot = true;%显示动态模拟绘制更新

仿真参数

主要仿真参数被定义为要么属于物理层(体育),介质访问控制层(MAC),场景,或模拟。在这个例子中,体育和MAC参数被认为是相同的所有节点。

PHYParameters =结构;PHYParameters。TxPower = 20;发射机功率百分比dBmPHYParameters。TxGain = 0;%发射机在dBi天线增益PHYParameters。RxGain = 2;%接收机在dBi天线增益PHYParameters。NoiseFigure = 7;在dB %接收机噪声图PHYParameters。NumTxAntennas = 1;%的发射机天线PHYParameters。NumRxAntennas = 1;%的接收机天线PHYParameters。ChannelBandwidth =“CBW80”;%的带宽系统PHYParameters。TransmitterFrequency = 5 e9;%发射机在赫兹的频率MACParameters =结构;MACParameters。NumChannels = 3;%的重叠频道MACParameters。CCALevel = -70;传播阈值百分比CCA算法(dBm)

场景的参数定义的大小和布局住宅建筑按[3]。

%的房间数量(x, y, z)方向ScenarioParameters =结构;ScenarioParameters。BuildingLayout = (10 2 5);%的每个房间大小米[x, y, z]ScenarioParameters。RoomSize = (10 10 3);%每房间数量的接收器。请注意,只有一个接收器(STA)%活跃在任何给定的时间。ScenarioParameters。NumRxPerRoom = 1;

NumDropsNumTxEventsPerDrop参数控制仿真的长度。对于这个示例,这些参数配置为一个简短的模拟,但对于这些应该增加有意义的结果。

“下降”随机地方发射器和接收器内的场景和选择BSS的通道。“传输”事件随机选择发射器和接收器传输根据基本频道访问规则。

SimParameters =结构;SimParameters。NumDrops = 3;SimParameters。NumTxEventsPerDrop = 2;

生成发射机网站

仿真的主体之前,发射机网站对象txsite表单的生成和分配房间名称的房间号为便于参考。每个房间一个发射机(美联社)。每个发射器都假定为各向同性。

%的总数发射器,假设每个房间一个发射机(tx)numTx = prod (ScenarioParameters.BuildingLayout);%创建发射器的网站和各向同性天线元素roomNames =字符串(1、numTx);siteInd = 1: numTx roomNames (siteInd) =“房间”+ siteInd;结束tx = txsite (笛卡儿的,“名字”roomNames,“TransmitterFrequency”PHYParameters.TransmitterFrequency,“TransmitterPower”10。^ ((PHYParameters.TxPower + PHYParameters.TxGain-30) / 10),“天线”,“各向同性”);

生成接收器网站

接收站点对象rxsite表单的生成和分配名称“房间# sta #”为便于参考。场景参数NumRxPerRoom用于定义多少个接收器(斯塔斯)出现在每个房间。每个接收机是假定为各向同性。

%的总数接收器,假设每个房间一个发射机(tx)numRx = numTx * ScenarioParameters.NumRxPerRoom;%创建接收站点roomNames =字符串(1、numRx);siteInd = 1: numRx roomNames (siteInd) =“房间”+ (mod (siteInd-1 numTx) + 1) +“-”+装天花板(siteInd / numTx);结束rx = rxsite (笛卡儿的,“名字”roomNames,“天线”,“各向同性”);%在dBm接收机噪声功率T = 290;开尔文温度(%)k = physconst (玻耳兹曼的);%玻耳兹曼常量%采样率(赫兹)fs = wlanSampleRate (wlanHESUConfig (“ChannelBandwidth”PHYParameters.ChannelBandwidth));rxNoisePower = 10 * log10 (k * T * fs) + 30 + PHYParameters.NoiseFigure;

部分,使长期广播的特点

在本节中,模拟场景中,广播特性,大规模的衰落模型验证了执行TGax评价方法框1测试2下行只有校准测试(3]。这个测试计算SINR的接收器(斯塔斯)假设所有发射器(APs)是活动的。多个滴发射器和接收器的一部分执行模拟。选择一个活跃的接收机每下降。

每个接收机的SINR计算和汇总所有滴模拟生成CDF实验组的曲线。这条曲线是与提供的校准结果4]。

一块显示节点的位置,主动链接和干扰链接生成每下降。个人渠道可以隐藏和显示在相应的传奇情节通过单击条目。

种子= rng (6);%种子随机数发生器和存储状态如果showScenarioPlot hGrid = tgaxBuildResidentialGrid (ScenarioParameters.RoomSize ScenarioParameters.BuildingLayout,numTx、numRx MACParameters.NumChannels);结束如果校准流(“运行校准…\ n”);%预先分配输出输出=结构;输出。sinr = 0 (SimParameters.NumDrops numTx);%用于存储SINR值滴= 1:SimParameters.NumDrops%下降接收器在每一个房间(协会、txChannels rxChannels、txPositions rxPositions] = tgaxDropNodes (tx, rx ScenarioParameters MACParameters.NumChannels);%所有发射机活跃activeTx = true (numTx, 1);%每个房间只能选择一个接收器rxAlloc =兰迪([1 ScenarioParameters.NumRxPerRoom] numTx 1);activeRx =重塑(rxAlloc = = 1: ScenarioParameters.NumRxPerRoom, [], 1);%生成传播模型propModel = TGaxResidential (“roomSize”,ScenarioParameters.RoomSize);%的指数为每个接收发射机tnum = repmat ((1: numTx), 1, numRx / numTx);% SINR计算,循环遍历每个重叠通道activeChannels =独特(txChannels);k = 1:元素个数(activeChannels)%使用k重叠通道点燃= txChannels = = activeChannels (k);皮= false(大小(activeRx));皮(activeRx) = rxChannels (activeRx) = = activeChannels (k);%的指数为每个活动感兴趣的发射机接收机tsigind = tnum(皮);%计算信噪比output.sinr(下降,点燃)= sinr (rx(皮),tx(点燃),“ReceiverGain”PHYParameters.RxGain,“ReceiverNoisePower”rxNoisePower,“PropagationModel”propModel,“SignalSource”tx (tsigind));结束%绘制节点和链接如果showScenarioPlot%更新图数据掩码= txChannels = = rxChannels ';tgaxUpdatePlot (hGrid、txPositions rxPositions、activeTx activeRx,面具,txChannels, rxChannels,sprintf (箱1测试2”下行只有“校准,下降# % d / % d '下降,SimParameters.NumDrops));结束结束%的阴谋SINR的运作和与校准曲线tgaxCalibrationCDF (output.sinr“SS1Box1Test2”,“长期的广播特性”);流(“校准完成\ n”)结束
运行校准……校准完成

这个例子模拟一个小数量的下降。因此,对于一个更有意义的对比模拟水滴的数量应该增加。100滴的校准结果如下所示:

B -部分PHY-focused系统级模拟

在本节中,场景和路径损耗模型校准部分是用来执行一个PHY-focused系统级仿真和确定网络的数据包出错率。这个模拟被描述为PHY-focused PHY不是抽象和简化MAC。每个活动环节建模使用发射机和接收机基带处理。一个非常简单的MAC假设在每个传输事件发射器(APs)希望传播,和一个接收器(STA) / BSS是收件人。一个简单CCA算法用于控制通道之间的访问发射器如图4中指定的3]。CCA算法使随机发射器如果接收到的信号功率发射机CCA已经激活不超过阈值,MACParameters.CCAThreshold

的接收信号功率计算所有可能的干扰发射机接收机在每个活跃。如果接收功率的干扰发射机接收机的噪声地板上方,然后链接建模与发射机和接收机基带处理。建模为每个链接一个他单用户数据包生成并通过TGax模型仿真结果静止室内信道模型。发射机接收机,波形的利息和所有干扰发射器由预期路径损耗比例和组合来创建一个包含利息加上干扰的信号波形。所有波形时间一致。接收者执行同步、解调和解码试图恢复有效载荷。解码负载在BSS PSDU相比传播来确定包已成功恢复。

在这个例子中传输和通道参数被认为是相同的所有节点。所有数据包的传输配置是一个时空流,没有空时分组编码和16-QAM rate-1/2 (MCS 3)。

如果systemLevelSimulation%预先分配输出输出。numPkts = 0 (numRx, 1);输出。numPktErrors = 0 (numRx, 1);输出。sinrMeas =南(numRx SimParameters.NumTxEventsPerDrop SimParameters.NumDrops);输出。sinrEst =南(numRx SimParameters.NumTxEventsPerDrop SimParameters.NumDrops);输出。pktErrorRate = 0;%为每个可能的发射器创建一个波形配置。在这个%的例子的链接和无线电参数是相同的所有节点。cfgHEBase = wlanHESUConfig;cfgHEBase。ChannelBandwidth = PHYParameters.ChannelBandwidth;%通道带宽cfgHEBase。NumTransmitAntennas = PHYParameters.NumTxAntennas;%的发送天线数量cfgHEBase。SpatialMapping =“傅里叶”;%空间映射矩阵cfgHEBase。NumSpaceTimeStreams = 1;%的时空流cfgHEBase。GuardInterval = 0.8;%警卫队间隔时间cfgHEBase。HELTFType = 4;% HE-LTF压缩模式cfgHEBase。APEPLength = 1 e3;%载荷长度字节cfgHEBase。ChannelCoding =“方法”;%信道编码cfgHEBase。MCS = 3;%调制和编码方案cfgHE =细胞(numTx, 1);txidx = 1: numTx cfgHE {txidx} = cfgHEBase;结束流(“系统级仿真运行…\ n”)滴= 1:SimParameters.NumDrops流(下降的运行# % d / % d…\ n '下降,SimParameters.NumDrops);%下降接收器在每一个房间(协会、txChannels rxChannels、txPositions rxPositions] = tgaxDropNodes (tx, rx ScenarioParameters MACParameters.NumChannels);%生成传播模型propModel = TGaxResidential (“roomSize”,ScenarioParameters.RoomSize);%计算信号强度为所有链接propModel signalStrength = sigstrength (rx, tx,“类型”,“权力”,“ReceiverGain”,PHYParameters.RxGain);% dBm所有信号的优点%阈值信号低于噪声水平减少模拟时间signalStrength (signalStrength < rxNoisePower) =无穷;%不相同的重叠频道阈值信号signalStrength (~ (txChannels = = rxChannels ')) =无穷;%面具的收发两用机链接不可忽视%模拟,得到线性指标nonnegligibleMask = signalStrength >无穷;%重置来创建一个新的实现可观的通道%电流下降nonnegligibleIdx =找到(nonnegligibleMask) ';%为每个可能的活动链接创建一个下降通道%的配置。在这个例子和无线电参数的联系%对所有节点。tgaxChan =细胞(元素个数(nonnegligibleIdx), 1);i = 1:元素个数(nonnegligibleIdx)%的发射机指数对于一个给定的链接txIdx =国防部(nonnegligibleIdx (i) 1, numTx) + 1;%通道配置。为每个链接通道实现%不同随着全球使用随机流。tgaxChanBase = wlanTGaxChannel;tgaxChanBase。DelayProfile =“模型”;tgaxChanBase。NumTransmitAntennas = cfgHE {txIdx} .NumTransmitAntennas;tgaxChanBase。NumReceiveAntennas = PHYParameters.NumRxAntennas;tgaxChanBase。TransmitReceiveDistance = 10;%在米距离了仿真结果tgaxChanBase。ChannelBandwidth = cfgHE {txIdx} .ChannelBandwidth;tgaxChanBase。LargeScaleFadingEffect =“没有”;tgaxChanBase。EnvironmentalSpeed = 0;% m / s,静止的tgaxChanBase。SampleRate = f;tgaxChanBase。NormalizeChannelOutputs = false;%存储单元阵列和重置生成一个新的渠道%响应tgaxChan{我}= tgaxChanBase;我重置(tgaxChan {});结束txevent = 1: SimParameters。NumTxEventsPerDrop流(“运行传输事件# % d / % d…\ n '、txevent SimParameters.NumTxEventsPerDrop);%确定积极的发射器和接收器与评估[activeTx, activeRx] = tgaxCCA (signalStrength MACParameters.CCALevel);%的情节场景和链接如果showScenarioPlot tgaxUpdatePlot (hGrid txPositions、rxPositions activeTx, activeRx, nonnegligibleMask, txChannels, rxChannels,sprintf (体育系统级仿真,降低# % d / % d,传播事件# % d / % d ',下降,SimParameters.NumDrops, txevent SimParameters.NumTxEventsPerDrop));结束%提取元素使用activeTx和activeRx主动联系cfgHEActive = cfgHE (activeTx);associationActive =协会(activeTx activeRx);nonnegligibleMaskActive = nonnegligibleMask (activeTx activeRx);signalStrengthActive = signalStrength (activeTx activeRx);%创建数组包含积极的渠道tgaxChanActive =细胞(大小(associationActive));matchIdx = nonnegligibleIdx = =找到(activeTx&activeRx ');tgaxChanActive (nonnegligibleMaskActive) = tgaxChan(任何(matchIdx, 1));%为每一个可观的活动链接,生成一个波形%为每个接收器结合波形[rxWavs, txPSDUActive signalPower interfPower] = tgaxGenerateRxWaveforms (cfgHEActive、tgaxChanActive nonnegligibleMaskActive、signalStrengthActive associationActive);% PHY链接运行仿真为每个链接,确定数据包%已成功解码。估计干扰能力%被传递给接收者的地方权力干涉%的测量算法。numActiveRxs =总和(activeRx);pktError = false (numActiveRxs, 1);sinrMeas =南(numActiveRxs, 1);rxIdx = 1: numActiveRxs pktError (rxIdx) sinrMeas (rxIdx)] = tgaxModelPHYLink (cfgHEActive rxWavs {rxIdx}, {rxIdx}, rxNoisePower, interfPower (rxIdx) txPSDUActive {rxIdx});结束%为活跃接收器存储输出output.numPktErrors (activeRx) = output.numPktErrors (activeRx) + pktError;output.numPkts (activeRx) = output.numPkts (activeRx) + 1;output.sinrMeas (activeRx txevent下降)= sinrMeas;%计算预期的SINR在每个接收器sinrEst = 10 * log10 (signalPower. / (interfPower + 10 ^ ((rxNoisePower-30) / 10)));output.sinrEst (activeRx txevent下降)= sinrEst;结束结束%计算平均包错误率输出。pktErrorRate =总和(output.numPktErrors) /笔(output.numPkts);disp (模拟完整的)disp ([发射机的平均包错误率:“num2str (output.pktErrorRate)]);结束rng(种子);%恢复随机状态
系统级仿真运行……运行# 1/3下降……运行传输事件# 1/2……运行传输事件# 2/2……运行#下降2/3……运行传输事件# 1/2……运行传输事件# 2/2……运行# 3/3下降……运行传输事件# 1/2……运行传输事件# 2/2…… Simulation complete Average packet error rate for transmitters: 0.054152

进一步的探索

PHY-focused系统级仿真证明在这个例子可以用来探索PHY-level参数对系统性能的影响。举个例子,下面的图显示了不同的值的网络数据包平均错误率CCA的阈值50滴,每下降2传播事件。

附录

这个示例使用以下辅助函数:

选定的参考书目

  1. IEEE Std 802.11 ax™-2021。IEEE标准信息技术——之间的通信和信息交换系统-本地和市区网络特定需求-第11部分:无线局域网介质访问控制(MAC)和物理层(体育)规范-修正案1:高效WLAN的增强。

  2. IEEE 802.11 14/0980r16 - TGax模拟场景。

  3. IEEE 802.11 14/0571r12 - 11 ax评价方法。

  4. IEEE 802.11 14/0800r30 -盒1盒2校准结果。

相关的话题