主要内容

nrCSIRS

生成 CSI-RS 符号

说明

[sym,info] = nrCSIRS(carrier,csirs) 返回信道状态信息参考信号 (CSI-RS) 符号 sym,如 TS 38.211 第 7.4.1.5 节[1] 中所定义。输入 carrier 为特定 OFDM 参数集指定载波配置参数。输入 csirs 为一个或多个零功率 (ZP) 或非零功率 (NZP) CSI-RS 资源指定 CSI-RS 资源配置参数。当同时配置 ZP 和 NZP 资源时,返回的符号顺序为先 ZP 后 NZP,与 csirs 指定的资源顺序无关。该函数还返回结构体 info,其中包含有关 CSI-RS 位置的其他信息。

示例

[sym,info] = nrCSIRS(carrier,csirs,Name,Value) 使用一个或多个名称-值对组参量指定输出格式选项。未指定的选项采用默认值。

示例

全部折叠

创建一个具有默认属性的载波配置对象。该对象对应于 10 MHz 载波。

carrier = nrCarrierConfig;

创建一个具有默认属性的 CSI-RS 配置对象。

csirs = nrCSIRSConfig;

生成 single 数据类型的 CSI-RS 符号。

[sym,info_sym] = nrCSIRS(carrier,csirs,'OutputDataType','single');

为 CSI-RS 生成资源元素索引。

[ind,info_ind] = nrCSIRSIndices(carrier,csirs);

创建一个载波配置对象,将时隙数指定为 10

carrier = nrCarrierConfig('NSlot',10);

为两个周期性资源创建一个 CSI-RS 资源配置对象。指定一个 NZP 资源和一个 ZP 资源,行号分别为 35,符号位置分别为 139,子载波位置分别为 64。对于这两个资源,将周期设置为 5,将偏移量设置为 1,将密度设置为 'one'

csirs = nrCSIRSConfig;
csirs.CSIRSType = {'nzp','zp'};
csirs.CSIRSPeriod = {[5 1],[5 1]};
csirs.RowNumber = [3 5];
csirs.Density = {'one','one'};
csirs.SymbolLocations = {13,9};
csirs.SubcarrierLocations = {6,4};

为指定载波、CSI-RS 资源配置和输出格式名称-值对组参量生成 CSI-RS 符号和索引。验证符号和索引的格式。

[sym,info_sym] = nrCSIRS(carrier,csirs, ...
                'OutputResourceFormat','cell')
sym=1×2 cell array
    {0×1 double}    {0×1 double}

info_sym = struct with fields:
      ResourceOrder: [2 1]
           KBarLBar: {{1×1 cell}  {1×2 cell}}
    CDMGroupIndices: {[0]  [0 1]}
             KPrime: {[0 1]  [0 1]}
             LPrime: {[0]  [0]}

[ind,info_ind] = nrCSIRSIndices(carrier,csirs, ...
                'IndexStyle','subscript','OutputResourceFormat','cell')
ind=1×2 cell array
    {0×3 uint32}    {0×3 uint32}

info_ind = struct with fields:
      ResourceOrder: [2 1]
           KBarLBar: {{1×1 cell}  {1×2 cell}}
    CDMGroupIndices: {[0]  [0 1]}
             KPrime: {[0 1]  [0 1]}
             LPrime: {[0]  [0]}

验证生成的输出是否按照指定的 csirs.CSIRSType 索引排序,即先 ZP-CSI-RS 资源后 NZP-CSI-RS 资源。

info_sym.ResourceOrder
ans = 1×2

     2     1

info_ind.ResourceOrder
ans = 1×2

     2     1

创建一个具有默认属性的载波配置对象。

carrier = nrCarrierConfig;

创建一个 CSI-RS 资源配置对象,并设置用于跟踪的 CSI-RS 参数。在两个连续的时隙中指定四个周期性 NZP-CSI-RS 资源。指定每个时隙包含两个周期性 NZP-CSI-RS 资源,并将周期设置为 20。将前两个资源的偏移量设置为 0。将后两个资源的偏移量设置为 1。将所有资源的行号设置为 1,将密度设置为 'three'

