主要内容

渠道质量指标报告(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。

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

仿真配置

该示例在6.0dB的SNR处执行10帧的模拟长度。大量的NFrames应该用来产生有意义的结果。

NFrames = 10;SNRdB = 6.0;

eNodeB配置

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

enb =结构(“钢筋混凝土”'r.3');%设置RMC R.3的参数eNB = ltermcdl(eNB);enb.cfi = 3;%重新配置控制格式指示符enb.ocngpdschenable ='在';%为未分配的PDSCH RES启用OCNGenb。TotSubframes = 1;单个子帧的%重新配置enb.pdsch.rvseq = 0;%禁用HARQ.eNB.PDSCH.CSIMODE ='PUCCH 1-0';%配置CSI报告模式eNB.PDSCH.CSI ='在';软比特的%CSI缩放

传播信道模型配置

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

channel.seed = 10;%沟道种子channel.nrxants = 2;%2接收天线channel.delayprofile ='EPA';%延迟配置文件channel.dopplerfreq = 5.0;%多普勒频率通道。MIMOCorrelation ='高的';%多天线相关性channel.modeltype =.“GMEDS”;%瑞利衰落模型类型channel.normalizetxants =.'在';传输天线的%标准化channel.normalizepathgains ='在';%标准化延迟配置文件channel.initphase =.'随机的';%随机初始阶段通道。NTerms = 16;褪色模型中使用的%振荡器%设置频道模型采样率OFDMINFO = LTEOFDMINFO(eNB);Channel.SamplingRate = OFDMINFO.SAMPLINGRATE;

信道估计配置

信道估计器配置有结构CEC.。变量PerfectChanestimator.控制信道估计行为。有效值是真的或者错误的。设置到真的否则使用完美的信道估计器,否则基于所接收的导频信号的值使用通道的不完美估计。在此示例中,我们启用完美的信道估计器。

%配置信道估计器cec.pilotaverage =.'用户自定义';%类型的导频符号平均cec.freqwindow = 9;RES中的%频率窗口大小cec.timewindow = 9;%时间窗口大小cec.interpype =.'立方体';%2D插值类型cec。InterpWindow ='中心';%插值窗口类型cec.Interpwinsize = 1;%插值窗口大小%信道估计行为PerfectChanestimator = True;

医院药学部设置延迟

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

cqiDelay = 8;%子帧

系统处理

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

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

中位数CQI。在第二阶段(cqiConfig = 2),使用中值CQI执行PDSCH传输和接收(中等曲)在第一阶段确定。最终吞吐量被记录,吞吐量比(测量伽玛)使用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)索引和调制顺序的功能;这LTETB.函数用于从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 ='UE报道';别的cqiConfigStr ='中位';结尾fprintf('\以%GB SNR为%GB SNR为%D帧(s)\ n'......cqiConfigStr、SNRdB NFrames);%初始化CQI值:对于UE报告,设置为所有人;中位数,%设置为UE报告运行的CQI值的中位数如果(CQICONFIG == 1)CQIBUFFER = ONE(1,CQIDELAY);别的cqibuffer = =(1,cqidelay)* mediancqi;结尾%初始化变量RNG('默认');%默认随机数生成器种子totalcrc = [];%CRC值,用于吞吐量计算totalTBS = [];%TBS值,用于吞吐量计算偏移= 0;%初始化帧偏移值%每个子帧:为了subframeNo = 0: (NFrames * 10 - 1)%更新子帧号enb.nsubframe = mod(subframeno,10);%选择CQI,从CQI缓冲区读取最旧的值CQIPTR = MOD(Subframeno,Cqidelay);cqi = cqibuffer(CQIPTR + 1);根据CQI使用TS36.101表A.4-1 CSI RMC,%选择MCS% RC.1 FDD (MCS.1),它定义了CQI之间的关系%索引和MCS指数imcstable = [-1 0 0 2 4 6 8 11 13 16 18 21 23 27 27];imcs = imcstable(CQI + 1);%确定TB和调制顺序[itbs,调制] = LTEMCS(IMC);enb.pdsch.modulation = {调制};如果(mod(enb.NSubframe,5)==0) TBS =0;别的TBS =双(lteTBS(大小(enb.PDSCH.PRBSet, 1)、胫));结尾eNB.PDSCH.trblsze(eNB.NSUBFRAME + 1)= TBS;%确定这个子帧是否需要CQI更新,根据报告周期性n_pd = 2ms和配置索引%CQI-PMI-ConfigurationIndex = 1来自TS36.101表9.3.2.1.1-1cqiperiod = 2;%周期性n_pd.cqioffset = 1;由cqi-pmi-ConfigurationIndex导出的偏移量cqiUpdate = (mod (subframeNo cqiPeriod) = = cqiOffset);%建立此子帧是否实际需要为PDSCH执行%接收,CQI估计或初始定时偏移估计:如果((tbs〜= 0 &&子帧> =(cqidelay + cqioffset))||......(cqiconfig == 1 && cqiupdate)||subframeno == 0)%为子帧生成随机位DATA = RANDI([0 1],TBS,1);%创建包含RMC传输的DM资源网格和%执行OFDM调制。txwaveform = ltermcdltool(eNB,数据);%频道建模的初始化时间设置为每个%子帧模拟连续变化的通道channel.inittime = subframeno / 1000;将数据通过衰落信道模型。%额外的25个样本被添加到末端%波形。这是为了弥补预期的延误频道建模的%(实现的组合%延迟和渠道延迟传播)rxWaveform = lteFadingChannel(频道,......[txwaveform;零(25,尺寸(txwaveform,2))]);%计算噪声增益,包括补偿下行链路%功率分配SNR = 10 ^((snrdb-eNb.pdsch.rho)/ 20);%归一化噪声功率,以考虑采样率,这%是OFDM调制中使用的IFFT大小的函数,以及%天线的数量n0 = 1 /(SQRT(2.0 * enb.cellrefp * double(Ofdminfo.nfft))* SNR);%创建添加剂白色高斯噪声噪声= n0 *复杂(Randn(randn(rxwaveform)),......randn(大小(rxWaveform)));%将AWGN添加到接收的时域波形中rx波形= rx波形+噪声;%执行同步%在预期的延迟范围内的偏移量%信道建模(实现延迟的组合和%信道延迟扩展)表明成功如果(mod(subframeno,10)== 0)offset = ltedlframeoffset(eNB,rxwaveform);如果(offset > 25) offset = offset (end);结尾offset = [offset];%#OK 结尾rxWaveform = rxWaveform(1 +抵消:最终,);%在接收数据上执行OFDM解调以创建%收到的资源网格rxgrid = lteofdmdemodulate(eNB,rxwaveform);%信道估计如果(PerfectChanestimator)Chestgrid =......lteDLPerfectChannelEstimate (enb,通道,抵消);n = lteOFDMDemodulate (enb噪声(1 +抵消:最终,));噪音= var(重塑(n元素个数(n), 1));别的[Chestgrid,噪音] =......LtedlchanneLestimate(eNB,eNB.PDSCH,......CEC,RXGRID);% #好< UNRCH >结尾%如果该子帧需要PDSCH接收:如果(TBS〜= 0 &&子阵容> =(CQIDELAY + CQIOFFSET))%解码PDSCHIND = LTEPDSCHINDICES(eNB,eNB.PDSCH,ENB.PDSCH.PRBSET);pdschrx = lteextractresources(ind,rxgrid)*......(10 ^ (-enb.PDSCH.Rho / 20));pdschChEst = lteExtractResources(印第安纳州,chEstGrid);[rxBits, rxSymbols] = ltePDSCHDecode (enb, enb。PDSCH,......PDSCHRX,PDSchchchest,噪音);%解码DL-SCH[decbits,crc] = LTEDLSCHDECODE(eNB,eNB.PDSCH,TBS,RXBITS);%记录CRC和TBS值的最终吞吐量% 计算TotalCRC = [TotalCRC CRC];%#OK totaltbs = [totaltbs tbs];%#OK 结尾%更新CQI:如果(cqiconfig == 1 && cqiupdate)%执行CQI选择[thiscqi,thissinr] =......LTECQISELECT(eNB,eNB.PDSCH,CHESTGRID,噪音);%将CQI值送回UE(在缓冲区中)cqibuffer(CQIPTR + 1)= Thiscqi;%记录绘图的值cqireport = [cqireport topcqi];%#OK SINRReport = [SINRReport thisSINR];%#OK xaxis = [xaxis subframeno];%#OK 结尾结尾CQI未更新的子帧的百分比,重新使用上一个缓冲区中的%值如果(cqiconfig == 1 &&〜cqiupdate)cqibuffer(cqiptr + 1)= cqibuffer(mod(cqiptr-1,cqidelay)+1);结尾结尾%显示当前CQI配置的结果fprintf('\ nresults pyl%s cqi:\ n',cqiconfigstr);tputtotal = sum(totaltbs);如果(Cqiconfig == 1)%compute和显示吞吐量tputuereported = sum(totaltbs。*(1-totalcrc));fprintf('吞吐量:%d位(%0.2f%%)\n'......tputueEreported,tputuereported / tputtotal * 100);%Compute和Display Bler测量表=均值(TotalCRC);fprintf('Bler:%0.3F(要求> = 0.02)\ n',测量夹);%compute和显示中位数cqiMediancqi = CEIL(中位数(CQIREPORT));fprintf(“医院药学部中位数:% d \ n”,中美奇');CQI值的%计算和显示比例%以外的+/- 1中位数MotoottalAlpha =(Sum(CQireport <(Mediancqi-1))+......总和(cqireport>(mediancqi + 1)))/长度(cqireport)* 100;fprintf([' CQI指数超出中位数+/- 1的百分比'......'%0.2f %%(要求> = 20 %%)\ n'],测量的alpha);别的%compute和显示吞吐量tputMedian =总和(totalTBS。* (1-totalCRC));fprintf('吞吐量:%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-');Xlabel('子帧号');ylabel(“估计SINR (dB)”);标题('估计SINR与子帧号码');抓住;子图(2,1,2);plot(xaxis,cqireport,'bo-');Xlabel('子帧号');ylabel('选定的CQI索引');标题('选定的CQI索引与子帧编号');

选定的书目

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