主要内容

802.11ac发射波束成形

本示例展示了如何在发送端可用信道状态信息时通过波束形成传输来提高IEEE®802.11ac™链路的性能。

介绍

发射波束形成将能量集中到接收器以提高链路的信噪比。在这个方案中,发射器被称为波束形成器,接收器被称为波束形成器。波束形成器使用转向矩阵来引导能量到波束形成器。利用通道测量获得的通道状态信息计算转向矩阵。在IEEE 802.11ac [1这些测量是通过探测波束形成器和波束形成器之间的通道而获得的。为了探测信道,波束形成器向波束形成器发送一个空数据包(NDP)。波束形成器使用探空提供的信道信息来计算反馈矩阵。该矩阵以压缩格式反馈到波束形成器。然后波束形成器可以使用反馈矩阵创建一个转向矩阵和波束形成传输到波束形成器。形成转向矩阵的过程如图所示。

在IEEE 802.11ac中,单用户波束形成能力不是强制性的。因此,多天线发射机可能不得不使用不同的方案向不能作为波束形成的接收器传输数据包。其中一个方案是空间扩张。空间扩展允许时空流在更多的发射天线上传输。与直接将时空流映射到发射天线相比,使用空间扩展可以在平坦衰落的信道中提供较小的发射分集增益。2]。

这个例子演示了发送器和接收器之间具有两个时空流的4x2 MIMO配置的发射波束形成的好处。首先,本例通过测量使用空间扩展进行的传输的信号质量,演示了不能够成为波束形成的接收器的操作。为了显示发射波束形成的优点,本例测量了使用发射波束形成在同一信道实现上的传输信号质量,并比较了两种方案的性能。这些阶段如下图所示。

波形的配置

本示例模拟了具有2个时空流的4x2 MIMO配置。

NumTxAnts = 4;%发射天线数NumSTS = 2;%时空流个数NumRxAnts = 2;%接收天线数

使用VHT格式配置对象描述VHT波形的格式特定配置。将波形配置为20 MHz带宽和上述指定的MIMO配置。

cfgVHT = wlanVHTConfig;cfgVHT。ChannelBandwidth =“CBW20”;cfgVHT。APEPLength = 4000;cfgVHT。numtransmitantenna = NumTxAnts;cfgVHT。NumSpaceTimeStreams = NumSTS;cfgVHT。MCS = 4;% 16-QAM,比率3/4

通道配置

本例使用具有延迟配置文件model - b的TGac信道模型。通道实现由种子控制,以允许可重复性。

tgacChannel = wlanTGacChannel;tgacChannel。DelayProfile =“b型”;tgacChannel。ChannelBandwidth = cfgVHT.ChannelBandwidth;tgacChannel。年代ampleRate = wlanSampleRate(cfgVHT); tgacChannel.NumReceiveAntennas = NumRxAnts; tgacChannel.NumTransmitAntennas = NumTxAnts; tgacChannel.TransmitReceiveDistance = 100;%米tgacChannel。RandomStream ='mt19937ar with seed';tgacChannel。种子= 70;% Seed允许可重复性

在功率为1的通道输出处,将噪声添加到时域波形中,noisePower

noisePower = -37;%瓦分贝

为模拟设置其他对象和变量。

%用于提取字段的索引索引= wlanfieldindiices (cfgVHT);% AWGN通道以指定的噪声功率添加噪声。随机控制噪声产生的过程是播种的,以允许可重复性。awgnChannel = com . awgnChannel;awgnChannel。RandomStream ='mt19937ar with seed';awgnChannel。种子= 5;awgnChannel。NoiseMethod =“方差”;awgnChannel。Variance = 10^(noisePower/10);计算OFDM解调后的期望噪声方差noiseVar = vhtbeamformingnoisevvariance (noisePower,cfgVHT);%空间流的数目Nss = NumSTS/(cfgVHT.STBC+1);%获取VHT域中已占用的子载波数ofdmInfo = wlanVHTOFDMInfo(“VHT-Data”, cfgVHT);Nst = ofdmInfo.NumTones;%生成一个随机的将被传输的PSDUrng (0);%设置随机状态,以提高可重复性psdu = randi([0 1], cfgvht . psdullength *8,1);

空间扩展传播

首先使用空间扩展进行传输。这种类型的传输可以由多天线发射机到不能够成为波束形成的接收器进行。的SpatialMapping属性允许选择不同的空间映射方案。本例使用了[1]。因此,请配置“自定义”空间映射。使用自定义空间映射矩阵SpatialMappingMatrix格式配置对象的。这个矩阵描述了每个时空流的每个子载波到所有发射天线的映射。因此所使用的空间映射矩阵的大小为Nst-by-Nsts-by-Nt望远镜为已占用子载波的数量,望远镜是时空流的数量,和Nt是发射天线的数量。空间映射矩阵复制一些时空流以形成所需数量的传输流。

