802.11ac接收机最小输入灵敏度测试

本示例显示了如何模拟测试,以测量IEEE®802.11ac第22.3.19.1节中规定的接收器最小输入灵敏度™ 标准[1.].

介绍

接收器最小灵敏度测试确保被测设备(DUT)能够在规定的最小信号功率下以10%的规定最大分组错误率(PER)接收数据。最小信号功率取决于IEEE 802.11ac标准表22-25中规定的信道带宽和调制编码方案(MCS)[1.]:

当使用硬件执行测试时,DUT上的每个输入天线端口通过电缆连接到发射器的单个输出天线端口。为测试波形指定以下传输参数:

  • 空间流的数量等于发射天线端口的数量

  • PSDU长度为4096字节

  • 无空时分组编码(STBC)

  • 800ns保护间隔

  • 二进制卷积编码

此示例显示如何使用WLAN工具箱通过端到端模拟构建上述测试™. 在该示例中,在低于最低灵敏度水平和测量的PER的输入水平范围内,用传入VHT分组刺激接收机。

对于每个灵敏度级别,生成测试数据包并将其缩放到所需的信号级别。添加高斯白噪声以在接收器处创建噪声地板。然后解调噪声分组并恢复psdu。将psdu与发送的psdu进行比较,以确定分组错误的数量,从而确定分组错误率。接收机执行自动增益控制(AGC)、包检测、定时同步、载波频率偏移校正、噪声估计和相位跟踪。下图总结了每个数据包的处理过程:

测试参数

使用VHT配置对象指定测试的传输配置。在本例中,使用64-QAM速率5/6调制和编码测量160 MHz传输的最小灵敏度。模拟DUT有2个接收天线。可以更改这些参数以测试不同的配置。

cfgVHT=wlanVHTConfig;%创建VHT传输配置信道带宽=“CBW160”;%带宽cfgVHT.MCS=7;%64-QAM,速率5/6numreceiveantens=2;%接收天线的数量

测试所需的固定变速箱参数设置如下。

cfgVHT.APEPLength=4096;%字节cfgVHT.STBC=false;cfgVHT.NumTransmitAntennas=NumReceiveAntennas;cfgVHT.NumSpaceTimeStreams=NumReceiveAntennas;cfgVHT.SpatialMapping=“直接的”; cfgVHT.GuardInterval=“长”;

模拟参数

在此示例中,在低于最小输入灵敏度水平的输入电平范围内,用VHT分组刺激接收机。测试的偏移范围在矢量中指定TestInputLevelOffset.

TestInputLevelOffset=[-10-9-8-7];%分贝

在每个灵敏度下测试的数据包数量由两个参数控制:

  1. 最大数字错误是在每个输入级别模拟的最大数据包错误数。当数据包错误数达到此限制时,此灵敏度级别的模拟完成。

  2. maxNumPackets是在每个输入级别模拟的最大数据包数,如果未达到数据包错误限制,则限制模拟的长度。

本例中选择的数字将导致非常短的模拟。对于有意义的结果,我们建议增加数字。

最大数值误差=20;maxNumPackets=200;

信号电源设置

最小灵敏度测试指定每个接收天线的测量输入电平的最大PER。在这个模拟中,接收器是用一个测试信号刺激的,该测试信号的输入电平以dBm为单位。测试信号由波形发生器产生,瓦兰波发生器. 波形发生器的输出在内部标准化,以便所有天线的功率总和为0 dBm。因此,对于该模拟,必须缩放波形发生器的输出,以创建所需的输入电平。

首先,根据IEEE 802.11ac标准的表22-25确定传输配置的最小灵敏度[1.].

