该示例演示了如何测量NR测试模型(NR- tm)或固定参考信道(FRC)波形的误差矢量幅值(EVM)。该示例还展示了如何添加损害,包括相位噪声和无记忆非线性。
对于基站射频测试,3GPP 5G NR标准定义了一组NR- tm波形。对于用户设备(UE)测试,该标准定义了一组FRC波形。频率范围1 (FR1)的NR-TMs和frc定义在TS 38.141-1中,频率范围2 (FR2)的NR-TMs和frc定义在TS 38.141-2中。
这个例子展示了如何生成NR波形(TM或FRC)和添加损伤。这里我们考虑相位噪声和无记忆非线性。然后我们计算得到的信号的EVM。我们绘制了每个OFDM符号、槽和副载波的均方根和峰值evm。我们还计算了整体EVM (RMS EVM在整个波形上的平均值)。TS 38.104的附件B和附件C分别定义了一种计算FR1和FR2中的EVM的替代方法。下图显示了本示例中实现的处理链。
每个NR-TM或FRC波形由以下组合定义:
NR-TM / FRC的名字
信道带宽
副载波间距
双工模式
%为FR1和FR2选择15版nr - tm中的一个:%”NR-FR1-TM1.1”、“NR-FR1-TM1.2”、“NR-FR1-TM2”,%”NR-FR1-TM2a”、“NR-FR1-TM3.1”、“NR-FR1-TM3.1a”,%”NR-FR1-TM3.2”、“NR-FR1-TM3.3”、“NR-FR2-TM1.1”,%”NR-FR2-TM2”、“NR-FR2-TM3.1”%或%为FR1和FR2选择15版frc中的一个:%”DL-FRC-FR1-QPSK”、“dl - frc - fr1 - 64 - qam”,%”dl - frc - fr1 - 256 - qam”、“DL-FRC-FR2-QPSK”,%”DL-FRC-FR2-16QAM”、“dl - 64 - qam frc - fr2”rc =“NR-FR1-TM3.2”;%参考通道(NR-TM或FRC)%选择NR波形参数bw =“10 mhz”;%通道带宽scs =“30千赫”;%副载波间距dm =“FDD”;%双工模式
对于TMs,产生的波形可能包含多个PDSCH。选择的PDSCH分析是基于RNTI。默认情况下,EVM计算考虑以下rti:
nr - fr1 - t2: rnti = 2 (64qam evm)
NR-FR1-TM2a: RNTI = 2 (256QAM EVM)
NR-FR1-TM3.1: RNTI = 0 and 2 (64QAM EVM)
NR-FR1-TM3.1a: RNTI = 0 and 2 (256QAM EVM)
Nr-fr1-tm3.2: rnti = 1 (16qam evm)
Nr-fr1-tm3.3: rnti = 1 (qpsk evm)
nr - fr2 - t2: rnti = 2 (64qam evm)
NR-FR2-TM3.1: RNTI = 0 and 2 (64QAM EVM)
根据规范(TS 38.141-1, TS 38.141-2),这些TMs不是设计来执行EVM测量的:NR-FR1-TM1.1, NR-FR1-TM1.2, NR-FR2-TM1.1。但是,如果您生成了这些TMs,则示例将度量以下rtis的EVM。
Nr-fr1-tm1.1: rnti = 0 (qpsk evm)
Nr-fr1-tm1.2: rnti = 2 (qpsk evm)
Nr-fr2-tm1.1: rti = 0 (qpsk evm)
对于frc,默认情况下,EVM计算考虑的是RNTI 0。如果输入波形既不是TM波形也不是FRC波形,则最多支持一层EVM测量。金宝app
该示例计算上面列出的rtis的EVM。要覆盖默认的rtis,请指定targetRNTIs
向量
targetRNTIs = [];
要打印EVM统计信息,请设置displayEVM
来真正的
.若要禁用打印,请设置displayEVM
来假
.要绘制EVM统计数据,请设置plotEVM
来真正的
.若要禁用绘图,请设置plotEVM
来假
displayEVM = true;plotEVM = true;
如果displayEVM流('引用通道= %s\n'、rc);结束
参考通道= NR-FR1-TM3.2
测量TS 38.104附件B(FR1) /附件C(FR2)中定义的EVM,设置evm3GPP
来真正的
.evm3GPP
默认禁用。
evm3GPP = false;
创建波形发生器对象并生成波形
tmwavegen = hNRReferenceWaveformGenerator (rc, bw, scs, dm);[txWaveform, tmwaveinfo resourcesinfo] = generateWaveform (tmwavegen tmwavegen.Config.NumSubframes);
这个例子考虑了两个缺陷:相位噪声和无记忆非线性。通过切换标志启用或禁用损害phaseNoiseOn
和nonLinearityModelOn
.
phaseNoiseOn = true;nonLinearityModelOn = true;
将波形归一化以拟合非线性的动态范围。
txWaveform = txWaveform / max (abs (txWaveform), [],“所有”);
该波形包括一帧FDD和两帧TDD。重复两次这个信号。我们将去除产生的波形的前半部分,以避免相位噪声模型引入的瞬态。
txWaveform = repmat (txWaveform 2 1);
引入相位噪声失真。图中显示了相位噪声特性。所考虑的载波频率取决于频率范围。我们对FR1和FR2分别使用4 GHz和28 GHz的值。相位噪声特性是由R1-163984“相位噪声建模讨论”中描述的极点/零模型产生的。
如果phaseNoiseOn sr = tmwaveinfo.Info.SamplingRate;%载波频率如果tmwavegen.Config.FrequencyRange = =“FR1”%载波频率为FR1fc = 4 e9;其他的FR2的载频%fc = 30 e9;结束%计算相位噪声电平。foffsetLog = (4:0.1: log10 (sr / 2));从1e3Hz到sr/2的模型偏移%foffset = 10。^ foffsetLog;线性频率偏移量PN_dBc_Hz = hPhaseNoisePoleZeroModel (foffset、fc、“C”);图;semilogx (foffset PN_dBc_Hz);包含(频率偏移(Hz)”);ylabel (“dBc /赫兹”);标题(的相位噪声模型);网格在%对波形施加相位噪声pnoise = comm.PhaseNoise (“FrequencyOffset”foffset,“水平”PN_dBc_Hz,“SampleRate”、sr);pnoise。RandomStream =“与种子mt19937ar”;rxWaveform = 0(大小(txWaveform),“喜欢”, txWaveform);为rxWaveform(:,i) = pnoise(txWaveform(:,i)); / / rxWaveform(:,i)发行版(pnoise)结束其他的rxWaveform = txWaveform;% #好< UNRCH >结束
引入非线性失真。对于本例,使用Rapp模型。图中显示了引入的非线性。设置Rapp模型的参数,以匹配TR 38.803“无记忆多项式模型-附录A.1”中的无记忆模型的特性。
如果nonLinearityModelOn rapp = com . memoryless非线性(“方法”,“拉普模式”);拉普。平滑度= 1.55;拉普。OutputSaturationLevel = 1;绘制非线性特性plotNonLinearCharacteristic (rapp);%应用非线性为i = 1:size(rx波形,2)rx波形(:,i) = rapp(rx波形(:,i));发行版(拉普)结束结束
这个信号之前重复了两次。去掉这个信号的前半部分。这避免了损伤模型引入的任何瞬态。
如果dm = =“FDD”nFrames = 1;其他的% TDDnFrames = 2;结束rxWaveform (: 1: nFrames * tmwaveinfo.Info.SamplesPerSubframe * 10日)= [];
hNRPDSCHEVM函数执行以下步骤来解码和分析波形:
使用DM-RS同步FDD的一帧(TDD的两帧)
接收波形的OFDM解调
信道估计
均衡
共相位误差(CPE)的估计与补偿
PDSCH EVM计算(使能开关evm3GPP
,根据TS 38.104附件B (FR1) /附件C (FR2)中规定的EVM测量要求进行处理。
该示例测量并输出每个符号、每个槽、每个帧峰值EVM和RMS EVM的各种EVM相关统计信息。该示例显示了每个插槽和帧的EVM。它还显示整个输入波形上的EVM平均值。该示例生成了许多图:EVM vs每个OFDM符号、槽、子载波和总体EVM。每个图显示峰值与RMS EVM。
cfg =结构();cfg。Evm3GPP = Evm3GPP;cfg。TargetRNTIs = TargetRNTIs;cfg。PlotEVM = PlotEVM;cfg。DisplayEVM = DisplayEVM;cfg。Label = tmwavegen.ConfiguredModel{1};计算和显示EVM测量值[evmInfo, eqSym refSym] = hNRPDSCHEVM (tmwavegen.Config、rxWaveform cfg);
维生素与统计为BWP idx: 1 RMS维生素,维生素与峰值,槽0:2.850 - 7.856% RMS维生素,维生素与峰值,插槽1:3.102 - 9.824% RMS维生素,维生素与峰值,槽2:2.834 - 7.085% RMS维生素,维生素,槽3:3.001 - 9.065% RMS维生素,维生素,槽4:3.021 - 8.534% RMS维生素,维生素,槽5:3.278 - 9.404% RMS维生素,维生素,槽6:2.908 - 7.831% RMS维生素,维生素,槽7:3.277 - 10.594% RMS维生素,维生素,槽8:2.956 - 8.429% RMS维生素,维生素,槽9:3.226 - 10.358% RMS维生素,维生素,槽10:2.798 - 8.623% RMS维生素,维生素,槽11:2.862 - 10.057% RMS维生素,维生素,槽12:3.143 - 10.240% RMS维生素,维生素,插槽13:2.972 - 8.496% RMS维生素,维生素,插槽14:2.831 - 8.171% RMS维生素,维生素,槽15:2.913 9.364% RMS EVM,峰值EVM, slot 16: 3.076 8.554% RMS EVM,峰值EVM, slot 17: 3.069 8.106% RMS EVM,峰值EVM, slot 18: 3.272 11.256% RMS EVM,峰值EVM, slot 19: 2.787 8.312%平均RMS EVM帧0:3.013%平均总体RMS EVM: 3.013%总体峰值EVM = 11.2561%
函数plotNonLinearCharacteristic (memoryLessNonlinearity)%绘制功率放大器(PA)损伤的非线性特性图%由输入参数memorylessnonlinear表示,为a% comm.无内存非线性通信工具箱(TM)系统对象。%的输入样本x =复杂(1 /√(2))*(1 + 2 *兰特(1000 1)),(1 /√(2))*(1 + 2 *兰特(1000 1)));%非线性yRapp = memoryLessNonlinearity (x);%释放对象以提供不同数量的样本释放(memoryLessNonlinearity);%的情节特征图;图(10 * log10 (abs (x) ^ 2), 10 * log10 (abs (x) ^ 2));持有在;网格在图(10 * log10 (abs (x) ^ 2), 10 * log10 (abs (yRapp) ^ 2),“。”);包含(输入功率(瓦分贝)”);ylabel (的输出功率(瓦分贝));标题(“非线性损伤”)传说(线性特性的,“拉普非线性”,“位置”,“西北”);结束