主要内容

NR PUSCH资源分配和DM-RS和PT-RS参考信号

此示例显示了新无线电(NR)物理上行链路共享信道(PUSCH)、相关解调参考信号(DM-RS)和相位跟踪参考信号(PT-RS)的时频方面。该示例显示了PUSCH资源分配如何影响DM-RS和PT-RS的时频结构。

介绍

在5G NR中,PUSCH是承载用户数据的物理上行通道。DM-RS和PT-RS是PUSCH相关的参考信号。DM-RS用于信道估计,作为PUSCH相干解调的一部分。为了补偿共相位误差(CPE), 3GPP 5G NR引入了PT-RS。本振中产生的相位噪声在毫米波频率上引起显著的降低。产生CPE和载波间干扰(ICI)。CPE导致接收到的符号在每个副载波中有相同的旋转。ICI导致子载波之间失去正交性。PT-RS主要用于估计和最小化CPE对系统性能的影响。

参考信号的时频结构取决于为PUSCH配置的波形类型,如TS 38.211章节6.4.1.1和6.4.1.2所定义[1].禁用变换预编码时,配置的波形为循环前缀正交频分复用(CP-OFDM)。当使能变换预编码时,所配置的波形为离散傅里叶变换扩展正交频分复用(DFT-s-OFDM)。

5G工具箱™提供了具有不同粒度级别的物理层建模功能。粒度级别包括执行传输和物理信道处理的PHY信道级函数,以及执行循环冗余校验(CRC)编码、代码块分割、低密度奇偶校验(LDPC)信道编码等的单个信道处理阶段函数。工具箱提供与PUSCH相关联的参考信号功能作为函数nrpuschdmrs.,nrPUSCHDMRSIndices,nrPUSCHPTRS,nrPUSCHPTRSIndices

PUSCH

PUSCH是承载用户数据的物理通道。按照TS 38.214章节6.1.2的定义,为PUSCH分配的资源在载波的带宽部分(BWP)内[2].现场采用下行控制信息(DCI)对PUSCH传输的时域资源进行调度时间域资源分配。该字段表示槽位偏移量 K 0 开始,象征s,分配长度L, PUSCH的映射类型。有效的组合sL如表1所示。

用于PUSCH传输的频域资源由现场DCI调度频域资源分配. 此字段根据分配类型指示资源块(RB)的资源分配是连续的还是非连续的。分配的RBs在BWP内。

5G工具箱™提供nrCarrierConfignrPUSCHConfig对象来设置与BWP中的PUSCH相关的参数。

%设置具有15 kHz子载波间隔和10 MHz带宽的载波载体= nrCarrierConfig;母舰。subcarrierSpacing = 15; carrier.CyclicPrefix =“正常”; carrier.NSizeGrid=52;carrier.NStartGrid=0;%配置物理上行共享通道参数pusch=nrPUSCHConfig;pusch.NSizeBWP=[];%空暗示值等于nsizegridpusch.NStartBWP=[];%空暗示值等于nstartGridpusch.prbset = 0:25;%分配一半的载波带宽pusch.SymbolAllocation=[0 14];%符号分配[S L]pusch。MappingType ='一种'%pusch映射类型('a'或'b')普施传播模式='nonodebook'% ('codebook'或'nonCodebook')%设置变速箱模式时,以下参数适用%“码”pusch.numantennaport=4;pusch.TPMI=0;

CP-OFDM的DM-RS

DM-RS用于信道估计。DM-RS仅存在于PUSCH计划的RBs中。DM-RS结构旨在支持不同的部署场景和用例。金宝app

控制时间资源的参数

DM-RS时间资源控制参数为:

  • PUSCH符号分配

  • 映射类型

  • 时隙内跳频

  • DM-RS A型位置

  • DM-RS长度

  • DM-RS附加位置

