Main Content

nrCSIRSConfig

CSI-RS 構成パラメーター

R2019b 以降

説明

nrCSIRSConfig オブジェクトは、TS 38.211 の Section 7.4.1.5[1]の定義に基づき、1 つ以上のゼロ電力 (ZP) または非ゼロ電力 (NZP) のチャネル状態情報基準信号 (CSI-RS) リソースに関する CSI-RS 構成パラメーターを設定します。

作成

説明

csirs = nrCSIRSConfig は、既定のプロパティを使用して CSI-RS 構成オブジェクトを作成します。

csirs = nrCSIRSConfig(Name,Value) は、1 つ以上の名前と値のペアの引数を使用してプロパティを指定します。各プロパティを引用符で囲みます。たとえば、'CSIRSType',{'zp','nzp','zp'},'Density',{'one','dot5odd','three'},'SubcarrierLocations',{0,4,[0 4]} は、異なる周波数密度の値と異なる周波数領域の位置をもつ 3 つの CSI-RS リソースを指定します。指定していないプロパティは既定値になります。

プロパティ

すべて展開する

1 つ以上の CSI-RS リソース構成のタイプ。次のオプションのいずれかとして指定します。

  • 'nzp' — このオプションを使用して、単一の NZP-CSI-RS リソースを指定します。

  • 'zp' — このオプションを使用して、単一の ZP-CSI-RS リソースを指定します。

  • 'nzp' または 'zp' を要素にもつ cell 配列 — このオプションを使用して、複数の CSI-RS リソースを指定します。

あるいは、"nzp" および "zp" を string スカラーとして、または string 配列の要素として使用し、このプロパティを指定できます。

CSI-RS リソース構成の数は、このプロパティで与えられた値の数と等しくなります。

データ型: cell | string | char

CSI-RS リソースのスロットの周期とオフセット。次のオプションのいずれかとして指定します。

単一の CSI-RS リソースの場合

  • 'on' — このオプションを使用し、すべてのスロットにリソースが存在することを示します。

  • 'off' — このオプションを使用し、すべてのスロットにリソースが存在しないことを示します。

  • 形式が [Tcsi-rs Toffset] である整数のベクトル — このオプションを使用し、特定のスロットにおける CSI-RS リソースのスケジューリングに関するスロットの周期 Tcsi-rs とオフセット Toffset を指定します。

    Tcsi-rs は、4、5、8、10、16、20、32、40、64、80、160、320、または 640 です。Toffset の値は Tcsi-rs の値によって決まり、0 ~ Tcsi-rs–1 の範囲になります。

複数の CSI-RS リソースの場合

  • 'on''off'、または [Tcsi-rs Toffset] を要素にもつ cell 配列 — cell 配列の要素数は、1 であるか、CSIRSType プロパティで指定された CSI-RS リソースの数と等しくなければなりません。cell 配列に要素が 1 つのみ含まれる場合、指定した値はすべての CSI-RS リソースに適用されます。

あるいは、"on" および "off" を string スカラーとして、または string 配列の要素として使用し、このプロパティを指定できます。

このプロパティは、"CSI-RS-CellMobility" IE で定義された上位レイヤーのパラメーター "CSI-ResourcePeriodicityAndOffset" または "slotConfig" です。

データ型: cell | string | char | double

TS 38.211 の Table 7.4.1.5.3-1 で定義されている CSI-RS リソースの行番号。次のオプションのいずれかとして指定します。

単一の CSI-RS リソースの場合

  • 1 ~ 18 の整数

複数の CSI-RS リソースの場合

  • 1 ~ 18 の範囲の整数から成るベクトル — ベクトルの要素数は、CSIRSType プロパティで指定された CSI-RS リソースの数と等しくなければなりません。

データ型: double

TS 38.211 の Table 7.4.1.5.3-1 で定義されている CSI-RS リソースの周波数密度。次のオプションのいずれかとして指定します。

