文档

BLE阻塞,互调,载波干扰性能测试

这个例子展示了如何建模蓝牙®低能量(bie) RF-PHY接收机测试特定于阻塞,互调,载波干涉(C / I)按蓝牙RF-PHY性能测试规范(1]对蓝牙协议使用通信工具箱™库。

背景

蓝牙RF-PHY测试规范(1]定义为蓝牙特别兴趣小组(SIG)包括RF-PHY测试发射机和接收机。这些RF-PHY测试的目标是确保所有祝福设备之间的互操作性和验证一个基本水平的系统性能保证为所有祝福的产品。下载188bet金宝搏每个测试用例都有一个指定的测试程序和预期结果,必须满足的实现被测(IUT)。

介绍

蓝牙接收机测试是为了确保IUT可以在一系列条件接收数据信号传输高功率,在带内和带外干扰的定义包错误率(每)。这个例子包括三个祝福RF-PHY接收机测试阻塞,互调和C /我性能按蓝牙RF-PHY测试规范(1]。

  • 屏蔽性能:屏蔽性能测试验证接收机性能的带外干扰信号即操作外的2400 MHz - 2483.5 MHz频带。

  • 互调性能:互调性能测试验证接收机性能在附近存在不必要的信号频率。

  • C /我表现:C / I性能测试验证接收机性能存在相邻,同信道干扰信号。

上述RF-PHY测试是必要的,因为想要的信号通常不会是唯一的信号传输在给定的频率范围。

下面的框图总结了示例流。

  1. 生成测试数据包,通过bleWaveformGenerator生成BLE测试波形。

  2. 执行频率上转换获得通频带的信号。

  3. 规模所需的输入电平的信号传输。

  4. 加入干扰信号(s)取决于性能测试。

  5. 基于接收机噪声地板添加高斯白噪声。

  6. 在接收机,把信号然后解调、解码和执行CRC校验。

  7. 测量每基于CRC校验,然后比较其与参考每。

检查支持包安装金宝app

%检查的蓝牙协议的通信工具库%安金宝app装支持包。comm金宝appSupportPackageCheck (“蓝牙”);

初始化仿真参数

你可以改变rxPerformanceTest,phyMode足球俱乐部参数在接收机性能测试的基础上,分别体育传播模式和操作的频率。

rxPerformanceTest =“互调”;%选择一个从集合{“C /我”、“阻塞”,“互调”}%选择体育传播模式按蓝牙RF-PHY测试规范phyMode =“LE1M”;% {LE1M、LE2M LE500K, LE125K}为C / I% {LE1M, LE2M}阻塞和互调%选择频率IUT基于性能测试和操作%的通用访问配置文件(GAP)的作用(s)如下表所示。% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -%操作|外围和中心设备|广播和观察者设备|%频率| | |% (MHz) | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |% | C /我堵住| |互调| C /我堵住| |互调|% - - - - - - - - - - - | - - - | - - - - - - - - - - - | - - - - - - - - - - - - - - - - - - | - - - | - - - - - - - - - - - | - - - - - - - - - - - - - - - - - |最低% | 2406 | - | 2402 | 2402 | 2402 | - |中间% | 2440 | 2426 | 2440 | 2426 | 2426 | 2426 |最高% | 2476 | - | 2480 | 2480 | 2480 | - |% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Fc = 2426 e6;%在赫兹的频率payloadLength =37;%载荷字节长度,必须在[37255]sps = 40;%每个符号的样本数量%计算采样率在赫兹基于体育传播模式Rsym = 1 e6;如果比较字符串(phyMode“LE2M”)Rsym = 2 e6;结束Fs = Rsym * sps;

生成基带波形

这个函数,helperBLETestWaveform.m可以配置为生成一个BLE测试包波形按蓝牙规范(2]。在本例中,想要和干扰可以生成基带波形通过改变有效载荷类型参数。