PUSCH的符号分配表示在一个槽中为PUSCH传输分配的OFDM符号位置。映射类型表示第一个DM-RS OFDM符号位置和OFDM符号持续时间( L D ).对于映射类型A, L D 是插槽的第一个OFDM符号与分配的PUSCH资源的最后一个OFDM符号之间的持续时间。用于映射类型B, L D 是分配的PUSCH资源的持续时间。当启用时隙内跳频时, L D 是每跳的持续时间。当启用时隙内跳频时,DM-RS符号出现在每个跳中。当启用时隙内跳频时,DM-RS是单个符号,最大附加位置数为0或1。DM-RS符号位置由TS 38.211表6.4.1.1.3-3、6.4.1.1.3-4和6.4.1.1.3-6给出。图e 1显示了PUSCH占用14个符号的DM-RS符号位置,其中PUSCH映射类型为A,时隙内跳频启用,DM-RS附加位置的数量为1。该图显示了DM-RS存在于每个跳中。每个跳中的DM-RS符号位置取决于每个跳中分配给PUSCH的OFDM符号数量。

有关其他DM-RS参数的详细信息,请参阅NR PDSCH资源分配和DM-RS和PT-RS参考信号

%为PUSCH分配槽内跳频pusch.frequencyhopping =“intraSlot”%'既不','interslot','Interslot'pusch。secondHopStartPRB = 26;%设置DM-RS时间资源的控制参数pusch.DMRS.DMRSTypeAPosition = 2;% 2或3pusch.dmrs.dmrslength = 1;% 1或% 2(单符号或双符号)pusch.DMRS.DMRSAdditionalPosition = 1;% 0…3(DM-RS新增职位数)

控制频率资源的参数

控制DM-RS频率资源的参数为:

  • DM-RS配置类型

  • DM-RS天线端口

配置类型表示DM-RS的频率密度,由RRC消息提示dmrs-Type. 配置类型1为每个天线端口的每个物理资源块(PRB)定义了六个子载波,包括备用子载波。配置类型2定义了每个天线端口每个PRB的四个子载波,由两组连续的两个子载波组成。根据相关联的天线端口或码分多址(CDM)组,对所使用的子载波组应用不同的增量移位。对于配置类型1,在八个可能的天线端口上有两个可能的CDM组/移位(p=0…7)。对于配置类型2,十二个天线端口上有三个可能的CDM组/移位(p=0…11)。有关详细信息,请参阅NR PDSCH资源分配和DM-RS和PT-RS参考信号

在基于码本PUSCH处理的情况下,每一层存在的DM-RS子载波位置的并投影到所有天线端口。

%设置DM-RS频率资源的控制参数pusch.DMRS.DMRSConfigurationType = 1;% 1或2pusch.DMRS.DMRSPortSet = 0;% DMRS的只读属性deltasshift和DMRSSubcarrierLocations%属性提供增量移位和DM-RS的值为每个天线端口配置的RB中的子载波位置。pusch.dmrs.deltashifts.
ans = 0.
pusch.DMRS.DMRSSubcarrierLocations
ans =6×11 . 2 .纳米比亚

序列生成

用于DM-RS的伪随机序列是 2. 31. - 1. 长度金序列。在所有公共资源块(CRB)上生成序列,并且仅在分配数据的RBS中发送,因为序列不需要估计未发送数据的频率区域之外的信道。在所有CRB上生成参考信号序列可确保在多用户MIMO的情况下,在重叠时频资源上用于多个UE的相同底层伪随机序列。控制序列生成的参数是:

  • DM-RS置乱标识( N ID N SCID )

  • DM-RS置乱初始化( N SCID )

  • 一个槽中的OFDM符号数

  • 无线电帧中的时隙号

  • DM-RS符号位置

  • PRBs分配

载波对象的CyclicPrefix属性控制时隙中的OFDM符号数。载波对象的NSlot属性控制插槽号。

在基于码本的PUSCH处理的情况下,该序列与预编码矩阵相乘,该预编码矩阵取决于层的数量、天线端口的数量和发送的预编码矩阵指示符(TPMI)。

%设置仅控制DM-RS序列生成的参数pusch.DMRS.NIDNSCID=1;%使用empty设置为运营商的NCellIDpusch.DMRS.NSCID = 0;% 0或1%生成DM-RS符号pusch。NumLayers = numel(pusch.DMRS.DMRSPortSet); dmrsSymbols = nrPUSCHDMRS(carrier,pusch);%绘制星座图散点图(dmrsSymbols)标题(“DM-RS星座”)包含(“真实”的) ylabel ('假想')

图散点图包含一个轴对象。标题为DM-RS Constellation的轴对象包含一个类型为line的对象。这个对象表示通道1。