単一の CSI-RS リソースの場合

  • 'one' — このオプションは、指定したテーブルの ρ = 1 に対応します。

  • 'three' — このオプションは、指定したテーブルの ρ = 3 に対応します。

  • 'dot5even' — このオプションは、共通リソース ブロック 0 (CRB 0) に関して偶数リソース ブロック (RB) の割り当てを使用する指定されたテーブルの ρ = 0.5 に対応します。

  • 'dot5odd' — このオプションは、CRB 0 に関して偶数 RB の割り当てを使用する指定されたテーブルの ρ = 0.5 に対応します。

複数の CSI-RS リソースの場合

  • 文字ベクトル 'one''three''dot5even'、または 'dot5odd' から成る cell 配列 — cell 配列の要素数は、CSIRSType プロパティで指定された CSI-RS リソースの数と等しくなければなりません。

あるいは、"one""three""dot5even"、および "dot5odd" を string スカラーとして、または string 配列の要素として使用し、このプロパティを指定できます。

ρ の値は、"CSI-RS-ResourceMapping" IE または "CSI-RS-CellMobility" IE で定義された上位レイヤーのパラメーター "density" です。

データ型: cell | string | char

CSI-RS リソースの時間領域の位置 (TS 38.211 の Table 7.4.1.5.3-1 の l0 および l1 の値)。次のオプションのいずれかとして指定します。

単一の CSI-RS リソースの場合

  • 0 ~ 13 の整数 — このオプションは、指定したテーブルの l0 の値に対応します。

  • 形式が [l0 l1] または [l0; l1] である整数のベクトル。ここで、l0 および l1 は、指定したテーブルの l0 および l1 の値に対応します — l1 の値は、テーブルの 13、14、16、および 17 行目でのみ必要になります。l0 は 0 ~ 13 の整数、l1 は 2 ~ 12 の整数です。

複数の CSI-RS リソースの場合

  • l0 の値、または形式が [l0 l1] もしくは [l0; l1] であるベクトルから成る cell 配列 — cell 配列の要素数は、CSIRSType プロパティで指定された CSI-RS リソースの数と等しくなければなりません。

    l0 および l1 に基づく 2 要素ベクトルでは、異なる CSI-RS ポートに対応する CDM グループ間でオーバーラップが発生することを防ぐため、少なくとも 2 つ離れたシンボル位置を指定します。

l0 および l1 の値は、それぞれ、"CSI-RS-ResourceMapping" IE または "CSI-RS-ResourceConfigMobility" IE における上位レイヤーのパラメーター "firstOFDMSymbolInTimeDomain" および "firstOFDMSymbolInTimeDomain2" です。

データ型: double

CSI-RS リソースの周波数領域の位置 (TS 38.211 の Table 7.4.1.5.3-1 の 5 列目の要素 ki)。次のオプションのいずれかとして指定します。

単一の CSI-RS リソースの場合

  • 要素数が 1、2、3、4、または 6 である数値ベクトル

複数の CSI-RS リソースの場合

  • 要素数が 1、2、3、4、または 6 である数値ベクトルから成る cell 配列 — cell 配列の要素数は、CSIRSType プロパティで指定された CSI-RS リソースの数と等しくなければなりません。

    異なる CSI-RS ポートに対応する CDM グループ間でオーバーラップが発生することを防ぐため、少なくとも 2 つ離れたサブキャリア位置を指定します。TS 38.211 の Section 7.4.1.5.3 では、"CSI-RS-ResourceMapping" IE または "CSI-RS-ResourceConfigMobility" IE において上位レイヤーのパラメーター "frequencyDomainAllocation" で定義されたビットマップからサブキャリア位置を計算する手続きが規定されています。この手続きでは、異なる CSI-RS ポート間の直交性が失われることを防ぐため、CDM グループ間でオーバーラップが決して発生しないようになっています。

データ型: double

割り当てられた RB の数に基づく CSI-RS リソースの帯域幅。次のオプションのいずれかとして指定します。

単一の CSI-RS リソースの場合

  • 1 ~ 275 の整数