%生成想要的信号总是PRBS9调制载波%的有效载荷payloadTypeWanted = 0;%有效载荷类型PRBS9序列wantedWaveform = helperBLETestWaveform (phyMode payloadTypeWanted payloadLength, sps);% # 1产生干扰信号的调制载波% PRBS15载荷payloadTypeInterference = 3;%有效载荷类型PRBS15序列interferenceWaveform1 = helperBLETestWaveform (phyMode payloadTypeInterference payloadLength, sps);

频率上转换

应用频率上转换获得指定频率通带信号的操作。

%的插值因素上转换BLE射频频段%(2485年2400 e6 e6)interpFactor =装天花板(2 * 2485 e6 / Fs);%创建一个数字升频器系统对象upConv = dsp.DigitalUpConverter (“InterpolationFactor”interpFactor,“SampleRate”Fs,“带宽”2 e6,“StopbandAttenuation”44岁的“PassbandRipple”,0.5,“CenterFrequency”、Fc);% Upconvert通频带的基带波形wantedWaveformUp = upConv ([wantedWaveform; 0 (8 * sps, 1)]);

生成测试参数

测试参数的生成是基于性能测试、操作频率层和物理层传输模式。这个函数,helperBLETestParamGenerate.m,用于生成所有干扰频率和相应比例因素(α,β,γ)选定的接收性能测试。

(α,β,γ,interferenceFreq1 interferenceFreq2] =helperBLETestParamGenerate (rxPerformanceTest Fc, phyMode);

重复测试参数基于数据包的数量用于仿真。

pktCnt = 10;%的数据包数量maxInterferenceParams = min(长度(interferenceFreq1), pktCnt);%用于模拟干扰参数的最大数量%重复所有干扰参数,这样可以平均每结束%整个选择接收机的干扰频率范围%的性能测试。repFact =装天花板(pktCnt / maxInterferenceParams);%重复的因素betaRep = repmat(βrepFact 1);gammaRep = repmat(γrepFact 1);interferenceFreq1Rep = repmat (interferenceFreq1 repFact 1);interferenceFreq2Rep = repmat (interferenceFreq2 repFact 1);

测试模拟

在这个例子中,所有三个祝福RF-PHY性能测试模拟如下:

  • 为屏蔽性能,会有只有一个干扰信号即干扰信号# 2。所以,干扰信号的比例因子(β)# 1是零。

  • 互调性能,将会有两个干扰信号。

  • 为C / I性能,将会有只有一个干扰信号即干扰信号# 1。所以,干扰信号的比例因子(γ)# 2是零。

% Upconvert和存储干扰波形# 1基于缓冲区%的大小,以便存储干扰波形可以重用%的数据包数超过缓冲区的大小。interferenceWaveform1Up = 0(长度(wantedWaveformUp), maxInterferenceParams);如果任何(strcmp (rxPerformanceTest, {“C /我”,“互调”}))i = 1: maxInterferenceParams释放upConv (upConv)。CenterFrequency = interferenceFreq1Rep(我);interferenceWaveform1Up(:,我)= upConv ([interferenceWaveform1; 0 (8 * sps, 1)]);结束结束%初始化一个变量为重用的干扰波形# 1j =快速眼动(1:pktCnt, maxInterferenceParams);j (j = = 0) = maxInterferenceParams;%创建一个数字转换器系统对象downConv = dsp.DigitalDownConverter (“DecimationFactor”interpFactor,“SampleRate”Fs * interpFactor,“带宽”2 e6,“StopbandAttenuation”44岁的“PassbandRipple”,0.5,“CenterFrequency”、Fc);%创建自动增益控制系统对象agc = comm.AGC (“DesiredOutputPower”1);%创建一个热噪声系统对象NF = 12;%噪声图(dB)thNoise = comm.ThermalNoise (“NoiseMethod”,“噪声图”,“SampleRate”,interpFactor * Fs,“NoiseFigure”、NF);%的时间向量生成正弦信号即未调制的干涉。% # 2干扰信号。t =(0:(长度(wantedWaveformUp) 1))。/ (interpFactor * Fs);pktLost = 0;%初始化计数器我= 1:pktCnt%产生干扰波形正弦# 2%未调制的信号。sqrt(2)因素确保的力量%正弦信号是标准化的。interferenceWaveform2 = sqrt (2) * sin(2 *π* interferenceFreq2Rep(我)* t);%添加想要的信号干扰信号rxWaveform =α* wantedWaveformUp + betaRep(我)* interferenceWaveform1Up (:, j (i)) + gammaRep (i) * interferenceWaveform2;chanOut = thNoise(复杂的(rxWaveform));%添加热噪声信号downConvOut = downConv(真正的(chanOut));%完成频率转换agcOut = agc (downConvOut);%应用自动增益控制(有效载荷,accessAddr) = bleIdealReceiver (agcOut,“模式”phyMode,“SamplesPerSymbol”,sps);%提取消息信息[crcFail, pdu] = helperBLETestPacketValidate(有效载荷,accessAddr);%验证BLE测试包pktLost = pktLost + crcFail;结束%确定每每= pktLost / pktCnt;

