主要内容

报告信道质量指标(CQI)一致性测试

这个例子演示了如何在TS36.101章节9.3.2.1.1中定义的一致性测试条件下,使用LTE工具箱™测量信道质量指标(CQI)报告性能。

介绍

此示例突出显示了LTECQISELECT.提供CQI估计的函数。还测试了CQI估计的性能。该示例提供了一个测试台,表明LTE工具箱可以满足TS36.101第9.3.2.1.1节中定义的CQI报告性能测试[1]。试验的性能要求如下:

  • 不在集合{中值CQI-1,中值CQI+1}中的CQI指数应至少在20%的时间内报告;

  • 发送各上报的宽带CQI指标所指示的传输格式时获得的吞吐量与发送按宽带CQI中值配置的固定传输格式时获得的吞吐量之比为>= 1.05;

  • 当传输由每个报告的宽带CQI索引指示的传输格式时,指示的传输格式的平均BLER应大于或等于0.02。

此示例测试这些需求是否满足。

模拟配置

该示例执行了模拟长度为10帧,信噪比为6.0dB。大量的NFrames应该用来产生有意义的结果。

NFrames = 10;SNRdB = 6.0;

eNodeB配置

eNodeB设置是在结构中指定的enb.这包括一个子结构PDSCH根据一致性测试要求配置PDSCH:通过将RV序列设置为零,将值设置为CSIMode表9.3.2.1.1-1 [1]。

enb =结构(“钢筋混凝土”“R.3”);%设置RMC R.3参数enb=lteRMCDL(enb);enb.CFI=3;%重新配置控制格式指示灯enb.OCNGPDSCHEnable=“上”%为未分配的PDSCH资源启用OCNGenb。TotSubframes = 1;%为单个子帧重新配置enb.PDSCH.RVSeq=0;%禁用HARQ.enb.PDSCH.CSIMode='PUCCH 1-0'%配置CSI报告模式enb.PDSCH.CSI =“上”%软比特的CSI缩放

传播信道模型配置

的结构、通道,包含通道模型配置参数。

通道。种子= 10;%通道种子channel.nrxants = 2;% 2接收天线频道延迟配置文件=“环保署”%延迟曲线channel.DopplerFreq=5.0;%多普勒频率通道。MIMOCorrelation =“高”%多天线相关性channel.ModelType='gmeds'%瑞利衰落模型类型通道。NormalizeTxAnts =“上”%发射天线的标准化通道。NormalizePathGains =“上”正规化延迟轮廓功率通道初始化阶段=“随机”%随机初始相位通道。NTerms = 16;褪色模型中使用的%振荡器%设置信道模型采样率OFDMINFO = LTEOFDMINFO(eNB);Channel.SamplingRate = OFDMINFO.SAMPLINGRATE;

信道估计配置

信道估计器配置了一种结构cec.的变量perfectChanEstimator控制信道估计器行为。有效的值真的.当设置为真的使用完美信道估计器,否则使用基于接收导频信号值的不完美信道估计。在这个例子中,我们启用了完美信道估计器。

配置信道估计器飞行员平均数=“UserDefined”导频符号平均值的类型cec.FreqWindow=9;%频率窗口大小(以REs为单位)cec.TimeWindow=9;%时间窗口大小,以REs表示cec。InterpType =“立方”%二维插值类型cec。InterpWindow =“中心”%插值窗口类型cec.InterpWinSize=1;%插值窗口大小%信道估计器行为估计值=真;

医院药学部设置延迟

在子帧中设置CQI延迟。这是如TS36.101表9.3.2.1.1-1所定义的从UE传递到eNodeB的CQI延迟[1]。注意,假设CQI的反馈是完美的,这些值被反馈在缓冲器中,而不是在上行链路传输中反馈。

cqiDelay = 8;%子帧

系统处理

主处理分为两个阶段,通过cqiConfig循环变量。这些阶段在TS36.101第9.3.2.1.1节中定义的性能测试中实现了两种测量。1]:

UE报告了CQI。第一阶段(cqiConfig = 1)执行PDSCH发送和接收,其中调制和编码方案(MCS)是根据UE报告的CQI选择的,报告的CQI每2个子帧更新一次,并以8个子帧的延迟反馈。记录最终吞吐量、BLER和中值CQI,并且BLER (读注者)及与CQI中位数的偏差(measuredAlpha根据指定的性能要求进行检查。

中位数CQI。第二阶段(cqiConfig = 2), PDSCH发送和接收使用中位数CQI (中等曲)在第一阶段确定。最终吞吐量被记录,吞吐量比(measuredGamma)在使用UE报告的CQI相位和中值CQI相位之间,根据指定的性能要求进行报告和检查。

使用以下步骤逐子帧执行处理:

  • 医院药学部选择。对于UE报告的CQI,当前的CQI是从CQI缓冲区中最老的值读取的cqiBuffer;对于中值CQI, CQI总是设置为中等曲(这是通过使用中值CQI值填充CQI缓冲区来实现的,缓冲区不会更新)。

  • 根据CQI选择MCS。通过TS36.101表a .4-1 CSI RMC RC.1 FDD (MCS.1)定义的查找表来选择与CQI相对应的调制编码方案(MCS)索引。

  • 确定传输块大小和调制顺序。将MCS索引传递给lteMCS计算相应传输块大小(TBS)索引和调制顺序的函数;这个lteTBS函数用于从TBS索引和分配给PDSCH的资源块数量计算TBS。

  • 发送和接收波形。传输块数据生成并传递给lteRMCDLTool创建传输的下行波形。然后将此波形通过衰落信道并加入AWGN噪声。对接收的信号进行同步,并进行OFDM解调和信道估计。

  • 测量PDSCH吞吐量。对PDSCH和DL-SCH进行解码,并记录CRC通过/失败以确定数据吞吐量。

  • 医院药学部更新。如果在这个子帧中调度了CQI更新,则使用信道估计来更新CQILTECQISELECT.函数。更新后的CQI值记录在CQI缓冲区中。如果在这个子帧中没有安排CQI更新,则之前的CQI值将被重用。

%初始化用于结果记录的变量CQIReport = [];%报告的CQI值SINRReport = [];%对应SINR值xaxis = [];%对应的子帧号对于每个CQI配置(UE报告和中位数):cqiConfig=1:2如果(cqiConfig = = 1) cqiConfigStr =“报告问题”其他的cqiConfigStr =“中位数”结束流(“\n正在用%s CQI在%gdB SNR下模拟%d帧\n”...cqiConfigStr、SNRdB NFrames);%初始化CQI值:对于报告的UE,设置为所有值;对于中值,%设置为UE报告运行的CQI值的中位数如果(CQICONFIG == 1)CQIBUFFER = ONE(1,CQIDELAY);其他的cqiDelay cqiBuffer = 1 (1) * medianCQI;结束%初始化变量RNG('默认');%默认随机数生成器种子总CRC=[];% CRC值,用于吞吐量计算totalTBS = [];% TBS值,用于吞吐量计算偏移量=0;%初始化帧偏移值%每个子帧:subframeNo = 0: (NFrames * 10 - 1)%更新子帧号enb。NSubframe =国防部(subframeNo 10);%选择CQI,从CQI缓冲区读取最老的值cqiPtr=mod(子帧,cqiDelay);CQI=cqiBuffer(cqiPtr+1);%使用TS36.101根据CQI选择MCS% RC.1 FDD (MCS.1),它定义了CQI之间的关系%索引和MCS指数IMCSTable = [-1 0 0 2 4 6 8 11 13 16 18 21 23 25 27 27];医院药学部imc = IMCSTable (+ 1);%确定TB和调制顺序[ITBS,调制]=lteMCS(IMCS);enb.PDSCH.Modulation={Modulation};如果(mod(enb.NSubframe,5)==0) TBS =0;其他的TBS =双(lteTBS(大小(enb.PDSCH.PRBSet, 1)、胫));结束enb.PDSCH.TrBlkSizes (enb.NSubframe + 1) = TBS;%确定这个子帧是否需要CQI更新,根据%以报告周期N_pd = 2ms和配置索引% cqi-pmi-ConfigurationIndex = 1 from TS36.101cqiPeriod = 2;%周期性n_pd.cqioffset = 1;由cqi-pmi-ConfigurationIndex导出的偏移量cqiUpdate = (mod (subframeNo cqiPeriod) = = cqiOffset);%确定这个子帧是否需要执行PDSCH接收百分比,CQI估计或初始时间偏移估计:如果((tbs〜= 0 &&子帧> =(cqidelay + cqioffset))||...(cqiConfig==1 && cqupdate) || subframeNo==0%为子帧生成随机位数据= randi([0 1],TBS,1);%创建包含RMC传输的DM资源网格和%进行OFDM调制。txWaveform=LTERMCDLTOL(enb,数据);%通道建模的初始化时间在每个%用于模拟连续变化信道的子帧通道。InitTime = subframeNo / 1000;将数据通过衰落信道模型。%将额外的25个样品添加到试验结束处%波形。这是为了弥补预期的延误%从通道建模(组合实现%延迟和渠道延迟传播)rxWaveform = lteFadingChannel(频道,...[txWaveform;0(25、大小(txWaveform 2))));%计算噪声增益,包括对下行链路的补偿%功率分配信噪比= 10 ^ ((SNRdB-enb.PDSCH.Rho) / 20);将噪声功率归一化,以考虑采样率%是OFDM调制中使用的IFFT大小的函数%天线的数量N0 = 1 /(√(2.0 * enb.CellRefP *双(ofdmInfo.Nfft)) *信噪比);%创建加性高斯白噪声噪声=N0*复数(randn(大小(Rx波形)),...randn(大小(rxWaveform)));%将AWGN添加到接收的时域波形rx波形= rx波形+噪声;%执行同步%在系统预期延迟范围内的偏移量%通道建模(实现延迟和%通道延迟扩展)表示成功如果(mod(子帧,10)=0)offset=lteDLFrameOffset(enb,rxWaveform);如果(offset > 25) offset = offset (end);结束offset = [offset];%#好的结束rxWaveform = rxWaveform(1 +抵消:最终,);%对接收到的数据执行OFDM解调以创建%接收的资源网格rxGrid=LTEOFDMDdemodulate(enb,rxWaveform);%信道估计如果(perfectChanEstimator) chEstGrid =...lteDLPerfectChannelEstimate (enb,通道,抵消);n = lteOFDMDemodulate (enb噪声(1 +抵消:最终,));噪音= var(重塑(n元素个数(n), 1));其他的[Chestgrid,噪音] =...LTEDL信道估计(enb,enb.PDSCH,...cec、rxGrid);% #好< UNRCH >结束%如果此子帧需要PDSCH接收:如果(TBS~=0&&子帧>=(cqiDelay+cqiOffset))%解码PDSCH印第安纳州= ltePDSCHIndices (enb enb.PDSCH enb.PDSCH.PRBSet);pdschRx = lteExtractResources(ind,rxGrid) * . pdschRx = lteExtractResources(ind,rxGrid) *...(10 ^ (-enb.PDSCH.Rho / 20));pdschChEst = lteExtractResources(印第安纳州,chEstGrid);[rxBits, rxSymbols] = ltePDSCHDecode (enb, enb。PDSCH,...pdschRx、PDSCHCURT、noiseEst);解码DL-SCH[decbits,crc] = LTEDLSCHDECODE(eNB,eNB.PDSCH,TBS,RXBITS);%记录CRC和TBS值的最终吞吐量%计算totalCRC=[totalCRC];%#好的totalTBS = [totalTBS TBS];%#好的结束%更新CQI:如果(cqiconfig == 1 && cqiupdate)%执行CQI选择[thisCQI, thisSINR] =...lteCQISelect (enb enb.PDSCH chEstGrid,噪音);%将CQI值反馈回UE(在缓冲区中)Cqibuffer(CQIPTR + 1)= Thiscqi;%记录绘图值CQIReport=[CQIReport thisCQI];%#好的SINRReport = [SINRReport thisSINR];%#好的xaxis=[xaxis子帧];%#好的结束结束CQI未更新的子帧的百分比,重新使用上一个%缓冲区中的值如果(cqiConfig==1&&~cqiUpdate)cqiBuffer(cqiPtr+1)=cqiBuffer(mod(cqiPtr-1,cqiDelay)+1);结束结束%显示当前CQI配置的结果流('\nResults with %s CQI:\n',cqiConfigStr);tputTotal=总和(总TBS);如果(cqiConfig==1)%计算和显示吞吐量tputUEReported=sum(totalTBS.*(1-totalCRC));fprintf('吞吐量:%d位(%0.2f%%)\n'...tputUEReported,tputUEReported/tputTotal*100);%计算和显示BLER测量布尔=平均值(总CRC);fprintf('Bler:%0.3F(要求> = 0.02)\ n',被测量者);%计算并显示中值CQImedianCQI =装天花板(中位数(CQIReport));流(“医院药学部中位数:% d \ n”中成药';%计算并显示CQI值的比例%中间带+/-1之外MotoottalAlpha =(Sum(CQireport <(Mediancqi-1))+...总和(CQIReport>(medianCQI+1))/长度(CQIReport)*100;fprintf([' CQI指数超出中位数+/- 1的百分比'...%0.2f%%(要求是>= 20%%)\n'],被测α);其他的%计算和显示吞吐量tputMedian =总和(totalTBS。* (1-totalCRC));流('吞吐量:%d位(%0.2f%%)\n'...tputMedian tputMedian / tputTotal * 100);%计算和显示吞吐量比率测量扬声器= tputueEnterported / tprutmedian;fprintf(['吞吐量比率(伽马):%0.3f'...'(要求> = 1.05)'],测量伽玛);结束结束
模拟医院药学部有问题在6 db信噪比10帧(s)结果与医院药学部问题报道:吞吐量:980384位(77.98%)提单:0.219(要求是> = 0.02)医院药学部值:10医院药学部的百分比指数外+ / - 1的值:30.00%(要求是> = 20%)模拟医院药学部平均在6 db信噪比10帧(s)结果与医院药学部值:吞吐量:722304位(60.27%)吞吐量比(gamma): 1.357(要求>= 1.05)

阴谋的结果

产生了一个带有两个副图的图形。第一个子图显示了每个子帧的估计信噪比;第二个子图显示了每个子帧报告的CQI。这说明了SINR和相应报告的CQI是如何由于衰落信道而随时间变化的。

图;子地块(2,1,1);地块(xaxis、SINRReport、,“rx-”);包含(“子帧数”);伊莱贝尔(“估计SINR (dB)”);标题(“估计SINR与子帧数”); 持有; 子批次(2,1,2);绘图(xaxis、CQIReport、,“bo - - - - - -”);包含(“子帧数”);伊莱贝尔(“选定CQI索引”);标题('选定的CQI索引与子帧编号');

选定的参考书目

  1. 3GPP TS 36.101《用户设备(UE)无线电发射和接收》