主要内容

802.11ac波形生成与MAC帧

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

介绍

WLAN工具箱™可用于生成执行接收器测试的标准兼容波形。一个基本的WLAN接收器测试场景如下图所示。

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

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

  • MAC头

  • 框体

  • FCS

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

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

802.11ac VHT格式配置

通过以下方法合成的VHT波形的特定格式配置:wlanWaveformGenerator功能由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

波形生成配置

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

numPackets=4;%生成4个数据包idleTime = 20 e-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,并连接到一个向量中数据用于与wlanWaveformGenerator函数。创建连接的PSDU位的处理过程数据如图所示:

%创建帧配置macCfg = wlanMACFrameConfig (“框架类型”,“QoS数据”); macCfg.FrameFormat=“VHT”%帧格式macCfg.MSDUAggregation=true;%内部形成A-MSDUsbitsPerByte = 8;% 1字节的位数数据= [];对于i=1:numPackets%获取MSDU长度来创建一个随机有效载荷,形成a - mpdu%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,apepLength]=wlanMACFrame(msdu,macCfg,vhtCfg,“输出格式”,“比特”);%在VHT配置中设置APEP长度vhtCfg.APEPLength=APEPLength;%连接数据包PSDU以生成波形数据=[数据;psdu];% #好< AGROW >终止

生成基带波形

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

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

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

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

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

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

spectrumAnalyzer=dsp.spectrumAnalyzer;spectrumAnalyzer.SampleRate=fs;spectrumAnalyzer.SpectrumType=的功率密度; spectrumAnalyzer.RBWSource=“属性”;简介。RBW = 100年e3;简介。AveragingMethod =“指数型”; 频谱分析遗忘因子=0.99;频谱分析仪=“PSD”;spectrumAnalyzer.标题=“基带IEEE 802.11ac波形”; 频谱分析仪(TX波形);释放(频谱分析仪)

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

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

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

%控制是否将波形下载到波形发生器playOverTheAir=假;%将基带IQ波形下载至仪器。生成RF输出功率为-10 dBm,中心频率为5.25 GHz。如果playOverTheAir fc=5.25e9;%#ok< unch > %中心频率权力= -10;%输出功率loopCount =正;%表示要循环的时间%配置信号发生器,下载波形和环路射频= rfsiggen ();射频。资源='TCPIP0::192.168.0.1::inst0::INSTR';射频。司机=“AgRfSigGen”; 连接(rf);%连接到仪器下载(射频、TX波形、fs);%将波形下载到仪器中开始(射频、fc、电力、loopCount);%开始发送波形%完成传输后,停止波形输出停止(rf);断开(rf);终止

选定的参考书目

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