光谱可视化

创建和配置一个频谱分析仪和显示去年希望传播信号和干扰信号的频谱(s)基于接收机的性能测试。

%设置频谱查看器spectrumScope = dsp.SpectrumAnalyzer (“SampleRate”,interpFactor * Fs,“SpectralAverages”10“YLimits”(-160 0),“标题”,想要和干扰信号的频谱,“SpectrumUnits”,dBm的,“NumInputPorts”2,“ChannelNames”,{“想要的信号”,干扰信号的},“ShowLegend”,真的,“FrequencySpan”,启动和停止的频率的,“StartFrequency”2400 e6,“StopFrequency”2485 e6,“RBWSource”,“属性”,“RBW”1 e5,“PlotAsTwoSidedSpectrum”、假);如果比较字符串(rxPerformanceTest“C /我”)spectrumScope(α* wantedWaveformUp betaRep(结束)* interferenceWaveform1Up(:,结束)elseif比较字符串(rxPerformanceTest“阻止”)spectrumScope。StartFrequency = 30 e6;spectrumScope(α* wantedWaveformUp gammaRep(结束)* interferenceWaveform2)其他的spectrumScope。NumInputPorts = 3;spectrumScope。ChannelNames = {“想要的信号”,的干扰信号# 1,“干扰信号# 2”};spectrumScope(α* wantedWaveformUp betaRep(结束)* interferenceWaveform1Up(:,结束),gammaRep(结束)* interferenceWaveform2)结束

参考结果

本节生成参考每值为每个体育传播模式基于负载长度在6.4节中指定的蓝牙RF-PHY测试规范(1]。

berTable = (0.1 - 0.064 0.034 - 0.017) * 0.01;如果(payloadLength < = 37) refBER = berTable (1);elseif(payloadLength < = 63) refBER = berTable (2);elseif(payloadLength < = 127) refBER = berTable (3);其他的refBER = berTable (4);结束accessAddLen = 4;%访问地址长度字节crcLengthBytes = 3;% CRC长度字节pduHeaderLen = 2;%头长度字节refPER = 1 - (1-refBER) ^ ((payloadLength + accessAddLen + pduHeaderLen + crcLengthBytes) * 8);流(有效载荷的测量每和参考% f % d个字节的长度,分别% f。\ n”,每payloadLength refPER);
测量每和参考负载37个字节的长度是0.000000,0.308010。
如果每个< = refPER流(“% s性能测试通过。\ n”,rxPerformanceTest);其他的流(“% s性能测试失败了。\ n”,rxPerformanceTest);结束
互调性能测试通过。

附录

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

选定的参考书目

  1. 蓝牙RF-PHY测试规范。

  2. 第六卷蓝牙核心规范,版本5.0核心系统包(低能量控制器体积)。