%20 MHz的接收机最低输入电平灵敏度,表22-25%灵敏度增加3dB,带宽增加一倍。rxMinSensitivityTable=[-82-79-77-74-70-66-65-64-59-57];%数据库管理%获得给定MCS和带宽的最小输入灵敏度fs=wlanSampleRate(cfgVHT);%基带采样率(Hz)B=楼层(10*log10((fs/20e6));%带宽标量rxMinSensitivity=rxMinSensitivityTable(cfgVHT.MCS+1)+B;%数据库管理disp([“MCS的最低灵敏度”num2str(cfgVHT.MCS)', '...num2str(fs/1e6)'兆赫:'num2str(RxM不敏感,“%2.1f”)“dBm”])
MCS7的最小灵敏度,160 MHz:-55.0 dBm

在本例中,将测试低于最低级别的一系列输入级别。这些功率级别由睾丸输入水平.

testInputLevels=rxMinSensitivity+TestInputLevelOffset;%数据库管理

电压标量,A.计算,以缩放每个测试级别的生成波形。在模拟过程中测量每个接收天线端口的功率,以确认输入信号电平是否正确。

A=10^((测试输入水平-30)/20);%电压增益(衰减)A=A*sqrt(cfgVHT.numtransmittenenas);%发电机缩放的原因

噪声配置

用热噪声模拟接收机的噪声地板。噪声地板的高度决定接收器的信噪比,因为该测试的输入信号电平是固定的。接收器的噪声系数决定了地板的噪声水平。

NF=6;%噪声系数(dB)T=290;%环境温度(K)BW=fs;%带宽(Hz)k=1.3806e-23;%玻尔兹曼常数(J/K)噪声地板=10*log10(k*T*BW)+NF;%分贝disp(['接收器噪声地板:'num2str(噪音地板+30,“%2.1f”)“dBm”])
接收机噪声地板:-85.9 dBm

AWGN频道,通信信道,用于向波形添加噪声。

awgnChannel=comm.awgnChannel(“噪音法”,“差异”,...“差异”,10^(噪音地板/10);

输入电平灵敏度模拟

对于每个输入级别,测试多个数据包,并计算数据包错误率。

对于每个数据包,执行以下处理步骤:

  1. PSDU被创建和编码以创建单个数据包波形。

  2. 对波形进行缩放,以创建所需的输入电平(dBm)。

  3. 测量接收波形的功率。

  4. AWGN被添加到接收到的波形中,以创建噪声地板。

  5. 接收到的波形在接收机处理之前通过自动增益控制来增强信号。

  6. 检测到数据包。

  7. 估计并校正粗略载波频率偏移。

  8. 建立精细定时同步。提供L-STF、L-LTF和L-SIG样本进行精细定时,以允许在L-STF的开始或结束时进行数据包检测。

  9. 估计并校正精细载波频率偏移。

  10. 从同步接收波形中提取VHT-LTF,对VHT-LTF进行OFDM解调并进行信道估计。

  11. 从同步接收波形中提取VHT数据字段。使用提取的字段和信道估计恢复PSDU。

ind=WLANFIELDICES(cfgVHT);%用于访问数据包中的字段chanBW=cfgVHT.ChannelBandwidth;rng(0);%为重复性设置随机状态agc=通信agc;%自动增益控制S=numel(测试输入级别);packetErrorRate=0(S,1);rxAntennaPower=0(S,1);对于i=1:S disp([“模拟”num2str(测试输入水平(i),“%2.1f”)...“dBm输入级别…”]);%循环以模拟多个数据包Numpackterors=0;测量功率=零(最大值,1);%每个天线的平均功率numPkt=1;%传输包的索引虽然numPacketErrors<=maxnumerors&&numPkt<=maxNumPackets%生成数据包波形txPSDU=randi([0 1],cfgVHT.PSDULength*8,1);%PSDULength(字节)tx=WLANWAVEORMG发生器(txPSDU,cfgVHT);%将输入信号标度至所需电平rx=tx.*A(i);%测量天线接头处的平均功率,单位为瓦特测量功率(numPkt)=平均值(平均值(rx.*conj(rx));%在接收器处增加噪声地板rx=AWGN信道(rx);%将每个通道通过AGC对于ic=1:尺寸(rx,2)rx(:,ic)=agc(rx(:,ic));复位(agc);终止%分组检测和确定粗分组偏移量粗糙度PKTOFFSET=WLANPACKETDERTECT(rx,chanBW);如果isempty(粗pktoffset)%如果为空,则未检测到L-STF;数据包错误numPacketErrors=numPacketErrors+1;numPkt=numPkt+1;持续;%转到下一个循环迭代终止%提取L-STF并执行粗略频率偏移校正lstf=rx(粗pktoffset+(ind.lstf(1):ind.lstf(2)),:;粗略频率=WLANCARSECOFESTIMATE(lstf,chanBW);rx=助手频率偏移(rx,fs,-频率关闭);%提取非HT字段并确定精细数据包偏移非htfields=rx(粗pktofset+(ind.LSTF(1):ind.LSIG(2)),:;精细pktofset=wlanSymbolTimingEstimate(非htfields,chanBW);%确定最终数据包偏移量pktOffset=粗pktOffset+精pktOffset;%如果检测到数据包超出合理范围(>50个样本);%数据包错误如果pktOffset>50 numPacketErrors=numPacketErrors+1;numPkt=numPkt+1;持续;%转到下一个循环迭代终止%提取L-LTF并执行精细频率偏移校正lltf=rx(pktOffset+(ind.lltf(1):ind.lltf(2)),:;fineFreqOff=wlanfinecfoestate(lltf,chanBW);rx=helperfrequencycoffset(rx,fs,-fineFreqOff);%从波形中提取VHT-LTF样本,解调并执行%信道估计vhtltf=rx(pktOffset+(ind.vhtltf(1):ind.vhtltf(2)),:;VHTLTFDEMOT=WLANVHTLTFDEMOTE(vhtltf,cfgVHT);chanEst=wlanVHTLTFChannelEstimate(VHTLTFDEMO,cfgVHT);%获得单流信道估计chanEstSSPilots=vhtSingleStreamChannelEstimate(VHTLTFDEM,cfgVHT);%从波形中提取VHT数据样本vhtdata=rx(pktOffset+(ind.vhtdata(1):ind.vhtdata(2)),:;%估计VHT数据场中的噪声功率nEstVHT=VHT噪声估计值(VHT数据、信道导频、cfgVHT);%恢复VHT数据中传输的PSDUrxPSDU=wlanVHTDataRecover(vhtdata、chanEst、nEstVHT、cfgVHT);%确定是否有任何位出错,即数据包错误packetError=any(biterr(txPSDU,rxPSDU));numPacketErrors=numPacketErrors+packetError;numPkt=numPkt+1;终止%计算输入电平点的数据包错误率(PER)包装错误率(i)=包装数量/(numPkt-1);显示([“完成后”...num2str(numPkt-1)'每个包:'...num2str(packetErrorRate(i))];%计算每个天线的平均输入功率rxAntennaPower(i)=10*log10(平均值(测量功率(1:(numPkt-1)))+30;显示(['测得的天线连接器电源:'...num2str(rxAntennaPower(i),“%2.1f”)“dBm”]);终止
模拟-65.0 dBm输入电平…在21个数据包后完成,PER:1测得的天线连接器功率:-65.0 dBm模拟-64.0 dBm输入电平…在26个数据包后完成,PER:0.80769测得的天线连接器功率:-64.0 dBm模拟-63.0 dBm输入电平…在130个数据包后完成,PER:0.16154测得的天线连接器功率:-63.0 dBm模拟-62.0 dBm输入电平…在200个数据包后完成,每:0.02测量天线连接器功率:-62.0 dBm

分析和进一步探索

测试输入信号电平的PER以最小灵敏度下的最大PER绘制。

数字符号学(rxAntennaPower、packetErrorRate、,“o-”)持有在…上符号学(RxM不敏感度,0.1,“rx”)currentxlim=xlim(gca);xlim([currentxlim(1)currentxlim(2)+1])电网在…上xlabel('每个天线连接器的测量功率(dBm)'); 伊拉贝尔(“PER”);传奇(“模拟每个性能”,“最小灵敏度下的最大PER”);头衔(斯普林特)(['最小输入灵敏度测试:MCS%d,%d MHz,'...“%d个天线”],cfgVHT.MCS,fs/1e6,cfgVHT.Numtransmitatenenas)

检查图显示,模拟的10%PER比测试规定的最低灵敏度略低8 dB。这一差异是由于测试允许的实现裕度造成的。实现裕度允许与理想AWGN性能相比,由于损伤和接收器噪声系数导致的算法退化e[2.].在本例中,仅将AWGN添加为减值。因此,只有在AWGN存在的情况下,前端同步、信道估计和相位跟踪的算法性能才使用实现裕度。如果在模拟中包含更多的损伤,则图中的每个瀑布将向右移动至最小灵敏度,且裕度将减小。

在每个信噪比点测试的数据包数量由两个参数控制;最大数字错误maxNumPackets。对于有意义的结果,建议这些值应大于本示例中给出的值。

附录

此示例使用以下帮助器函数:

精选书目

  1. IEEE标准802.11ac™-2013 IEEE信息技术标准-系统间电信和信息交换-局域网和城域网-特定要求-第11部分:无线LAN介质访问控制(MAC)和物理层(PHY)规范.修改件4:在低于6GHz频带内运行的超高吞吐量增强。

  2. 《下一代无线局域网:802.11n和802.11ac》。剑桥大学出版社,2013年。