% DMRS的只读属性TimeWeights和FrequencyWeightsPUSCH对象的%属性提供时间和频率的值%权重应用于DM-RS符号。pusch.DMRS.TimeWeights
ans =2×11 1
pusch.DMRS.频率权重
ans =2×11 1
%生成DM-RS索引dmrsIndices = nrPUSCHDMRSIndices(载体、pusch);%利用DM-RS索引将DM-RS符号映射到网格中如果strcmpi (pusch。TransmissionScheme,“代码本”) nports = pusch. numantennapports;其他的nport = pusch.NumLayers;结束网格= 0([12 *载体。NSizeGrid母舰。symbolsPerSlot nports]); grid(dmrsIndices) = dmrsSymbols; figure imagesc(abs(grid(:,:,1))); axisXY.;Xlabel(OFDM符号的);ylabel (副载波的); 头衔(“DM-RS时频位置”);

图中包含一个轴对象。标题为DM-RS时频位置的轴对象包含一个类型为图像的对象。

用于CP-OFDM的PT-RS

PT-RS是相位跟踪参考信号。PT-RS主要用于估计和最小化CPE对系统性能的影响。由于相位噪声特性,PT-RS信号具有频域低密度、时域高密度的特点。PT-RS总是与DM-RS结合出现,而且只有在网络配置PT-RS出现时才会出现。

控制时间资源的参数

PT-RS通过更高的图层参数配置DMRS上行链路配置上行。控制PT-RS时间资源的参数为:

  • DM-RS符号位置

  • PT-RS时间密度( L PT - 卢比 )

L PT - 卢比 取决于计划的调制和编码方案。该值必须是{1,2,4}中的一个。有关控制DM-RS符号位置的参数,请参阅DM-RS时间资源控制参数(CP-OFDM)

%将push中的EnablePTRS属性设置为1pusch.enableptrs = 1;%设置控制PT-RS的时间资源的参数pusch.PTRS.TimeDensity = 2;

控制频率资源的参数

对于一个OFDM符号,PT-RS只占用RB中的一个子载波。控制PT-RS频率资源的参数为:

  • 复审委员会分配

  • DM-RS配置类型

  • PT-RS频率密度( K PT - 卢比 )

  • 无线电网络临时标识符( N RNTI )

  • 资源元素抵消

  • PT-RS天线端口

K PT - 卢比 取决于预定的带宽。取值为2或4。该值指示PT-RS是每两个RBs还是每四个RBs出现一次。

有关更多详细信息,请参阅NR PDSCH资源分配和DM-RS和PT-RS参考信号

%设置控制PT-RS子载波位置的参数pusch。RNTI= 1; pusch.DMRS.DMRSConfigurationType = 1; pusch.DMRS.DMRSPortSet = 0;%设置PT-RS参数pusch.PTRS.FrequencyDensity = 2;% 2或4pusch.PTRS.REOffset ='10'%'00','01','10','11'pusch.PTRS.PTRSPortSet = min (pusch.DMRS.DMRSPortSet);

序列生成

用于生成PT-RS的序列与用于生成DM-RS序列的伪随机序列相同。在没有时隙内跳频的情况下,PT-RS序列的值取决于第一个DM-RS符号位置。在存在时隙内跳频的情况下,PT-RS序列的值取决于第一个DM-RS符号位置有关更多详细信息,请参阅一节DM-RS序列生成(CP-OFDM)

在基于码本的PUSCH处理的情况下,该序列与预编码矩阵相乘,该预编码矩阵取决于层的数量、天线端口的数量和发送的预编码矩阵指示符(TPMI)。

%设置控制PT-RS序列生成的参数pusch.DMRS.NIDNSCID=1;%使用empty设置为运营商的NCellIDpusch.DMRS.NSCID = 0;% 0或1

生成PUSCH、DM-RS、PT-RS的资源元素(RE)指标。另外,生成DM-RS和PT-RS符号。

%控制DM-RS OFDM符号中数据可用的资源元素%的位置pusch.DMRS.NumCDMGroupsWithoutData = 1;%PUSCH、DM-RS和PT-RS指数pusch。NumLayers = numel(pusch.DMRS.DMRSPortSet); [puschIndices, puschInfo] = nrPUSCHIndices(carrier,pusch); dmrsIndices = nrPUSCHDMRSIndices(carrier,pusch); ptrsIndices = nrPUSCHPTRSIndices(carrier,pusch);%DM-RS和PT-RS符号dmrsSymbols = nrPUSCHDMRS(载体、pusch);ptrssymbols = nrpuschptrs(载体,pusch);