%配置空间扩展传输vhtSE = cfgVHT;vhtSE。年代patialMapping =“自定义”;%使用自定义空间展开矩阵vhtSE。年代patialMappingMatrix = helperSpatialExpansionMatrix(vhtSE);%生成波形tx = wlanWaveformGenerator(psdu,vhtSE);将波形通过衰落信道并添加噪声。落后于0%是为了允许信道滤波器延迟。rx = tgacChannel([tx;NumTxAnts 0(15日)]);允许随后使用相同的通道实现重置(tgacChannel);rx = awgnChannel(rx);%允许随后使用相同的噪声实现重置(awgnChannel);%估计符号时序tOff = wlanSymbolTimingEstimate(rx(ind.LSTF(1):ind.LSIG(2),:),vhtSE.ChannelBandwidth);%信道估计vhtltf = rx(设备+ (ind.VHTLTF (1): ind.VHTLTF (2)),:);vhtltfdemodemod = wlanvhtltfdemodemodule (vhtltf,vhtSE);chanEstSE = wlanVHTLTFChannelEstimate(vhtltfDemod,vhtSE);

解调和均衡数据场以恢复每个空间流的OFDM符号。

vhtdata = rx(tOff+(ind.VHTData(1):ind.VHTData(2)),:);[~,~,symSE] = wlanVHTDataRecover(vhtdata, changestse,noiseVar,vhtSE,“PilotPhaseTracking”“没有”);

绘制每个空间流的星座。

refSym = wlanreferencesymsymbols (cfgVHT);%参考星座seConst = vhtBeamformingPlotConstellation(symSE,refSym;“空间扩展传输均衡符号”);

每个空间流的星座方差近似相同,因为信噪比近似相同。这是因为信道中的平均功率在每个时空流中平均大致相同:

disp (空间扩展时每个时空流的平均接收信道功率
随空间展开的每个时空流平均接收信道功率:
i = 1:“时空流%d: %2.2f W\n”,我,总和(意思是(chanEstSE(:,:)。*连词(chanEstSE(:,我,:)),1),3))结束
时空流1:0.73 W时空流2:0.50 W

波束成形传输

当接收器能够成为波束形成时,波束形成传输可以产生比空间扩展更高的信噪比。这个示例演示了使用通道状态信息创建和使用转向矩阵的优势。

通过信道传递NDP,计算波束形成转向矩阵。使用“直接”配置NDP传输的空时流数与发射天线数相匹配的空间映射。它使用VHT-LTF在每个发射天线和接收天线之间建立信道。使用计算的波束形成矩阵来波束形成通过信道的传输。测深和数据传输采用同一信道实现,波束形成和波束形成之间没有反馈压缩,因此本例的波束形成是完美的。

%配置探测报文vhtSound = cfgVHT;vhtSound。APEPLength = 0;% NDP所以没有数据vhtSound。NumSpaceTimeStreams = NumTxAnts;vhtSound。年代patialMapping =“直接”;%每个TxAnt携带一个STS%产生测深波形soundingPSDU = [];tx = wlanWaveformGenerator(soundingPSDU,vhtSound);%通过通道传递测深波形并添加噪声。落后于0%是为了允许信道滤波器延迟。rx = tgacChannel([tx;NumTxAnts 0(15日)]);允许随后使用相同的通道实现重置(tgacChannel);rx = awgnChannel(rx);%允许随后使用相同的噪声实现重置(awgnChannel);%估计符号时序tOff = wlanSymbolTimingEstimate(rx(ind.LSTF(1):ind.LSIG(2),:),vhtSound.ChannelBandwidth);

使用探测包执行信道估计,以估计每个发射和接收天线之间的实际信道响应。

%信道估计vhtLLTFInd = wlanfieldindiices (vhtSound,“VHT-LTF”);vhtlltf = rx(tOff+(vhtLLTFInd(1):vhtLLTFInd(2)),:);vhtltfdemodule = wlanvhtltfdemomodulation (vhtltf,vhtSound);chanEstSound = wlanVHTLTFChannelEstimate(vhtltfDemod,vhtSound);

估计的信道wlanVHTLTFChannelEstimate函数包括在发射器处应用于每个时空流的循环移位。从信道估计中去除应用于发射机的循环移位以计算波束形成转向矩阵。

changestsound = vhtBeamformingRemoveCSD(changestsound,vhtSound.ChannelBandwidth vhtSound.NumSpaceTimeStreams);

本例使用奇异值分解(SVD)计算波束形成转向矩阵。通道矩阵的SVD得到两个酉矩阵,UV,以及奇异值的对角矩阵年代.第一个NumSTSV每个子载波用作波束形成转向矩阵。SVD是使用圣言会函数。

