主要内容

NR SRS配置

此示例演示如何生成测深参考信号(SRS),定义见TS 38.211节6.4.1.4 [1,包括SRS配置、符号和指标生成、OFDM资源网格映射、SRS波形生成等。这个例子演示了如何选择适当的参数来定位SRS的频率和设置:

  • Full-band传输:生成一个跨所有可用带宽的SRS。

  • 跳频传输:生成具有不同跳频模式的周期性和非周期性SRS传输。

  • 多用户传输:使用时间、频率和循环移位生成正交SRS。

简介

探测参考信号是用户设备用于上行通道探测的上行物理信号,包括信道质量估计和同步。与解调参考信号(DM-RS)不同,SRS不与任何物理上行通道相关联,支持上行通道依赖的调度和链路自适应。SRS协助:

  • 基于代码本的闭环空间复用。

  • 控制上行链路发送定时。

  • 多用户MIMO设置中基于交互的下行预编码。

  • 物理信道和参考信号的准共定位。

频率定位

配置SRS在频域的位置和分配给SRS的带宽。

配置15mhz带宽载波,15khz副载波间距(SCS)。

载体= nrCarrierConfig;母舰。NSizeGrid =79%带宽在RB母舰。SubcarrierSpacing =15

带宽配置参数csr而且建筑控制分配给SRS的带宽,它通常随着csr和减少建筑。使用这些交互控件来配置SRS带宽。

srs = nrSRSConfig;srs。csr=10%带宽配置C_SRS(0…63)srs。建筑=1%带宽配置B_SRS(0…3)

若要修改SRS的频率位置,请修改的值FrequencyStart而且NRRCFrequencyStart指定SRS在RBs中相对于载波原点的频率原点NRRC = 0

srs。FrequencyStart =30.% RB中载波中SRS的频率位置(0…271)srs。NRRC=0%频域位置以4 PRB为单位(0…67)hSRSGrid(载体,srs, 1,真的);创建并显示包含SRS的单槽资源网格标题([包含SRS的资源网格。NRRC = 'num2str (srs.NRRC)]);hSRSAnnotations(载体,srs);

图中包含一个axes对象。坐标轴对象的标题为“包含SRS的资源网格”。NRRC = 0包含4个类型为图像、行、文本的对象。该对象表示SRS 1。

该图显示了包含SRS的单槽OFDM资源网格。为csr = 10而且建筑= 1,为SRS的频率位置 F 0 变化的 NRB T NRRC在(3…5)的范围内 2 NRB T NRRC在(6…8)的范围内。SRS返回到初始位置(FrequencyStart)当NRRC是9。 NRB T 为每次传输分配给SRS的资源块(RBs)数量。

该图说明了上面介绍的概念csr = 10而且建筑= 1

NRRC是一个额外的频率偏移指定为4rbs的数字,它对应于更高的层参数freqDomainPosition(见TS 38.331章节6.3.2 SRS-Config [2])。的值NRRC之间的 k NRB T / 4 而且 k + 1 NRB T / 4 - 1 时,SRS的频率位置移动为 k NRB T ,在那里 k 是一个整数。TS 38.211第6.4.1.4节提到 NRB T 作为 SRS b b 建筑 。有关更多信息,请参见NRBPerTransmission财产的nrSRSConfig配置对象。

这个方程在频率上决定了SRS的起源:

F 0 FrequencyStart + NRB T 国防部 4 NRRC NRB T

表示SRS子带数(大小频带) NRB T ),其中SRS可以通过参数定位NRRC。计算 ,可以使用SRS带宽配置表(参见TS 38.211表6.4.1.4.3-1)。也可以通过BandwidthConfigurationTable财产的nrSRSConfig对象。

csr = srs.CSRS;disp (nrSRSConfig.BandwidthConfigurationTable (csr + (0:2) + (csr = = 0):));
C_SRS m_SRS_0 N_0 m_SRS_1 N_1 m_SRS_2甲烷m_SRS_3 N_3  _____ _______ ___ _______ ___ _______ ___ _______ ___ 16 9 32 1 2 8 2 4 2 10 36 1 12 3 4 3 4 1 11 40 1 20 2 4 5 1

第一列包含参数的可能值csr。为csr = 10而且建筑= 1,唯一SRS子带数为 N 0 N B SRS 3. ,在那里 N 0 1 而且 N 1 3.

%计算并显示NRRC可配置的SRS子带数NSBTable = hSRSNumberOfSubbandsOrHoppingPatterns (srs);流(' SRS子带数(NRRC < %d): %d', NSBTable * srs.NRBPerTransmission / 4, NSBTable);
SRS子带数(NRRC < 9): 3
计算第一个SRS符号的频率原点f0 = hSRSFrequencyOrigin (srs);流(“SRS的频率原点是F0 = %d RB。”f0);
SRS的频率原点为F0 = 30 RB。

确认SRS的频率位置信息的输出nrSRSIndices

[~,信息]= nrSRSIndices(载体,srs);显示器(info.PRBSet (1))
30.

的给定值csr,可用于分配SRS的频带NRRC FrequencyStart + 0 ... NRB T - 1 。为csr = 10时,SRS环绕 NRRC NRB T / 4 N 0 N B SRS SRS b / 4 SRS 0 / 4 9 ,得到与的相同的频率位置 NRRC 0

流(对于当前的CSRS (%d)值,SRS频率范围被限制在(%d,%d) RB范围内。、srs.FrequencyStart srs。FrequencyStart+讲Table*srs.NRBPerTransmission,srs.CSRS);
对于当前的CSRS值(10),SRS频率范围被限制在(30,66)RB范围内。

当槽内跳频使能时,计算FrequencyOrigin仅对槽位中的第一个SRS符号有效。对于跳频SRS,使用输出信息。PRBset信息。SubcarrierOffsetnrSRSIndices函数确定后续符号的频率位置。

流(“SRS的频率原点是F0 = %d RB。”, info.PRBSet (1));
SRS的频率原点为F0 = 30 RB。

全部带宽配置

通过计算运营商的SRS带宽参数,配置和生成全频段SRS传输。

配置10mhz带宽载波与15khz SCS。

载体= nrCarrierConfig;母舰。NSizeGrid =52;母舰。SubcarrierSpacing =15

带宽配置参数csr建筑,BHop控制分配给SRS的带宽。如果需要配置全频带SRS,请设置csr = 14而且建筑= 0

srs = nrSRSConfig;srs。csr=13%带宽配置C_SRS(0…63)srs。建筑=1%带宽配置B_SRS(0…3)hSRSGrid(载体,srs, 1,真的);创建并显示包含SRS的单槽资源网格标题([全波段SRS资源网格。csr = 'num2str (srs.CSRS)]);hSRSAnnotations(载体,srs);

图中包含一个axes对象。坐标轴对象的标题为“资源网格与全波段SRS”。CSRS = 13包含3个类型为image, line, text的对象。该对象表示SRS 1。

对于SRS频率分配,您可以找到的适当值csr建筑,BHop在SRS带宽配置表中(参见TS 38.211表6.4.1.4.3-1)。另外,nrSRSConfig。B而且widthConfigurationTable提供一种访问和显示该表的简单方法。

%如果需要显示带宽配置表的相关行,请计算全频带SRS的crs值(csr,建筑)= hSRSBandwidthConfiguration (srs carrier.NSizeGrid);显示带宽配置表disp (nrSRSConfig.BandwidthConfigurationTable (csr + (0:2) + 1 * (csr = = 0):));
C_SRS m_SRS_0 N_0 m_SRS_1 N_1 m_SRS_2甲烷m_SRS_3 N_3  _____ _______ ___ _______ ___ _______ ___ _______ ___ 13 48 1 24 2 12 2 4 3 14 52 1 4 13 4 1 4 1 15 56 1 28 2 4 7 4 1

标记为m_SRS_bb= 0…3.contain the number of RBs allocated to the SRS for the parameterb =建筑和non-hopping配置。对应的行C_SRS = 14包含多个RBsm_SRS_0 = 52为最接近载波带宽的值。因此,参数csr = 14而且建筑= 0配置当前运营商配置的全波段SRS传输。本例使用带宽配置表来计算csr而且建筑使载波内的SRS带宽最大化。

流(对于%d RB载波带宽下的全频带SRS,设置CSRS = %d和BSRS = %d。carrier.NSizeGrid csr,建筑);
对于52rb载波带宽下的全带SRS,设置CSRS = 14, BSRS = 0。

您可以使用SRS只读属性NRBPerTransmission确认生成的SRS是否符合载波带宽。

流(SRS带宽(%d RB)小于或等于载波带宽(%d RB)。、srs.NRBPerTransmission carrier.NSizeGrid);
SRS带宽(24rb)小于等于载波带宽(52rb)。

跳频配置

对于多符号和多槽SRS传输,可以分别配置槽内跳频和槽间跳频。每个OFDM符号的瞬时带宽在SRS OFDM符号之间是恒定的,并且小于SRS跳过的带宽。

配置15 kHz SCS的15 MHz带宽载波。

载体= nrCarrierConfig;母舰。NSizeGrid =79;母舰。SubcarrierSpacing =15

在插槽的末端创建一个四符号SRS。选择重复因子来表示槽位中相等连续SRS传输(OFDM符号)的数量。对于跳频配置,重复必须小于SRS符号的数量。

srs = nrSRSConfig;srs。NumSRSSymbols =4;srs。重复=1;srs。SymbolStart =10%槽位SRS的时域位置。(8…13)用于普通循环前缀(CP),(6…11)用于扩展CP

下行控制信息(DCI)可以使用更高的层参数触发非周期SRS传输resourceType(参见TS 38.331章节6.3.2 SRS-Config)。由于在每个槽位上为非周期SRS资源类型重置跳频模式,因此选择周期semi-persistentSRS资源类型以启用槽间跳频或非周期禁用它。可以使用该属性配置SRS传输的槽位周期性和偏移量SRSPeriod。为非周期资源类型,参数SRSPeriod控制触发非周期SRS传输的DCI信号的周期性和偏移量。

srs。ResourceType =“周期”;srs。SRSPeriod = [20);插槽(1,2,4,5,8,10,…)的周期性%srs.SRSPeriod (2) =0插槽中的%偏移量必须小于周期性

使用这些交互控件来选择跳变配置并观察OFDM资源网格的变化。

srs。csr=19%带宽配置C_SRS(0…63)srs。建筑=2%带宽配置B_SRS(0…3)srs。BHop =0跳频配置(0…3)。设置“BHop >= BSRS”,关闭跳频功能srs。NRRC=14%频域位置以4 PRB为单位(0…67)创建并显示包含SRS的多槽资源网格时间= 2 * srs.SRSPeriod (1);%槽内传输长度hSRSGrid(载体,srs,持续时间,真);标题(“包含跳频SRS的载波网格”

图中包含一个axes对象。标题为载波网格包含跳频SRS的轴对象包含两个类型为图像、直线的对象。该对象表示SRS 1。

的值增加SRS符号跳跃的带宽csr和减少BHop(直到BHop =建筑禁用跳跃)。增加建筑减少每个OFDM符号(属性)的分配带宽NRBPerTransmission),可以减少槽内跳频。若要禁用跳频功能,请设置BHop > =建筑。对于非跳变构型,的作用csr而且建筑是类似的,随着分配的带宽的增加csr和减少建筑

您可以使用带宽配置表(TS 38.211表6.4.1.4.3-1)来计算由SRS参数可配置的不同跳频模式的数量NRRC作为 NFHP N BHop + 1 N B SRS 。跳频模式重复 NRRC > NFHP NRB T / 4

N = hSRSNumberOfSubbandsOrHoppingPatterns (srs);如果srs。BHop < srs.BSRS && srs(1).NRB > 16唯一跳频模式的数量流('唯一跳频模式的数量(可由NRRC配置< %d): %d。'、N * srs.NRBPerTransmission / 4 N);其他的唯一的SRS子带数流('唯一SRS子带数(可由NRRC < %d配置):%d。'、N * srs.NRBPerTransmission / 4 N);结束
唯一跳频模式的数量(由NRRC < 18可配置):6。

设置带宽配置参数为CSRS = 20, BSRS = 2,BHop = 1。的条件BHop <建筑不能保证跳频。然而,事实恰恰相反:BHop > =建筑始终禁用跳频功能。您可以确定SRS带宽配置(csr建筑BHop)产生跳频 N b 参数,并对条件进行评估 NFHP N BHop + 1 N B SRS > 1

isFreqHoppingConfiguration = hSRSNumberOfSubbandsOrHoppingPatterns(srs) > 1;disp ([“跳频”repmat (“不是”1 ~ isFreqHoppingConfiguration)“启用”。])
启用跳频功能。

在跳频情况下,只读属性NRB指定SRS跳及的带宽NRBPerTransmission指定每个SRS OFDM符号分配的瞬时带宽。

t =表([srs.NRB;srs。NRBPerTransmission],“RowNames”, {“Freq-Hopping带宽”“瞬时带宽”},“VariableNames”“NRB”);disp (t)
NRB ___跳频带宽72瞬时带宽12

多用户配置

本节解释如何配置适合于多用户设置的多个SRS传输。可以使用时域、频域和序列域参数来创建一组正交(无干扰)SRS传输。

时域正交SRS

您可以通过多种方式创建时域正交SRS传输,例如:

  • 通过使用属性为不同的SRS配置不同的槽周期和偏移量SRSPeriod

  • 通过使用属性为不同的SRS配置不同的按符号的时域分配SymbolStart

配置10mhz带宽载波与15khz SCS。

载体= nrCarrierConfig;母舰。NSizeGrid =52;母舰。SubcarrierSpacing =15

指定插槽周期和偏移量以创建正交SRS传输。

第一个SRS配置:

srs = nrSRSConfig;srs(1)。SRSPeriod = [1 0]; srs(1).SRSPeriod(1) =4插槽周期和偏移量srs (1) .SRSPeriod (2) =0第一个SRS的槽位偏移

第二个SRS配置:

srs (2) = srs (1);创建一个已配置SRS的副本srs (2) .SRSPeriod (1) =2%槽的周期性srs (2) .SRSPeriod (2) =1槽位偏移百分比

该图显示了包含配置的SRS传输的OFDM资源网格。

hSRSGrid(载体,srs, srs (1) .SRSPeriod(1) * 2,真的);生成包含SRS的多槽资源网格标题('具有不同槽位偏移量的SRS (SRSPeriod)') ylim ([0 srs (1) .NRBPerTransmission]);

图中包含一个axes对象。带有标题SRS和不同槽位偏移(SRSPeriod)的axis对象包含3个类型为image、line的对象。这些对象表示SRS 1和SRS 2。

指定SRS符号的数量和插槽中的位置,以创建正交SRS传输。

第一个SRS配置:

srs = nrSRSConfig;srs(1)。NumSRSSymbols =1槽位中SRS符号的百分比(1,2,4)srs(1)。SymbolStart =12%槽位SRS的时域位置。(8…13)用于普通循环前缀(CP),(6…11)用于扩展CP

第二个SRS配置:

srs (2) = srs (1);创建一个已配置SRS的副本srs(2)。NumSRSSymbols =2;srs(2)。SymbolStart =9

该图显示了包含SRS传输的OFDM资源网格。

hSRSGrid(载体,srs, 2,真的);生成并显示包含SRS的2槽资源网格标题(“具有不同符号位置的SRS (SymbolStart)”);ylim ([0 srs (1) .NRBPerTransmission]);

图中包含一个axes对象。带有标题SRS和不同符号位置(SymbolStart)的axis对象包含3个类型为image、line的对象。这些对象表示SRS 1和SRS 2。

频域正交SRS

您可以通过多种方式创建频域正交SRS传输:

  • 通过使用属性为不同的SRS配置不同的梳偏移量KBarTC

  • 配置不同的跳频模式csr建筑BHop而且NRRC

配置10mhz带宽载波与15khz SCS。

载体= nrCarrierConfig;母舰。NSizeGrid =52;母舰。SubcarrierSpacing =15

指定梳号和偏移量以创建正交SRS传输。

第一个SRS配置:

srs = nrSRSConfig;srs(1)。KTC =2梳数(2,4)。表示每个KTC子载波的SRS分配情况srs(1)。KBarTC=1%梳偏(0…KTC-1)

第二个SRS配置:

srs (2) = srs (1);创建一个已配置SRS的副本srs(2)。KTC =4;srs(2)。KBarTC=0

该图显示了包含SRS传输的OFDM资源网格。

hSRSGrid(载体,srs, 2,真的);标题(具有不同梳状偏移量的SRS (KBarTC)) ylim ([0 srs (1) .NRBPerTransmission]);

图中包含一个axes对象。标题SRS与不同梳偏(KBarTC)轴对象包含3个类型的对象,图像,线。这些对象表示SRS 1和SRS 2。

使用不同的跳频模式创建频域正交SRS配置。

srs = nrSRSConfig;srs。NumSRSSymbols =4槽位中SRS符号的百分比srs。SymbolStart =8分配SRS在OFDM符号10:13

2 .选择需要配置的带宽参数、资源类型和重复因子。

srs。csr=10%带宽配置C_SRS(0…63)srs。建筑=2%带宽配置B_SRS(0…3)srs。BHop =0跳频配置(0…3)。设置“BHop >= BSRS”,关闭跳频功能srs。ResourceType =“周期”%(“周期”,“semi-persistent”、“周期”)srs。重复=1相等的连续SRS传输数(1,2,4)。它必须低于NumSRSSymbols

此示例计算可配置的正交SRS序列的数量NRRC并创建频率非重叠SRS配置。该图显示了包含SRS传输的OFDM资源网格。

NRRC = num2cell (hNRRCSet (srs));srs(2:长度(NRRC)) = srs (1);为配置的SRS创建N-1个副本(srs(:)。NRRC] = deal(NRRC{:});为每个SRS配置分配适当的NRRChSRSGrid(载体,srs, 3,真的);生成并显示包含SRS的3槽资源网格标题(“不同跳频模式的SRS”);ylim ([0 srs (1) .NRBPerTransmission * hSRSNumberOfSubbandsOrHoppingPatterns (srs (1))));

图中包含一个axes对象。标题SRS具有不同跳频模式的轴对象包含10个类型为图像、直线的对象。这些对象代表SRS 1、SRS 2、SRS 3、SRS 4、SRS 5、SRS 6、SRS 7、SRS 8、SRS 9。

N = hSRSNumberOfSubbandsOrHoppingPatterns (srs (1));如果srs(1)。BHop< srs(1).BSRS%跳频情况下流('唯一跳频模式的数量(可由NRRC配置< %d): %d。'N * srs(1)。NRBPerTransmission/4, N);其他的流('唯一子带数(可由NRRC < %d配置):%d。'N * srs (1) .NRBPerTransmission / 4, N);结束
唯一跳频模式的数量(由NRRC < 9可配置):9。

注意,无论如何,SRS传输都不会重叠重复因素和ResourceType非周期禁用槽间跳频)。通过设置禁用跳频功能BHop > =建筑观察到不同的SRS仍然分配到不同的子带。

循环移位正交SRS

本节生成分配给相同时间和频率资源(OFDM符号和子载波)但不同时域循环移位的多个SRS。由于Zadoff-Chu序列的特性,这种配置产生正交SRS。为了演示配置的SRS之间的正交性,本节执行CP-OFDM调制并计算时域波形的相互关系。

使用15 kHz SCS配置10 MHz带宽载波。载体= nrCarrierConfig;母舰。NSizeGrid = 52; carrier.SubcarrierSpacing = 15;创建全频带SRSsrs = nrSRSConfig;srs。csr=hSRSBandwidthConfiguration(srs,carrier.NSizeGrid);所有SRS共享相同的物理资源,但是它们被配置为%不同的循环位移。I = 1:8 srs(I) = srs(1);srs(我)。CyclicShift =张;结束创建一个包含SRS的资源网格numSlots = 1;%要生成的槽位数ich = length(srs):-1:1 slotGrid{ich} = hSRSGrid(carrier,srs(ich),numSlots);结束获取OFDM调制相关信息ofdmInfo = nrOFDMInfo(载体);% OFDM调制nsr =长度(srs);% SRS波形数numSamples = numSlots * ofdmInfo.SampleRate / 1000 / carrier.SlotsPerSubframe;txWaveform = 0 (srs (1) .NumSRSPorts numSamples, nsr);i = 1:nsrs tx波形(:,:,i) = nrofdmmodululate (carrier,slotGrid{i});结束不同周期位移产生的SRS波形的相互关系[], txWaveform =重塑(txWaveform nsr * srs (1) .NumSRSPorts);C = txWaveform ' * txWaveform;srsCorr = C /诊断接头(C);

该图显示了具有不同循环位移的SRS波形的时域相互关系。

显示亮度图像(abs (srsCorr))标题(“SRS与不同CyclicShift的相关性”)包含(“SRS配置”);ylabel (“SRS配置”);colorbar

图中包含一个axes对象。带有标题的axis对象包含一个类型为image的对象。

不同时域周期位移产生的SRS波形之间的低相关性显示出它们的正交性。

disp (“相关矩阵绝对值:”);disp (' ');disp (abs (srsCorr));
相关矩阵绝对值:1 ~ 7列1.0000 0.0027 0.0021 0.0008 0.0003 0.0010 0.0007 0.0027 1.0000 0.0030 0.0006 0.0006 0.0006 0.0021 1.030 1.0000 0.0041 0.0007 0.0008 0.0003 0.0008 0.0006 0.0041 1.0000 0.0040 0.0004 0.0004 0.0009 0.0003 0.0006 0.0040 1.0000 0.0039 0.0002 0.0010 0.0001 0.0008 0.0003 0.0004 0.0039 1.0000 0.0039 0.0005 0.0005 0.0008 0.0000 0.0009 0.0003 0.0039 8列0.0038 0.0005 0.0008 0.0009 0.0003 0.0039 1.0000 0.0039

总结与进一步探索

本例描述如何生成SRS序列并将其映射到OFDM载波资源网格中,以及如何为多个载波和SRS配置生成相应的波形。该实例强调了SRS配置参数之间的关系及其对资源网格和SRS波形属性的影响。例如:

  • 分配给SRS的带宽通常随着csr和减少建筑。对于跳频配置,瞬时带宽和跳频带宽随时间的增加而减小建筑而且BHop,分别。

  • SRS的频率位置取决于FrequencyStart而且NRRC参数。NRRC允许选择不同的SRS子带和跳频模式。

  • BHop <建筑一般会产生跳频,但不能保证。然而,BHop > =建筑足以禁用跳频。

  • 槽间跳频仅在周期而且semi-persistent资源类型。

  • 时间、频率和序列相关的参数可以用来创建正交SRS传输。

该示例还演示了如何从SRS带宽配置表和只读属性中提取有用的信息,例如,唯一SRS子带的数量和可配置的跳频模式NRRC

多端口配置的SRS序列生成采用了中提出的正交化机制循环移位正交SRS。为了验证跨多个端口的正交性,需要配置一个多端口SRS,生成符号和索引,将符号映射到资源网格中,生成SRS波形,并计算不同端口生成的波形之间的相互关系。

参考文献

[1] 3gpp ts 38.211。“NR;物理通道和调制。”第三代伙伴关系项目;技术规范组无线电接入网

[2] 3gpp ts 38.331。“NR;无线电资源控制(RRC)协议规范。第三代伙伴关系项目;技术规范组无线电接入网

本地函数

下面的例子使用了这些局部函数:

函数[srs,bsrs] = hSRSBandwidthConfiguration(srs, NRB)% [SRS,BSRS] = hBandwidthConfiguration(SRS, NRB)返回SRS%带宽配置参数crs和BSRS需要传输NRB指定带宽中的% SRS。该函数计算CSRS和% BSRS考虑SRS属性FrequencyStart和NRRC,因此%可用带宽NRB被SRS的频率来源减少。对于跳频情况,返回的BSRS值等于该值输入SRS配置对象中BSRS属性的%。f0 = hSRSFrequencyOrigin (srs);NRB = NRB - f0;如果NRB < 4错误(可用带宽不足以分配SRS传输。增加载波带宽或将SRS配置在较低的频率。”结束%用于跳频配置如果srs。BHop >= srs.BSRS && nargout == 2不要求跳频和BSRS建筑= 0:3;其他的建筑= 0;结束初始化SRS频率分配和载波带宽之间的差距NRBGap = NRB;为每个BSRS找到适当的CSRS,只使差距最小化%在非跳跃情况下。对于跳频,只查找CSRS的值。b =建筑为BSRS分配给SRS的% NRB = b和所有CSRSsrsNRBb = srs.BandwidthConfigurationTable {: 2 * (2 + 1)};mSRSbMax = max(srsNRBb(srsNRBb <= NRB));计算SRS分配与载波带宽之间的差距gap = NRB - mSRSbMax;如果gap < NRBGap csrs = srs。B而且widthConfigurationTable{ srsNRBb == mSRSbMax ,1}; bsrs = b; NRBGap = gap;结束结束csr = csr (1);如果srs。BHop < bsrs bsrs = srs.BSRS;结束结束函数= hSRSNumberOfSubbandsOrHoppingPatterns (srs)% N = hSRSNumberOfSubbandsOrHoppingPatterns(SRS)返回可配置的惟一SRS子带或跳频模式N% SRS属性NRRC。SRS子带是分配给SRS的频带%在给定的OFDM符号中(参见SRS属性NRBPerTransmission)。N是%使用TS 38.211计算,带宽如表6.4.1.4.3-1所示%配置参数SRS、BSRS和BHop在SRS中指定配置对象SRS。bwct = nrSRSConfig.BandwidthConfigurationTable {:,:};如果srs。BHop < srs.BSRS唯一跳频模式的数量b0 = srs.BHop + 1;其他的唯一的SRS子带数b0 = 0;结束= prod (bwct (srs.CSRS + 1, 2 * (b0: srs.BSRS) + 3));结束函数[网格,dispGrid] = hSRSGrid(载体,srs、持续时间、displayGrid chplevels)% [GRID, disgrid] = hSRSGrid(CARRIER,SRS,DURATION,DISPLAYGRID,CHPLEVELS)返回一个多槽OFDM资源网格grid,其中包含一组探测%的载波引用信号,由配置对象指定% CARRIER和SRS。这个函数还返回网格的缩放版本%用于显示目的。可选的输入DURATION(默认为1)%指定生成网格的槽数。资源网格%可以使用可选输入DISPLAYGRID显示(默认为false)。CHPLEVELS指定仅用于显示目的的通道功率级别%,并且必须与SRS的大小相同。numSRS =长度(srs);如果chplevels = 1:-1/numSRS:1/numSRS;如果nargin < 4 displayGrid = false;如果nargin < 3 Duration = 1;结束结束结束SymbolsPerSlot = carrier.SymbolsPerSlot;emptySlotGrid = nrResourceGrid(载体,马克斯((srs (:) .NumSRSPorts)));%初始化槽网格创建SRS符号和索引,并用SRS符号填充网格。网格= repmat (emptySlotGrid 1时间);dispGrid = repmat (emptySlotGrid 1时间);用于显示的帧大小网格ns = 0:Duration-1 slotGrid = emptySlotGrid;dispSlotGrid = emptySlotGrid;用于显示的槽大小网格1:numSRS srsIndices = nrSRSIndices(carrier,srs(ich));srsSymbols = nrSRS(载体,srs(我));slotGrid (srsIndices) = srsSymbols;dispSlotGrid (srsIndices) = chplevels(我)* srsSymbols;%缩放仅用于显示的SRS结束OFDMSymIdx = ns*SymbolsPerSlot + (1:SymbolsPerSlot);OFDMSymIdx,网格(::)= slotGrid;OFDMSymIdx, dispGrid (::) = dispSlotGrid;母舰。NSlot = carrier.NSlot+1;结束如果displayGrid plotGrid (dispGrid (:,: 1), chplevels,“SRS”+ (1: numSRS) ');结束结束函数varargout = plotGrid(网格、chplevels、腿)% plotGrid(GRID, CHPLEVEL,LEG)显示包含%通道或信号在不同功率级别chpllevel,并创建一个%图例用于这些使用单元格数组的字符向量LEG如果Nargin < 3 leg = {SRS的};如果Nargin < 2 chplevels = 1;结束结束提出= colormap (gcf);chpscale =城市规划机构(cmap)长度;%的比例因子h =图;图像(0:大小(网格,2)1(0:大小(网格,1)1)/ 12,chpscale * abs(网格(:,:1)));%与比例因子相乘,以获得更好的可视化效果xy;标题(“包含SRS的载波网格”)包含(OFDM符号的);ylabel (RB的);clevels = chpscale * chplevels (:);N =长度(clevels);L =线((N), (N),“线宽”8);%生成线为颜色地图建立索引,并将所选颜色与线条关联起来集(L, {“颜色”}, mat2cell(提出(min(1 +修复(clevels),城市规划机构(cmap)长度),:),(1,N), 3));根据cmap设置颜色%创造传奇传奇(腿(:));如果varargout = {h};结束结束函数hSRSAnnotations(载体,srs)% hsrsannotions (carrier,srs)向当前图形添加注释%表示SRS的频率起源和每个使用的RB的数量配置对象CARRIER和SRS的OFDM符号。计算第一个SRS符号的频率原点f0 = hSRSFrequencyOrigin (srs);持有;hfig = gcf;集(hfig,“单位”“归一化”);Sym0 = srs.symbolstart - 0.5;如果isnumeric(srs.SRSPeriod) Sym0 = srs.SRSPeriod(2)*载波。SymbolsPerSlot + srs.symbolstart - 0.5;结束IP =得到(gca,“位置”);% y坐标在SRS频率位置f0的当前坐标轴上Yf0 = f0 / carrier.NSizeGrid * IP (4) + IP (2);Xc = Sym0 / ((carrier.NSlot + 1) * carrier.SymbolsPerSlot) * IP (3) + IP (1);%在RB中为包括f0在内的图添加注释如果f0 /载体。NSizeGrid > 0.08当y轴上有足够的空间时,只绘制f0为F0创建双learrowYMin = IP (2);注释(hfig“doublearrow”,Xc*[1 1], [YMin Yf0],...“颜色”0.4 - 0.15 [1]);F0的%文本str = sprintf ('$$F_0 = %d $$ RB'f0);Ystr = f0 / carrier.NSizeGrid / 2;文本(gca, (Xc-IP (1) / IP (3) -0.25, Ystr, str,...“颜色”0.4 - 0.15 [1],“字形大小”14岁的...“单位”“归一化”“翻译”“乳胶”);结束从f0创建双learrow并跨越SRS带宽Yf1 = Yf0 + sr . nrbpertransmission /carrier.NSizeGrid*IP(4);注释(hfig“doublearrow”,Xc*[1 1], [Yf0 Yf1],...“颜色”0.4 - 0.15 [1]);%文本为NRBtstr = sprintf ('$$\\textrm{NRB}_T = %d $$ RB', srs.NRBPerTransmission);Ystr = (f0 + 0.5*srs.NRBPerTransmission)/carrier.NSizeGrid;文本(gca, (Xc-IP (1) / IP (3) -0.32, Ystr, str,...“颜色”0.4 - 0.15 [1],“字形大小”14岁的...“单位”“归一化”“翻译”“乳胶”);结束函数f0 = hSRSFrequencyOrigin (srs)计算槽中第一个SRS符号的频率原点NSBTable = hSRSNumberOfSubbandsOrHoppingPatterns (srs);NRBt = srs.NRBPerTransmission;%在RB中频率SRS的起源f0 = srs。FrequencyStart + NRBt*mod(floor(4*srs.NRRC/NRBt),NSBTable);结束函数[NRRC, NRB] = hNRRCSet (srs)%计算NRRC的值,这些值在频率上生成一组惟一的正交SRS如果srs。BHop < srs.BSRS%跳频情况下NRB = srs (1) .NRB;%跳跃带宽其他的NRB = nrSRSConfig.BandwidthConfigurationTable {srs (1) csr + 1, 2};结束%跳频模式或SRS子带的数量,取决于BSRS和BHop的值N = hSRSNumberOfSubbandsOrHoppingPatterns (srs);NRRC = NRB / 4 * (0: N - 1) / N;结束

参考文献

[1]3 gpp TS 38.211。“NR;物理通道和调制。”第三代伙伴关系项目;技术规范组无线电接入网

另请参阅

功能

对象

相关的话题

Baidu
map