複数の CSI-RS リソースの場合

  • 1 ~ 275 の範囲の整数から成るベクトル — ベクトルの要素数は、1 であるか、CSIRSType プロパティで指定された CSI-RS リソースの数と等しくなければなりません。ベクトルに要素が 1 つだけ含まれる場合、指定した値はすべての CSI-RS リソースに適用されます。

このプロパティは、"FrequencyOccupation" IE における上位レイヤーのパラメーター "nrOfRBs"、または "CSI-RS-ResourceConfigMobility" IE における上位レイヤーのパラメーター "nrOfPRBs" です。

データ型: double

キャリア リソース グリッドに対する CSI-RS リソース割り当ての RB 開始インデックス。次のオプションのいずれかとして指定します。

単一の CSI-RS リソースの場合

  • 0 ~ 274 の整数

複数の CSI-RS リソースの場合

  • 0 ~ 274 の範囲の整数から成るベクトル — ベクトルの要素数は、1 であるか、CSIRSType プロパティで指定された CSI-RS リソースの数と等しくなければなりません。ベクトルに要素が 1 つだけ含まれる場合、指定した値はすべての CSI-RS リソースに適用されます。

データ型: double

スクランブリング アイデンティティ。次のオプションのいずれかとして指定します。

単一の CSI-RS リソースの場合

  • 0 ~ 1023 の整数

複数の CSI-RS リソースの場合

  • 0 ~ 1023 の範囲の整数から成るベクトル — ベクトルの要素数は、1 であるか、CSIRSType プロパティで指定された CSI-RS リソースの数と等しくなければなりません。ベクトルに要素が 1 つだけ含まれる場合、指定した値はすべての CSI-RS リソースに適用されます。

このプロパティは、"NZP-CSI-RS-Resource" IE における上位レイヤーのパラメーター "scramblingID"、または "CSI-RS-ResourceConfigMobility" IE における上位レイヤーのパラメーター "sequenceGenerationConfig" です。

CSIRSType プロパティで ZP リソースのみが定義された場合、このプロパティは非表示になります。

データ型: double

この プロパティ は読み取り専用です。

CSI-RS アンテナ ポートの数。124812162432 として指定するか、これらの整数から成るベクトルとして指定します。オブジェクトは RowNumber プロパティに基づいてこのプロパティを設定します。

データ型: double

この プロパティ は読み取り専用です。

CSI-RS リソースの CDM タイプ。'noCDM''FD-CDM2''CDM4''CDM8' として指定するか、これらの文字ベクトルから成る cell 配列として指定します。オブジェクトは RowNumber プロパティに基づいてこのプロパティを設定します。

データ型: char

すべて折りたたむ

スロット番号に 10 を指定して、キャリア構成オブジェクトを作成します。

carrier = nrCarrierConfig('NSlot',10);

2 つの周期リソースについて CSI-RS リソース構成オブジェクトを作成します。行番号 35、シンボル位置 139、およびサブキャリア位置 64 で、1 つの NZP リソースと 1 つの ZP リソースをそれぞれ指定します。両方のリソースについて、周期性を 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
    {0x1 double}    {0x1 double}

info_sym = struct with fields:
      ResourceOrder: [2 1]
           KBarLBar: {{1x1 cell}  {1x2 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
    {0x3 uint32}    {0x3 uint32}

info_ind = struct with fields:
      ResourceOrder: [2 1]
           KBarLBar: {{1x1 cell}  {1x2 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 リソース構成オブジェクトを作成します。2 つの連続したスロットで、4 つの周期的な NZP-CSI-RS リソースを指定します。周期を 20 に設定し、各スロットに 2 つの周期的な NZP-CSI-RS リソースが含まれるように指定します。最初の 2 つのリソースのオフセットを 0 に設定します。次の 2 つのリソースのオフセットを 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);

スロット持続時間が 1 つのキャリア グリッドにシンボルをマッピングします。

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);

スロット持続時間が 1 つの別のキャリア グリッドにシンボルをマッピングします。

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

2 つのスロットを連結して最終グリッドを構成します。

grid = [slotgrid0 slotgrid1];

グリッドをプロットします。

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

参照

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

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2019b で導入