主要内容

使用MAC帧生成802.11ac波形

此示例显示如何生成IEEE®802.11ac™ 包含MAC帧的传输,适用于执行无线电分组错误率(PER)接收器测试。

介绍

无线局域网工具箱™ 可用于生成标准兼容波形,以执行接收器测试。下图显示了一个基本的WLAN接收器测试场景。

被测设备(DUT)通常通过有线链路通过射频测试向量进行刺激。分组错误率(PER)是用于在存在噪声、干扰或其他损害的情况下,在给定接收信号功率下测试接收器性能的指标。PER定义为错误解码的数据包数除以传输的数据包总数。

MAC帧内的帧检查序列(FCS)用于确定接收机是否正确解码了MAC帧,从而确定是否错误接收了数据包。IEEE 802.11ac的通用MAC帧包含以下字段:

  • MAC头

  • 框体

  • 未来作战系统

要从更高层传输的数据包含在MAC帧的帧体中。发送方对MAC报头和帧体字段使用循环冗余校验来生成FCS值。接收方计算CRC并将其与接收到的FCS字段进行比较,以确定传输过程中是否发生错误。

在本例中,生成由多个VHT格式数据包组成的IEEE 802.11ac波形瓦兰波发生器函数可用于生成包含一个或多个数据包的波形。这个瓦兰波发生器函数为每个数据包使用物理层服务数据单元(PSDU),并执行适当的物理层处理以创建波形。包含MAC报头和有效FCS的PSDU可以使用wlanMACFrame作用在该示例中,合成了包含MAC分组的多分组基带波形。该波形可下载至信号发生器进行射频传输,并用于每次测试的接收器。提供了使用按键技术下载和播放波形的源代码™ N5172B信号发生器。示例处理如下图所示:

802.11ac VHT格式配置

通过以下方法合成的VHT波形的特定格式配置:瓦兰波发生器功能由VHT格式配置对象描述,wlanVHTConfig. 对象的属性包含配置。在此示例中,对象配置为160 MHz带宽、1个发射天线、1个空时流和QPSK速率1/2(MCS 1)。

vhtCfg=wlanVHTConfig;%创建数据包配置信道带宽=“CBW160”;%160MHz信道带宽vhtCfg.NumTransmitAntennas=1;%1发射天线vhtCfg.NumSpaceTimeStreams=1;%1时空流vhtCfg.MCS=1;%调制:QPSK速率:1/2

波形生成配置

这个瓦兰波发生器函数可配置为生成一个或多个数据包,并在每个数据包之间添加空闲时间。函数可配置为生成过采样或标称速率波形。在本例中,将创建四个具有20微秒空闲周期的过采样数据包。

numPackets=4;%生成4个数据包空闲时间=20e-6;%数据包后20微秒的空闲时间过采样系数=1.5;%过采样波形1.5倍标称基带速率

使用每个分组的随机种子对每个分组中传输的PSDU进行加扰。这是通过指定加扰器初始化种子的向量来实现的。种子的有效范围介于1和127之间(含1和127)。

%使用每个数据包的随机整数初始化扰码器扰码初始化=随机数([1 127],numPackets,1);

为每个数据包创建一个PSDU

对于IEEE 802.11ac数据传输,MAC帧被称为MAC协议数据单元(MPDU),MAC报头被称为MPDU报头,帧体是聚合MAC服务数据单元(a-MSDU)。对一个或多个MPDU进行分隔、填充和聚合,以创建聚合MPDU(A-MPDU)。A-MPDU被分隔和填充以形成物理层服务数据单元(PSDU),该物理层服务数据单元被编码和调制以创建所传输的分组。此封装过程如下图所示:

在此示例中,创建了一个PSDU,其中每个数据包包含一个MPDU。MPDU由MPDU头、A-MSDU帧和有效的FCS组成,A-MSDU帧包含带有随机数据的连接A-MSDU子帧。这个wlanMACFrame函数创建带有EOF分隔符和填充的A-MPDU,即PSDU,如中所述[1.]。它还返回A-MPDU的长度,称为APEP长度,用于设置丰满的VHT配置对象的属性。为每个数据包生成一个PSDU,并连接到一个向量中数据用于使用瓦兰波发生器作用创建串联PSDU位的处理数据如下图所示:

%创建帧配置macCfg=wlanMACFrameConfig(“框架类型”,“QoS数据”); macCfg.FrameFormat=“VHT”;%帧格式macCfg.MSDUAggregation=true;%内部形成A-MSDUs比特数=8;%1字节中的位数数据=[];对于i=1:numPackets%获取MSDU长度以创建随机有效载荷,以形成%4048八位字节(EOF前填充)msdulength=wlanmsdulength(4048、macCfg、vhtCfg);msdu=单元(numel(msdulength),1);%使用获得的长度创建MSDU对于j=1:numel(msdulength)msdu{j}=randi([0255],1,msdulength(j));终止%生成包含带EOF分隔符和填充的A-MPDU的PSDU位[psdu,apepLength]=wlanMACFrame(msdu,macCfg,vhtCfg,“输出格式”,“比特”);%在VHT配置中设置APEP长度vhtCfg.APEPLength=APEPLength;%连接数据包PSDU以生成波形数据=[数据;psdu];%#好的终止

生成基带波形

所有数据包的级联PSDU位,数据,作为参数传递给瓦兰波发生器与VHT数据包配置对象一起运行vhtCfg。这将配置波形发生器以合成802.11ac VHT波形。以生成802.11n™ HT或其他格式的波形,例如,使用不同的格式配置对象wlanHTConfigwlanNonHTConfig。波形发生器还使用名称-值对进行配置,以在数据包和初始加扰器状态之间产生具有指定空闲时间的多个过采样数据包。

%生成基带VHT数据包txWaveform=wlanWaveformGenerator(数据,vhtCfg,...“NumPackets”,numPackets,“空闲时间”,空闲时间,...“加扰初始化”,加扰初始化,...“过采样因子”,过采样因子);fs=wlanSampleRate(vhtCfg,“过采样因子”,过采样因子);disp(['基带采样率:'num2str(fs/1e6)“Msps”]);
基带采样率:240毫秒/秒

基带波形的幅度如下所示。注意配置的数据包数量和空闲时间。

图形绘图(abs(TX波形));xlabel(“样本索引”); 伊拉贝尔(“震级”);头衔(“基带IEEE 802.11ac波形”);传奇(“发射天线1”);

图中包含一个轴对象。标题为基带IEEE 802.11ac波形的axes对象包含line类型的对象。此对象表示发射天线1。

使用以下命令查看生成的时域波形的频谱:DSP系统工具箱频谱分析仪. 正如预期的那样,160 MHz信号带宽清晰可见。

spectrumAnalyzer=dsp.spectrumAnalyzer;spectrumAnalyzer.SampleRate=fs;spectrumAnalyzer.SpectrumType=“功率密度”; spectrumAnalyzer.RBWSource=“财产”; spectrumAnalyzer.RBW=100e3;频谱分析仪平均法=“指数型”; 频谱分析遗忘因子=0.99;频谱分析仪=“PSD”;spectrumAnalyzer.标题=“基带IEEE 802.11ac波形”; 频谱分析仪(TX波形);释放(频谱分析仪)

Figure频谱分析仪包含一个轴对象和uiflowcontainer、uimenu、uitoolbar类型的其他对象。标题为基带IEEE 802.11ac波形的轴对象包含一个line类型的对象。此对象表示通道1。

使用射频信号发生器生成空中信号

由WLAN工具箱创建的基带波形现在可以下载到信号发生器以执行接收器测试。使用仪表控制工具箱使用Keysight Technologies N5172B信号发生器生成中心频率为5.25 GHz RF的射频信号。

%控制是否将波形下载到波形发生器playOverTheAir=假;%将基带IQ波形下载至仪器。生成RF%信号中心频率为5.25 GHz,输出功率为-10 dBm。如果playOverTheAir fc=5.25e9;%#正常%中心频率功率=-10;%输出功率loopCount=Inf;%循环次数%配置信号发生器,下载波形和环路rf=rfsiggen();rf.Resource='TCPIP0::192.168.0.1::inst0::INSTR'射频驱动器=“AgRfSigGen”; 连接(rf);%连接到仪器下载(射频、TX波形、fs);%将波形下载到仪器中启动(射频、射频、功率、环路计数);%开始发送波形%完成传输后,停止波形输出停止(rf);断开(rf);终止

精选书目

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