csirs = nrCSIRSConfig;
csirs.CSIRSType = {'nzp','nzp','nzp','nzp'};
csirs.CSIRSPeriod = {[20 0],[20 0],[20 1],[20 1]};
csirs.RowNumber = [1 1 1 1];
csirs.Density = {'three','three','three','three'};
csirs.SymbolLocations = {6,10,6,10};
csirs.SubcarrierLocations = {0,0,0,0};

为载波配置对象的默认时隙数(时隙数 0)生成 CSI-RS 符号和索引。

ind0 = nrCSIRSIndices(carrier,csirs);
sym0 = nrCSIRS(carrier,csirs);

将符号映射到一个时隙持续时间的载波网格。

gridSize = [12*carrier.NSizeGrid carrier.SymbolsPerSlot max(csirs.NumCSIRSPorts)];
slotgrid0 = complex(zeros(gridSize));
slotgrid0(ind0) = sym0;

将载波配置中的绝对时隙数从 0 更改为 1

carrier.NSlot = 1; 

为时隙数 1 生成 CSI-RS 符号和索引。

ind1 = nrCSIRSIndices(carrier,csirs);
sym1 = nrCSIRS(carrier,csirs);

将符号映射到一个时隙持续时间的另一个载波网格。

slotgrid1 = complex(zeros(gridSize));
slotgrid1(ind1) = sym1;

将两个时隙串联起来以形成最终的网格。

grid = [slotgrid0 slotgrid1];

绘制网格图。

imagesc(abs(grid(:,:,1)));
axis xy;
title('CSI-RS as Tracking Reference Signal');
xlabel('OFDM Symbols');
ylabel('Subcarriers');

Figure contains an axes object. The axes object with title CSI-RS as Tracking Reference Signal, xlabel OFDM Symbols, ylabel Subcarriers contains an object of type image.

输入参数

全部折叠

特定 OFDM 参数集的载波配置参数,指定为 nrCarrierConfig 对象。

CSI-RS 资源配置参数,指定为 nrCSIRSConfig 对象。

名称-值参数

全部折叠

将可选参量对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但对各个参量对组的顺序没有要求。

如果使用的是 R2021a 之前的版本,请使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: 'OutputDataType','single' 为输出符号指定 single 数据类型。

生成的 CSI-RS 符号的数据类型,指定为以逗号分隔的对组,其中包含 'OutputDataType''double''single'

数据类型: char | string

CSI-RS 符号的输出格式,指定为以逗号分隔的对组,其中包含 'OutputResourceFormat' 和以下值之一:

  • 'concatenated' - 输出 sym 是一个单列向量,包含串联的所有 CSI-RS 符号。

  • 'cell' - 输出 sym 是一个元胞数组,其中每个元胞对应于一个 CSI-RS 资源。

数据类型: char | string

输出参量

全部折叠

CSI-RS 符号,以复数列向量或由复数列向量组成的元胞数组形式返回。

数据类型: single | double

CSI-RS 位置信息,以包含以下字段的结构体形式返回:

字段描述
ResourceOrder

按照 CSIRSType 索引排列的 CSI-RS 资源的顺序。CSIRSType 是输入 csirs 配置对象的一个属性,用于指定函数为其生成输出的所有 CSI-RS 资源。

KBarLBar

所有码分复用 (CDM) 组对应的最低资源元素的频域和时域位置

CDMGroupIndices

CDM 组索引

KPrime

CDM 组内的频域索引

LPrime

CDM 组内的时域索引

ResourceOrder 之外,每个字段均按照输入 csirs 配置对象的 CSIRSType 属性指定的资源顺序返回信息。这些字段表示每个资源在一个时隙内 CSI-RS 的频域和时域位置,如 TS 38.211 表 7.4.1.5.3-1 中所定义。

参考

[1] 3GPP TS 38.211. “NR; Physical channels and modulation.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

扩展功能

全部展开

版本历史记录

在 R2019b 中推出