将PUSCH、DM-RS和PT-RS RE指数用比例值映射到网格上,以可视化网格上各自的位置。

Chplevel = struct;chplevel.pusch = 0.4;chplevel.dmrs = 1;chplevel.ptrs = 1.4;gridcpofdm = complex(zeros([cross.nsizegrid * 12 carrier.symbolsperslot nports])));gridcpofdm(puschindices)= chplevel.pusch;dmrsFactor = chpLevel.DMRS * (1 / (max (abs (dmrsSymbols))));gridcpofdm(dmrsindices)= dmrsfactor * dmrssymbols;ptrsfactor = chplevel.ptrs *(1 /(max(abs(abssymbols)))));gridcpofdm(ptrsindices)= ptrsfactor * ptrssymbols; plotGrid(gridCPOFDM,1,chpLevel)

图中包含一个轴对象。具有包含PUSCH,DM-RS和PT-RS标题载体网格的轴对象包含4个类型图像的物体,线。这些对象代表PUSCH,DM-RS,PT-RS。

在上图中,PT-RS位于物理上行共享信道分配中的OFDM符号开始处。这些符号出现在每一个 L PT - 卢比 或者DM-RS符号之间的跳距。PT-RS连续子载波位置的差值为24,即RB(12)中的子载波数乘以PT-RS(2)的频率密度。

用于DFT-s-OFDM的DM-RS

DFT-s-OFDM仅金宝app支持单层传输,主要用于低覆盖场景。DFT-s-OFDM中DM-RS的时频资源采用低立方度量和高功率放大器效率的结构。由于立方度量的增加,与其他上行链路数据传输复用的参考信号频率的传输高度影响功率放大器效率。参考信号与上行链路传输进行时间复用,从而在承载DM-RS的OFDM符号中阻塞用于数据传输的所有资源元素。

控制时间资源的参数

控制DFT-S-OFDM中DM-R的时间资源的参数是:

  • PUSCH符号分配

  • 映射类型

  • 时隙内跳频

  • DM-RS A型位置

  • DM-RS长度

  • DM-RS附加位置

这些参数与CP-OFDM中DM-RS时间资源的控制参数相同。欲知更多详情,请参阅DM-RS时间资源控制参数(CP-OFDM)

%将pusch中的TransformPrecoding属性设置为1pusch.TransformPrecoding=1;%参数控制时间资源pusch.DMRS.DMRSTypeAPosition=2;pusch.DMRS.DMRSLength=1;pusch.DMRS.DMRSAdditionalPosition=0;

控制频率资源的参数

DFT-s-OFDM中控制DM-RS频率资源的参数为:

  • DM-RS配置类型

  • DM-RS天线端口

这两个参数与CP-OFDM的参数相同。DM-RS配置类型始终设置为1。DM-RS天线端口名义上是值为0的标量。

由于DFT-s-OFDM适用于覆盖受限的金宝app场景,因此无需支持多用户MIMO情况。在没有MIMO情况下,参考信号仅针对发射的prb而不是OFDM中的crb生成。由于DFT-s-OFDM中允许的单层和单一配置类型,RB中用于DM-RS的子载波位置的数量是恒定的。图2示出了DFT-s-OFDM中的DM-RS子载波位置,用于映射类型A和分配用于跨越整个时隙的PUSCH的OFDM符号。

%设置DM-RS天线接口pusch.DMRS.DMRSPortSet = 0;

序列生成

DM-RS序列是DFT-s-OFDM中的ZadoffChu序列。对一组数和一组序号进行不同的循环移位,生成正交序列。控制序列生成的参数是:

  • 复审委员会分配

  • 群跳

  • 序列跳跃

  • DM-RS置乱标识( N ID 卢比 )

  • DM-RS符号位置

