该示例显示了新的无线电(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。在本地振荡器中产生的相位噪声引入了MM波频率的显着降解。它产生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 Toolbox™提供具有不同粒度水平的物理(PHY)层建模的功能。从PHY信道级别函数的粒度范围内的粒度范围,该功能执行传输和物理信道处理,以执行循环冗余校验(CRC)编码,代码块分段,低密度奇偶校验(LDPC)信道编码,等等.工具箱提供与PUSCH关联的参考信号功能作为函数nrPUSCHDMRS
那nrPUSCHDMRSIndices
那nrPUSCHPTRS
, 和nrpuschptrsindices.
.
PUSCH是携带用户数据的物理信道。分配用于PUSCH的资源在载体的带宽部分(BWP)内,如TS 38.214第6.1.2节所定义[2].PUSCH传输时域中的资源由字段中的下行链路控制信息(DCI)安排时间域资源分配。该字段表示槽位偏移量 ,开始符号S.,分配长度L., PUSCH的映射类型。有效的组合S.和L.如表1所示。
PUSCH传输频域中的资源由该字段中的DCI调度频域资源分配.该字段指示资源块(RB)的资源分配是否是基于分配类型的连续性的或非连续的。分配的RBS在BWP内。
5G工具箱™提供nrcarrierconfig
和nrpuschconfig
对象来设置与BWP中的PUSCH相关的参数。
%使用15 kHz子载波间距和10 MHz带宽设置载波carrier = nrcarrierconfig;carrier.subcarrierspacing = 15;CARRACT.CYCLICPREFIX =.'普通的';carrier.nsizegrid = 52;carrier.nstartgrid = 0;%配置物理上行链路共享信道参数pusch = nrpuschconfig;pusch.nsizebwp = [];% Empty表示该值等于NSizeGridpusch.nstartbwp = [];% Empty表示该值等于NStartGridpusch。PRBSet = 25;%分配一半的载波带宽pusch.symbolallocation = [0 14];%符号分配[s l]pusch.mappingtype =“一个”;% PUSCH映射类型('A' or 'B')pusch.transmissionscheme =“nonCodebook”;%('codebook'或'nonodebook')当设置变速器时,%以下参数适用%到'codebook'pusch.numantennaports = 4;pusch.tpmi = 0;
DM-RS用于估计无线电通道。DM-R仅存在于预定PUSCH的RBS中。DM-RS结构旨在支持不同的部署方案和用例。万博1manbetx
控制DM-RS时间资源的参数是:
PUSCH符号分配
映射类型
插槽频率跳跃
dm-rs键入一个位置
DM-RS长度
DM-RS额外位置
PUSCH的符号分配表示为槽中分配的OFDM符号位置分配给PUSCH传输。映射类型表示第一DM-RS OFDM符号位置和OFDM符号的持续时间( )。用于映射类型A, 为槽位的第一个OFDM符号与已分配的PUSCH资源的最后一个OFDM符号之间的持续时间。对于映射类型B, 是分配的PUSCH资源的持续时间。启用插槽频率跳频时, 是每跳的持续时间。当启用插槽频率跳频时,每个跳中都存在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。图1显示了PUSCH的DM-RS符号位置占用PUSCH映射型A,插槽频率跳频的符号,并且DM-RS附加位置的数量为1.图显示了每跳中存在DM-R.每个跳中的DM-RS符号的位置取决于每个跳中为PUSCH分配的OFDM符号的数量。
DM-RS的其他参数请参见NR PDSCH资源分配和DM-RS和PT-RS参考信号.
%分配了PUSCH的插槽频率跳跃pusch.frequencyhopping ='intrastrot';% 'neither', 'intraSlot', 'interSlot'pusch。S.econdHopStartPRB = 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型.配置类型1定义每个天线端口的每个物理资源块(PRB)的六个子载波,包括备用子载波。配置类型2定义每个天线端口每个PRB的四个子载波,由两组两个连续的子载波组成。根据相关的天线端口或码分复用(CDM)组,应用于所使用的子载波组的不同增量移位。对于配置类型1,有两种可能的CDM组/跨越八个可能的天线端口的移位(P = 0 ... 7)。对于配置类型2,有三个可能的CDM组/跨越12个天线端口的移位(P = 0 ... 11)。有关更多详细信息,请参阅NR PDSCH资源分配和DM-RS和PT-RS参考信号.
在基于码本的PUSCH处理的情况下,将存在于每个层中的DM-RS子载波位置的联合投影到所有天线端口。
%设置控制DM-RS频率资源的参数pusch.dmrs.dmrsconfiguringtype = 1;%1或2pusch.dmrs.dmrsportset = 0;%只读属性deltashifts和dmrssubcarierlierlierlocations dmrsPUSCH对象的%属性提供了Delta Shift(S)和DM-RS的值配置每个天线端口的RB中的%子载波位置。pusch.DMRS.DeltaShifts
ans = 0
pusch.dmrs.dmrssubcarrierlocations
ans =.6×10 2 4 6 8 10
用于DM-RS的伪随机序列是 黄金序列长度。该序列是跨所有公共资源块(crb)生成的,并且仅在为数据分配的RBs中传输,因为不需要该序列来估计未传输数据的频率区域之外的信道。在多用户MIMO的情况下,跨所有crb生成参考信号序列,确保在重叠时频资源上的多个终端使用相同的底层伪随机序列。控制序列生成的参数为:
DM-RS置乱标识( )
DM-RS置乱初始化( )
插槽中的OFDM符号数
无线电帧中的插槽号
DM-RS符号的位置
PRBS分配
载波对象的CyclicPrefix属性控制插槽中OFDM符号的数量。运营商对象的NSLOT属性控制插槽号。
在基于码本的PUSCH处理的情况下,序列乘以预编码器矩阵,这取决于层数,天线端口的数量和发送的预编码器矩阵指示符(TPMI)。
%设置仅控制DM-RS序列生成的参数pusch.dmrs.nidnscid = 1;%使用空将其设置为载体的NcellIdpusch.DMRS.NSCID = 0;% 0或1%生成DM-RS符号pusch.numlayers = numel(pusch.dmrs.dmrsportset);dmrsSymbols = nrPUSCHDMRS(载体、pusch);%绘制星座图散点图(DMRSSYMBOLS)标题(“DM-RS星座”)xlabel('真实的')ylabel(“虚”)
% DMRS的只读属性TimeWeights和FrequencyWeightspush对象的%属性提供时间和频率的值%权重应用于DM-RS符号。pusch.dmrs.timeweights.
ans =.2×11 1
pusch.dmrs.frequency重量
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母舰。S.ymbolsPerSlot nports]); grid(dmrsIndices) = dmrsSymbols; figure imagesc(abs(grid(:,:,1))); axisxy;Xlabel(OFDM符号的);ylabel('子载波');标题('DM-RS时频位置');
PT-RS是相位跟踪参考信号。PT-RS主要用于估计和最小化CPE对系统性能的影响。由于相位噪声特性,PT-RS信号具有频域低密度、时域高密度的特点。PT-RS总是与DM-RS结合出现,而且只有在网络配置PT-RS出现时才会出现。
PT-RS通过上层参数配置DMRS-UpporkConfig上行。控制PT-RS时间资源的参数为:
DM-RS符号的位置
pt-rs的时间密度( )
取决于预定的调制和编码方案。该值必须是{1,2,4}中的一个。对于控制DM-RS符号位置的参数,请参阅控制DM-RS时间资源的参数(CP-OFDM).
%将PUSCH中的EnablePtrs属性设置为1pusch.enableptrs = 1;%设置PT-RS时间资源的控制参数pusch.ptrs.timedity = 2;
PT-R为一个OFDM符号的RB中仅占一个子载波。控制PT-RS频率资源的参数是:
复审委员会分配
DM-RS配置类型
PT-RS频率密度( )
无线电网络临时标识符( )
资源元素偏移
PT-RS天线端口
取决于计划的带宽。该值为2或4。值指示PT-R是否存在于每两个RB中或每四个RB中。
有关更多详细信息,请参阅NR PDSCH资源分配和DM-RS和PT-RS参考信号.
%设置控制PT-RS子载波位置的参数pusch.rnti = 1;pusch.dmrs.dmrsconfiguringtype = 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;%使用空将其设置为载体的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, puschIndices);dmrsIndices = nrPUSCHDMRSIndices(载体、pusch);ptrsIndices = nrPUSCHPTRSIndices(载体、pusch);%DM-RS和PT-RS符号dmrsSymbols = nrPUSCHDMRS(载体、pusch);ptrsSymbols = nrPUSCHPTRS(载体、pusch);
使用缩放值映射PUSCH,DM-RS和PT-RS和PT-RS对网格的索引,以可视化网格上的相应位置。
chpLevel =结构;chpLevel。PUSCH= 0.4; chpLevel.DMRS = 1; chpLevel.PTRS = 1.4; gridCPOFDM = complex(zeros([carrier.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(ptrsSymbols)))); gridCPOFDM(ptrsIndices) = ptrsFactor*ptrsSymbols; plotGrid(gridCPOFDM,1,chpLevel)
在上图中,PT-RS位于物理上行共享信道分配中的OFDM符号开始处。这些符号出现在每一个 彼此的跳跃间隔或来自DM-RS符号。PT-RS的连续子载波位置的差异为24,其是PT-RS(2)频率密度的RB(12)倍的子载波的数量。
DFT-S-OFDM仅万博1manbetx支持单层传输,主要用于低覆盖场景。DFT-S-OFDM中DM-RS的时频资源以实现低立方度量和高功率放大器效率的方式。与其他上行链路数据传输复用的参考信号频率的传输高度影响由于立方度量增加的功率放大器效率。参考信号与上行链路传输时间多路复用,从而阻止携带DM-RS的OFDM符号中的数据传输的所有资源元素。
DFT-s-OFDM中DM-RS时间资源控制参数为:
PUSCH符号分配
映射类型
插槽频率跳跃
dm-rs键入一个位置
DM-RS长度
DM-RS额外位置
这些参数是控制CP-OFDM中DM-RS的时间资源的相同参数。有关更多详细信息,请参阅控制DM-RS时间资源的参数(CP-OFDM).
%将pusch中的变换额定属性设置为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用于覆盖限制方案万博1manbetx,因此无需支持多用户MIMO情况。在没有MIMO情况下,仅针对传输的PRB而不是OFDM中的CRB而不是CRB产生参考信号。由于在DFT-S-OFDM中允许的单层和单个配置类型,RB中用于DM-RS的子载波位置的数量是恒定的。图2示出了DFT-S-OFDM中的DM-RS子载波位置,用于映射型A与OFDM符号分配用于跨越完整插槽的PUSCH。
%设置DM-RS天线端口pusch.dmrs.dmrsportset = 0;
DM-RS序列是DFT-s-OFDM中的ZadoffChu序列。对一组数和一组序号进行不同的循环移位,生成正交序列。控制序列生成的参数为:
复审委员会分配
集团跳跃
序列跳跃
DM-RS置乱标识( )
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(载体、pusch);dmrsIndices = nrPUSCHDMRSIndices(载体、pusch);dmrsfactor = chplevel.dmrs *(1 /(max(abs(dmrssymbols)))));%将DM-RS映射到网格上grid = complex(zeros([12 * carrier.nsizegrid cross.symbolsperslot nports])));网格(DMRSindices)= DMRSFactor * DMRSSYMBOLS;%生成PUSCH索引并映射到网格Puschindices = NRPUSCHINDICES(载体,PUSCH);网格(PUSCHINDICES)= CHPLEVEL.PUSCH;绘制网格titleText =.'包含PUSCH和DM-RS的载体网格';plotgrid(网格,1,struct('pusch', chpLevel。PUSCH,dmr的, titleText chpLevel.DMRS) {'pusch'那“DM-RS”})
占用DM-RS的OFDM符号中的子载波位置不分配给PUSCH。
DFT-S-OFDM中的PT-RS插入变换预编码阶段中的数据。
控制DFT-S-OFDM中PT-RS的时间资源的参数与控制CP-OFDM中PT-RS的时间资源的参数相同。的价值 在DFT-s-OFDM中为1或2。有关更多详细信息,请参阅控制PT-RS时间资源的参数(CP-OFDM).
%在单个插槽中为RB生成一个具有共享信道分配的网格百分比为单层的14个符号的完整符号分配%使用一个RB设置运营商资源网格carrier.nsizegrid = 1;%配置PUSCH与DFT-s-OFDM和无跳频pusch.transformprecoding = 1;pusch.frequencyhopping ='两者都不';%设置控制PT-RS时间资源的参数pusch.enableptrs = 1;pusch.ptrs.timedity = 2;
频域中的PT-RS模式与CP-OFDM非常不同。PT-RS样本被插入块或组( )。每组包括有限数量的样本( )在PT-RS存在的每个OFDM符号的计划带宽中。
控制DFT-S-OFDM中PT-RS频率资源的参数是:
复审委员会分配
组中的PT-RS样本数量( )
PT-RS组数( )
PT-RS样品密度的有效组合([ ])是{[2 2],[2 4],[4 2],[4 4],[4 8]}。根据所有PT-RS组中的PT-RS样本数量,OFDM符号中的PT-RS样本的数量在DFT-S-OFDM中固定。此数字与CP-OFDM不同,其中PT-RS样本的数量基于PUSCH中的RBS数增加。
图3示出了具有设置为2的PT-RS样本的数量的PT-RS符号的子载波位置,并且对于携带PT-RS的OFDM符号设置为2的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分配的DM符号
插槽中的OFDM符号数
无线电帧中的插槽号
PT-RS扰乱身份( )
PT-RS子载波位置
%设置控制PT-RS序列生成的参数pusch.dmrs.nrsid = 1;pusch.ptrs.nid = 10;%fally将其设置为DMRS配置的NRSID
生成PUSCH和PT-RS RE指数。
%PUSCH和PT-RS指数[puschIndices, puschInfoDFTsOFDM] = nrPUSCHIndices(载波,推);ptrsIndices = nrPUSCHPTRSIndices(载体、pusch);
将PUSCH和PT-RS资源元素设置为常量值。
%插入PT-RS以及PUSCH数据gdptrs = size(重塑(ptrsindices,[],pusch.numlayers),1);DataWithptrs = Chplevel.pusch *那些(puschinfodftsofdm.gd + gdptrs,1);DataWithPtrs(Ptrsindices(:,1))= Chplevel.ptrs;
在网格上绘制PT-RS投影。
gridDFTsOFDM = 0 (numel(pusch.PRBSet)*12, carrier.SymbolsPerSlot);%用数据和参考信号映射网格griddftsofdm(:,puschinfodftsofdm.dmrssymbolset + 1)= chplevel.dmrs;griddftsofdm(〜(griddftsofdm == chplevel.dmrs))= DataWithPtrs;%变换前将DM-RS和PT-RS数据投影到网格上%预编码fnames = {'pusch'那'DM-RS + RES'那'pt-rs'};titleText =.'在转换预编码之前的数据,DM-RS和PT-RS的投影';plotgrid(griddftsofdm,1,chplevel,tipletext,fnames)
您可以尝试更改影响参考信号的时间和频率资源的参数,并观察各个信号的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中参考信号的时频模式以及参考信号在不同波形中产生的序列变化。
3GPP TS 38.211。“NR;物理渠道和调制(版本15)。”第三代合作伙伴计划;技术规范集团无线电接入网络.
3 gpp TS 38.214。“NR;数据的物理层程序(发布15)。”第三代合作伙伴计划;技术规范集团无线电接入网络.
3 gpp TS 38.212。“NR;多路复用和信道编码(第15版)。”第三代合作伙伴计划;技术规范集团无线电接入网络.
功能plotGrid(网格、nLayer chpLevel titleText,名称)% plotGrid显示资源网格网格的层号NLAYER%包含物理通道和相关参考信号的图例%不同的功率级别chlevel与标题TITLETEXT。创建传奇%使用字符向量NAMES的单元格数组。如果nargin <4 titletext ='载体网格含有PUSCH,DM-RS和PT-RS';结尾如果nargin <5名称= {'pusch'那“DM-RS”那'pt-rs'};结尾地图= parula (64);cscaling = 40;我=图像(1:尺寸(网格,2),1:尺寸(网格,1),cscaling * abs(网格(:,:,nLayer)));colormap (im.Parent地图);%向图像添加图例chpval = struct2cell (chpLevel);clevels = cscaling * [chpval {}):;N =长度(clevels);L =线((N), (N),“线宽”8);%生成线索引颜色映射并将所选的颜色与线条相关联集(L, {“颜色”},mat2cell(Map(min(1 +克利斯,长度(map)),:),一个(1,n),3));%根据地图设置颜色%创造传奇传奇(名字{:});轴xy;ylabel('子载波');Xlabel(OFDM符号的);标题(Titlext);结尾