chanEstPerm = permute(chanEstSound,[3 2 1]);%排序为n -by- nt -by- nst[U,S,V] = pagesvd(n .)“经济学”);steeringMatrix = permute(V(:,1:NumSTS,:),[3 2 1]);%按nst -by- nst -by- nt排序

应用上述计算的波束形成转向矩阵作为自定义空间映射矩阵,并使用它通过同一信道发送数据。

使用波束成形配置传输vhtBF = cfgVHT;vhtBF。年代patialMapping =“自定义”;vhtBF。年代patialMappingMatrix = steeringMatrix;生成波束格式数据传输tx = wlanWaveformGenerator(psdu,vhtBF);%通过通道并添加噪声。落后于0%是为了允许信道滤波器延迟。rx = tgacChannel([tx;NumTxAnts 0(15日)]);rx = awgnChannel(rx);%估计符号时序tOff = wlanSymbolTimingEstimate(rx(ind.LSTF(1):ind.LSIG(2),:),vhtBF.ChannelBandwidth);%信道估计vhtltf = rx(设备+ (ind.VHTLTF (1): ind.VHTLTF (2)),:);vhtltfdemodemod = wlanvhtltfdemomodulation (vhtltf,vhtBF);chanEstBF = wlanVHTLTFChannelEstimate(vhtltfDemod,vhtBF);

解调和均衡接收的数据场,以恢复每个空间流的OFDM符号。

vhtdata = rx(tOff+(ind.VHTData(1):ind.VHTData(2)),:);[~,~,symBF] = wlanVHTDataRecover(vhtdata,chanEstBF,noiseVar,vhtBF,“PilotPhaseTracking”“没有”“LDPCDecodingMethod”“norm-min-sum”);

绘制每个空间流的均衡星座。高阶空间流的方差较大。这是由于在SVD波束形成中使用的信道的有序奇异值。

bfConst = vhtBeamformingPlotConstellation(symBF,refSym,波束形成传输均衡符号);

这种顺序在接收到的时空流的平均功率中也可见。接收到的第一个时空流的功率大于第二个时空流。这是因为接收到的信号强度是SVD以递减方式排序的信道奇异值的函数。

disp (具有SVD发射波束形成的每个时空流的平均接收信道功率:
采用SVD发射波束形成时每个时空流的平均接收信道功率:
i = 1:“时空流%d: %2.2f W\n”,我,总和(意思是(chanEstBF(:,:)。*连词(chanEstBF(:,我,:)),1),3))结束
时空流1:2.08 W时空流2:0.45 W

比较与结论

绘制所有空间流的空间扩展和波束形成传输的均衡星座图。注意改进的星座使用基于svd的发射波束形成。

STR = sprintf(“% dx % d '、NumTxAnts NumRxAnts);compConst = vhtBeamformingPlotConstellation([symSE(:) symBF(:)],refSym,波束形成传输均衡符号{(str“空间扩张”]、[str“发射波束成形”]});

使用RMS和最大误差矢量幅度(EVM)来衡量改进。EVM是对解调信号质量的度量。

EVM = com .EVM;维生素。AveragingDimensions = [1 2];%所有子载波和符号的平均值维生素。MaximumEVMOutputPort = true;维生素。ReferenceSignalSource =“根据参考星座估计”;维生素。ReferenceConstellation = refSym;[rmsEVMSE,maxEVMSE] = EVM(symSE);% EVM使用空间扩展[rmsEVMBF,maxEVMBF] = EVM(symBF);% EVM使用波束成形i = 1:Nss fprintf ['空间流%d EVM:\n'空间扩展:%2.1f%% RMS, %2.1f%% max\n“发射波束成形:%2.1f%% RMS, %2.1f%% max\n”],我,rmsEVMSE(我),maxEVMSE(我),rmsEVMBF(我),maxEVMBF (i));结束
空间流1 EVM:空间扩展:9.2% RMS, 44.8% max发射波束形成:2.0% RMS, 8.6% max空间流2 EVM:空间扩展:9.2% RMS, 52.3% max发射波束形成:4.1% RMS, 12.7% max

这个例子表明,如果接收器能够成为波束形成,那么当传输波束形成时,与空间扩展传输相比,信噪比可能会得到改善。当使用波束成形时,接收功率的增加可以导致更可靠的解调,甚至可能用于传输的更高阶调制和编码方案。

在实际操作仿真中,由于波束形成和反馈量化造成信道状态信息计算与反馈之间的延迟,会降低波束形成的性能。有关更多资讯,请参阅[2]。

参考文献

  1. 信息技术IEEE标准。系统间的电信和信息交换。局域网和城域网。特殊要求。第11部分:无线局域网介质访问控制(MAC)和物理层(PHY)规范。

  2. Perahia, Eldad和Robert Stacey。下一代无线局域网:802.11n和802.11ac。剑桥大学出版社,2013。