%控制序列生成的参数pusch.DMRS.SequenceHopping = 0;%序列跳跃(0或1)pusch.DMRS.GroupHopping = 1;%群跳(0或1)pusch.DMRS.NRSID=1;%使用empty设置为carrier的NCellID%生成DM-RS符号和索引pusch。NumLayers = numel(pusch.DMRS.DMRSPortSet); dmrsSymbols = nrPUSCHDMRS(carrier,pusch); dmrsIndices = nrPUSCHDMRSIndices(carrier,pusch); dmrsFactor = chpLevel.DMRS*(1/(max(abs(dmrsSymbols))));%将DM-RS映射到网格上网格=复(0([12 *载波。NSizeGrid母舰。symbolsPerSlot nports])); grid(dmrsIndices) = dmrsFactor*dmrsSymbols;%生成PUSCH索引并映射到网格puschIndices=nrPUSCHIndices(载体,pusch);网格(puschIndices)=chpLevel.PUSCH;%绘制网格titleText =“包含PUSCH和DM-RS的载波网格”;plotGrid(网格结构(“PUSCH”,chplevel.pusch,dmr的,chplevel.dmrs),titletext,{“PUSCH”,'dm-rs'})

图中包含一个轴对象。以“Carrier Grid Containing PUSCH”和“DM-RS”为标题的轴对象包含类型为image、line的3个对象。这些物体代表PUSCH DM-RS。

OFDM符号中的子载波位置占据DM-RS的OFDM符号用于PUSCH。

为DFT-s-OFDM PT-RS

DFT-s-OFDM中的PT-RS与变换预编码阶段的数据一起插入。

控制时间资源的参数

在DFT-s-OFDM中控制PT-RS时间资源的参数与CP-OFDM中控制PT-RS时间资源的参数相同。的价值 L PT - 卢比 DFT-S-OFDM中的1或2。欲知更多详情,请参阅PT-RS时间资源控制参数(CP-OFDM)

为单个槽中的RB生成一个共享通道分配的网格%一层14个符号的完整符号分配使用一个RB设置载波资源网格carrier.NSizeGrid=1;%使用DFT-S-OFDM配置PUSCH,没有跳频pusch.TransformPrecoding=1;pusch.frequencyhopping =“没有”%设置控制PT-RS时间资源的参数pusch.enableptrs = 1;pusch.PTRS.TimeDensity = 2;

控制频率资源的参数

在频域上,PT-RS模式与CP-OFDM模式有很大的不同。PT-RS样品以块或组的形式插入( N 集团 PT - 卢比 ).每组由有限数量的样本组成( N 桑普 集团 )在存在PT-RS的每个OFDM符号的预定带宽中。

DFT-s-OFDM中控制PT-RS频率资源的参数为:

  • 复审委员会分配

  • 一组PT-RS样品数量( N 桑普 集团 )

  • PT-RS组数( N 集团 PT - 卢比 )

PT-RS样品密度的有效组合([ N 桑普 集团 N 集团 PT - 卢比 ])是{[22],[24],[42],[44],[48]}。在DFT-s-OFDM中,基于所有PT-RS组中的PT-RS采样数,OFDM符号中的PT-RS采样数是固定的。该数目不同于CP-OFDM,在CP-OFDM中,PT-RS样本的数目基于PUSCH中RBs的数目而增加。

图3显示了PT-RS样本数为2的RB的PT-RS符号的子载波位置,以及携带PT-RS的OFDM符号的PT-RS组数为2的RB的PT-RS符号的子载波位置。

PT-RS样本密度[2 2]意味着在一个计划带宽中有两个PT-RS组,每个组有两个符号。

PT-RS在变换预编码的输入中插入分层符号。在转换预编码后,将分层符号和PT-RS都被视为数据。因此,PT-RS直接在网格中不可见。

%设置PT-RS频率资源的控制参数pusch。PRBSet = 0: carrier.NSizeGrid-1;pusch.PTRS.NumPTRSSamples = 2;% 2, 4pusch.PTRS.NumPTRSGroups = 2;%2,4,8

序列生成

DFT-S-OFDM中的PT-RS序列是改进的PI / 2-BPSK序列。控制序列生成的参数是:

  • 启动PUSCH分配的OFDM符号

  • 一个槽中的OFDM符号数

  • 无线电帧中的时隙号

  • PT-RS置乱身份( N ID )

  • PT-RS副载波位置

%设置控制PT-RS序列生成的参数pusch.DMRS.NRSID=1;pusch.PTRS.NID=10;%使用empty设置为DMRS配置的NRSID

生成PUSCH和PT-RS重新索引。

% PUSCH和PT-RS指数[PUSCHINDICES,PUSCHINFODFTSOFDM] = NRPUSCHINDICES(载体,PUSCH);ptrsindices = nrpuschptrsindices(载体,pusch);

将PUSCH和PT-RS资源元素设置为常量值。

%插入PT-RS与PUSCH数据GdPTRS=尺寸(重塑(PTR指数,[],pusch.NumLayers),1);带有ptrs的数据=chpLevel.PUSCH*个(puschInfoDFTsOFDM.Gd+GdPTRS,1);带有PTRS(ptrsIndices(:,1))=chpLevel.PTRS的数据;

将PT-RS投影绘制到网格上。

griddftsofdm = zeros(numel(pusch.prbset)* 12,carrier.symbolsperslot);%用数据和参考信号绘制网格gridDFTsOFDM (:, puschInfoDFTsOFDM.DMRSSymbolSet + 1) = chpLevel.DMRS;gridDFTsOFDM (~ (gridDFTsOFDM = = chpLevel.DMRS)) = dataWithPTRS;%变换前将DM-RS和PT-RS数据投影到网格上%预编码帧= {“PUSCH”,“DM-RS + Res”,“PT-RS”};titleText ='变换预编码前数据、DM-RS和PT-RS的投影'; plotGrid(GridDFTSODM,1,chpLevel,titleText,fNames)

图中包含一个轴对象。标题为“Data Projection of Data, DM-RS, PT-RS before Transform Precoding”的轴对象包含类型为image, line的4个对象。这些物体代表PUSCH, DM-RS+Res, PT-RS。

进一步的探索

您可以尝试改变影响参考信号的时间和频率资源的参数,并观察各自信号的RE位置的变化。

尝试改变为DM-RS和PT-RS配置的天线端口的数量,然后观察端口间参考信号和数据的变化。例如,尝试为两个天线端口0和2配置DM-RS,配置类型1,为天线端口0配置PT-RS。生成PUSCH索引、DM-RS信号(索引和符号)和PT-RS信号(索引和符号)。将它们映射到网格并可视化两个端口的网格。

尝试使用PT-RS符号和指标进行信道估计和相位跟踪。按照以下步骤计算吞吐量NR PUSCH吞吐量

此示例显示如何生成DM-RS和PT-RS序列以及如何将序列映射到OFDM运营商资源网格。它突出显示控制不同波形的参考信号时频结构的属性。例如,CP-OFDM和DFT-S-OFDM中的参考信号的时频模式以及用于不同波形中的参考信号所产生的序列中的序列的变化。

工具书类

  1. 3 gpp TS 38.211。“NR;物理信道和调制"第三代合作伙伴项目;技术规范无线电接入网

  2. 3 gpp TS 38.214。“NR;数据的物理层程序”第三代合作伙伴项目;技术规范无线电接入网

  3. 3GPP TS 38.212.“NR;多路复用和信道编码”第三代合作伙伴项目;技术规范无线电接入网

本地函数

函数Plotgrid(网格,nlayer,chplevel,titley,名称)%plotgrid显示图层编号nlayer的资源网格网格包含物理通道和相关参考信号的%图例,在%不同的功率级别chlevel与标题TITLETEXT。创建传奇%使用字符向量NAMES的单元格数组。如果nargin<4 titleText=“包含PUSCH、DM-RS和PT-RS的载波网格”结束如果Nargin < 5 names = {“PUSCH”,'dm-rs',“PT-RS”};结束地图= Parula(64);cscaling = 40;IM =图像(1:尺寸(网格,2),1:尺寸(网格,1),CSCaling * ABS(网格(:,:,nlayer));Colormap(IM.Parent,地图);%添加图例到图像chpval = struct2cell (chpLevel);clevels = cscaling * [chpval {}):;N =长度(clevels);L =线((N), (N),“线宽”8);%生成线条%索引颜色映射并将所选颜色与线相关联集(L, {'颜色'}, mat2cell(地图(min (1 + clevels长度(map)),:), (1, N), 3));%根据地图设置颜色%创造传奇传奇(名字{:});轴XY.; 伊拉贝尔(副载波的); xlabel(OFDM符号的); 标题(titleText);结束

另请参阅

功能

对象

相关的话题