このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
NR PDSCH のリソース割り当てと DM-RS および PT-RS 基準信号
この例では、New Radio (NR) 物理ダウンリンク共有チャネル (PDSCH)、ならびに関連する復調基準信号 (DM-RS) と位相トラッキング基準信号 (PT-RS) の時間-周波数の側面について説明します。この例では、PDSCH のリソース割り当てが DM-RS および PT-RS の時間-周波数構造に与える影響を示します。
はじめに
5G NR の PDSCH は、ユーザー データを伝送する物理ダウンリンク チャネルです。DM-RS および PT-RS は、PDSCH に関連付けられた基準信号です。これらの信号は、TS 38.211 の Section 7.4.1.1 および 7.4.1.2 [1] で定義されているように、PDSCH の割り当て内で生成されます。DM-RS は、PDSCH のコヒーレント復調の一部としてチャネル推定に使用されます。共通位相誤差 (CPE) を補正するため、3GPP 5G NR では PT-RS が導入されています。局部発振器で発生する位相ノイズは、mmWave の周波数で大幅な劣化を引き起こします。これにより CPE とキャリア間干渉 (ICI) が発生します。CPE は、各サブキャリアで受信シンボルを同一方向に回転させます。ICI は、サブキャリア間の直交性の喪失につながります。PT-RS は、主にシステム パフォーマンスに対する CPE の影響を推定して最小化するために使用されます。
5G Toolbox™ には、物理 (PHY) レイヤーをさまざまな粒度でモデル化するための関数が用意されています。トランスポート チャネルおよび物理チャネルの処理を実行する PHY チャネル レベルの関数をはじめ、巡回冗長検査 (CRC) 符号化、コード ブロック セグメンテーション、低密度パリティ チェック (LDPC) チャネル符号化などを実行する個別チャネルの処理ステージ関数に至るまで、さまざまな粒度に対応しています。このツールボックスでは、PDSCH に関連付けられた基準信号の機能が、関数nrPDSCHDMRS
、nrPDSCHDMRSIndices
、nrPDSCHPTRS
、およびnrPDSCHPTRSIndices
として提供されています。
PDSCH
PDSCH は、ユーザー データを伝送する物理チャネルです。PDSCH に割り当てられたリソースは、TS 38.214 の Section 5.1.2 [2] で定義されているように、キャリアの bandwidth part (BWP) 内にあります。PDSCH の送信に関する時間領域のリソースは、downlink control information (DCI) の "Time domain resource assignment" フィールドによってスケジュールされます。このフィールドは、PDSCH のスロット オフセット 、開始シンボル "S"、割り当て長 "L"、およびマッピング タイプを示します。"S" および "L" の有効な組み合わせを表 1 に示します。マッピング タイプ A では、DM-RS タイプ A の位置が 3 に設定された場合にのみ、"S" の値が 3 になります。
PDSCH の送信に関する周波数領域のリソースは、DCI の "Frequency domain resource assignment" フィールドによってスケジュールされます。このフィールドは、割り当てタイプに基づき、リソース ブロック (RB) のリソース割り当てが連続的か非連続的かを示します。割り当てられた RB は BWP 内にあります。
5G Toolbox™ には、BWP 内の PDSCH に関連するパラメーターを設定するためのnrCarrierConfig
オブジェクトおよびnrPDSCHConfig
オブジェクトが用意されています。
% Setup the carrier with 15 kHz subcarrier spacing and 10 MHz bandwidth carrier = nrCarrierConfig; carrier.SubcarrierSpacing = 15; carrier.CyclicPrefix = 'normal'; carrier.NSizeGrid = 52; carrier.NStartGrid = 0; % Configure the physical downlink shared channel parameters pdsch = nrPDSCHConfig; pdsch.NSizeBWP = []; % Empty implies that the value is equal to NSizeGrid pdsch.NStartBWP = []; % Empty implies that the value is equal to NStartGrid pdsch.PRBSet = 0:51; % Allocate the complete carrier pdsch.SymbolAllocation = [0 14]; % Symbol allocation [S L] pdsch.MappingType = 'A'; % PDSCH mapping type ('A' or 'B')
DM-RS
DM-RS は、無線チャネルを推定するために使用されます。この信号は、PDSCH に割り当てられた RB 内にのみ現れます。DM-RS の構造は、さまざまな展開シナリオとユース ケースをサポートするように設計されています。前方配置の設計では、高速伝送のシナリオをサポートするため、低レイテンシ送信、MIMO 送信用の 12 個の直交アンテナ ポート、1 つのスロット内の最大 4 つの基準信号送信インスタンスをサポートします。前方配置の基準信号は、送信の早期に信号が発生することを示します。DM-RS は、PDSCH に割り当てられた各 RB 内に現れます。
時間領域のリソースを制御するパラメーター
DM-RS の OFDM シンボルの位置は、次のパラメーターによって制御されます。
PDSCH シンボルの割り当て
マッピング タイプ
DM-RS タイプ A の位置
DM-RS 長
DM-RS の追加の位置
PDSCH シンボルの割り当ては、PDSCH の送信で使用される OFDM シンボルのスロット内の位置を示します。DM-RS シンボルの位置は、PDSCH シンボルの割り当ての内部にあります。DM-RS の OFDM シンボルの位置は、マッピング タイプによって異なります。PDSCH のマッピング タイプは、スロット単位 (タイプ A) と非スロット単位 (タイプ B) のいずれかです。追加の DM-RS シンボルの位置は、TS 38.211 の Section 7.4.1.1.2 [1] で規定された一連のテーブルで定義されています。仕様では、このテーブルのインデックスを指定するため、マッピング タイプに応じて OFDM シンボルが占める持続時間を示す項 が定義されています。
マッピング タイプ A の場合、DM-RS の OFDM シンボルの位置は、スロットにおける最初の OFDM シンボル (シンボル 0) からの相対位置として定義されます。最初の DM-RS の OFDM シンボル () の位置は、DM-RS タイプ A の位置で与えられ、2 と 3 のいずれかになります。追加の DM-RS の OFDM シンボル () の持続時間は、割り当てられた PDSCH リソースのスロットにおける最初の OFDM シンボル (シンボル 0) から最後の OFDM シンボルまでの OFDM シンボルの数です。PDSCH の最初の OFDM シンボルがシンボル 0 でない場合、 は PDSCH に割り当てられた OFDM シンボルの数とは異なる場合がある点に注意してください。
マッピング タイプ B の場合、DM-RS の OFDM シンボルの位置は、割り当てられた PDSCH リソースにおける最初の OFDM シンボルからの相対位置として定義されます。最初の DM-RS の OFDM シンボルの位置 () は常に 0 です。これは、最初の DM-RS の OFDM シンボルの位置が、割り当てられた PDSCH リソースにおける最初の OFDM シンボルの位置であることを意味します。追加の DM-RS の OFDM シンボル () の持続時間は、割り当てられた PDSCH リソースの持続時間です。
図 1 に、シングルシンボル DM-RS の場合における、スロット内の RB のマッピング タイプに応じた DM-RS シンボルの位置を示します。この図は、OFDM シンボルを占める PDSCH の構成を示しており、マッピング タイプ A の場合は OFDM シンボル 1 ~ 10 (0 ベース) で が 11、マッピング タイプ B の場合は OFDM シンボル 3 ~ 9 (0 ベース) で が 7 です。
UE で使用される DM-RS の OFDM シンボルの最大数は、RRC シグナリング ("dmrs-AdditionalPosition" および "maxLength") によって構成されます。RRC のパラメーター "maxLength" は、DM-RS シンボル (シングル シンボル DM-RS またはダブル シンボル DM-RS) の長さを構成します。ダブルシンボル DM-RS の場合、実際の選択結果は DCI フォーマット 1_1 のメッセージでシグナリングされます。図 2 に、シングルシンボルおよびダブルシンボルの DM-RS の位置を示します。
上位レイヤーのパラメーター "dmrs-AdditionalPosition" は、送信される追加のシングルシンボル DM-RS またはダブルシンボル DM-RS の最大数を定義します。追加の位置の番号は 0 ~ 3 の範囲で、マッピング タイプ、DM-RS 長、および PDSCH シンボルの割り当てによって決まります。DM-RS シンボルの位置は、TS 38.211 の Table 7.4.1.1.2-3 および 7.4.1.1.2-4 で規定されています。図 3 に、シングルシンボル DM-RS とダブルシンボル DM-RS の場合における DM-RS の追加の位置を示します。
% Set the parameters that control the time resources of DM-RS pdsch.DMRS.DMRSTypeAPosition = 2; % 2 or 3 pdsch.DMRS.DMRSLength = 1; % 1 or 2 pdsch.DMRS.DMRSAdditionalPosition = 1; % 0...3
周波数領域のリソースを制御するパラメーター
DM-RS のサブキャリアの位置は、次のパラメーターによって制御されます。
DM-RS の構成タイプ
DM-RS のアンテナ ポート
構成タイプは、DM-RS の周波数密度を示し、RRC のメッセージ "dmrs-Type" によってシグナリングされます。構成タイプ 1 は、各アンテナ ポートの物理リソース ブロック (PRB) ごとに 6 つのサブキャリアを定義し、交互に入れ替わるサブキャリアで構成されます。構成タイプ 2 は、各アンテナ ポートの PRB ごとに 4 つのサブキャリアを定義し、連続する 2 つのサブキャリアから成る 2 つのグループで構成されます。図 4 に、構成タイプに基づく DM-RS サブキャリアの位置を示します。
関連付けられたアンテナ ポートまたは code division multiplexing (CDM) グループに応じ、使用する一連のサブキャリアにさまざまな差分シフトが適用されます。構成タイプ 1 の場合、使用可能な 8 つのアンテナ ポート (p=0...7) に対して 2 種類の CDM グループ/シフトが存在できます。図 5 に、DM-RS の構成タイプを 1 に設定した場合の DM-RS サブキャリア位置に関連付けられた各シフトを示します。上位の CDM グループのアンテナ ポート (アンテナ ポート 2) でデータを送信する場合、下位の CDM グループ (アンテナ ポート 0) の DM-RS サブキャリア位置に対応するリソース エレメント (RE) はブロックされることに注意してください。
構成タイプ 2 の場合、12 個のアンテナ ポート (p=0...11) に対して 3 種類の CDM グループ/シフトが存在できます。図 6 に、DM-RS の構成タイプが 2 の場合の DM-RS サブキャリア位置に関連付けられた各シフトを示します。構成に関する詳細については、TS 38.211 の Section 7.4.1.1 を参照してください。上位の CDM グループのアンテナ ポートでデータを送信する場合、下位の CDM グループの DM-RS サブキャリア位置に対応する RE はブロックされることに注意してください。
% Set the parameters that control the frequency resources of DM-RS pdsch.DMRS.DMRSConfigurationType = 1; % 1 or 2 pdsch.DMRS.DMRSPortSet = 0; % Set the parameter that controls the number of REs available for data % transmission in a DM-RS carrying OFDM symbol. This value is nominally % greater than the maximum configured CDM group number. pdsch.DMRS.NumCDMGroupsWithoutData = 1; % 1 corresponds to CDM group number 0 % The read-only properties DeltaShifts and DMRSSubcarrierLocations of DMRS % property of pdsch object provides the values of delta shift(s) and DM-RS % subcarrier locations in an RB for each antenna port configured. pdsch.DMRS.DeltaShifts
ans = 0
pdsch.DMRS.DMRSSubcarrierLocations
ans = 6×1
0
2
4
6
8
10
シーケンスの生成
DM-RS で使用される疑似乱数シーケンスは、長さが である Gold シーケンスです。このシーケンスは、すべての共通リソース ブロック (CRB) について生成されますが、データを送信する周波数領域の外側にあるチャネルを推定する必要がないため、データに割り当てられた RB でのみ送信されます。すべての CRB について基準信号シーケンスを生成することで、マルチユーザー MIMO の場合において、時間-周波数リソースがオーバーラップする複数の UE で基となる同じ疑似乱数シーケンスが確実に使用されるようになります。シーケンスの生成は、次のパラメーターによって制御されます。
DM-RS スクランブリング アイデンティティ ()
DM-RS スクランブリング初期化 ()
スロット内の OFDM シンボルの数
無線フレーム内のスロット番号
DM-RS シンボルの位置
PRB の割り当て
キャリア オブジェクトの CyclicPrefix プロパティは、スロット内の OFDM シンボルの数を制御します。キャリア オブジェクトの NSlot プロパティは、スロット番号を制御します。
% Set the parameters that only control the DM-RS sequence generation pdsch.DMRS.NIDNSCID = 1; % Use empty to set it to NCellID of the carrier pdsch.DMRS.NSCID = 0; % 0 or 1 % Generate DM-RS symbols pdsch.NumLayers = numel(pdsch.DMRS.DMRSPortSet); dmrsSymbols = nrPDSCHDMRS(carrier,pdsch); % Plot the constellation scatterplot(dmrsSymbols) title('DM-RS Constellation') xlabel('Real') ylabel('Imaginary')
% The read-only properties TimeWeights and FrequencyWeights of DMRS % property of pdsch object provides the values of time and frequency % weights applied to the DM-RS symbols. pdsch.DMRS.TimeWeights
ans = 2×1
1
1
pdsch.DMRS.FrequencyWeights
ans = 2×1
1
1
% Generate DM-RS indices dmrsIndices = nrPDSCHDMRSIndices(carrier,pdsch); % Map the DM-RS symbols to the grid with the help of DM-RS indices grid = zeros([12*carrier.NSizeGrid carrier.SymbolsPerSlot pdsch.NumLayers]); grid(dmrsIndices) = dmrsSymbols; figure imagesc(abs(grid(:,:,1))); axis xy; xlabel('OFDM Symbols'); ylabel('Subcarriers'); title('DM-RS Time-Frequency Locations');
PT-RS
PT-RS は、位相トラッキング基準信号です。PT-RS は、主にシステム パフォーマンスに対する CPE の影響を推定して最小化するために使用されます。位相ノイズの特性により、PT-RS 信号は周波数領域の密度が低く、時間領域の密度が高くなります。PT-RS は常に DM-RS と組み合わせて使用され、PT-RS を使用するようにネットワークが構成されている場合にのみ使用されます。
時間領域のリソースを制御するパラメーター
PT-RS は、ダウンリンクの上位レイヤーのパラメーター "DMRS-DownlinkConfig" を使用して構成します。PT-RS の時間リソースは、次のパラメーターによって制御されます。
DM-RS シンボルの位置
PT-RS の時間密度 ()
は、スケジュールされた変調および符号化スキームによって決まります。 の値は集合 {1、2、4} から選択しなければなりません。DM-RS シンボルの位置を制御するパラメーターについては、DM-RS の時間リソースを制御するパラメーターを参照してください。
スロット内の PT-RS シンボルの位置は、共有チャネルの割り当てにおける最初の OFDM シンボルから始まり、ホップ間隔内に DM-RS シンボルが現れない場合は 個のシンボルごとにホップします。ホップ間隔内に DM-RS シンボルが 1 つ以上現れる場合は、最後の DM-RS シンボルの位置からホップを開始して次の PT-RS シンボルを提供します。図 7 に、時間密度を 4、DM-RS シンボルの位置を 2 および 11 (0 ベース) に設定したときの、単一スロットの RB 内における PT-RS シンボルの位置を示します。
% Set the EnablePTRS property in pdsch to 1 pdsch.EnablePTRS = 1; % Set the parameters that control the time resources of PT-RS pdsch.PTRS.TimeDensity = 4;
周波数領域のリソースを制御するパラメーター
PT-RS は、1 つの OFDM シンボルにつき RB 内の 1 つのサブキャリアのみを占有します。PT-RS の周波数リソースは、次のパラメーターによって制御されます。
PRB の割り当て
DM-RS の構成タイプ
PT-RS の周波数密度 ()
無線ネットワーク一時識別子 ()
リソース エレメントのオフセット
PT-RS のアンテナ ポート
は、スケジュールされた帯域幅によって決まります。 の値は 2 または 4 です。これは、PT-RS が 2 つの RB ごとに現れるか 4 つの RB ごとに現れるかを示します。
PT-RS が現れる最初の RB () は、、、および PDSCH に割り当てられた RB の数 () によって決まります。PT-RS をマッピングするため、PDSCH のすべての RB に 0 から まで昇順で番号が付けられます。リソース ブロック内の PT-RS のサブキャリアの位置 () は、DM-RS の構成タイプ、リソース エレメント (RE) のオフセット、および PT-RS のアンテナ ポートによって決まります。PT-RS のアンテナ ポートは、DM-RS のアンテナ ポートのサブセットでなければなりません。PT-RS サブキャリアは、常に RB 内のいずれかの DM-RS サブキャリア位置に合わせて配置されます。
RB 内の PT-RS は、PT-RS が現れるすべての OFDM シンボルで同じサブキャリア位置を占有します。
% Set the parameters that affect the PT-RS subcarrier locations pdsch.RNTI = 1; pdsch.PTRS.FrequencyDensity = 2; % 2 or 4 pdsch.PTRS.REOffset = '10'; % '00', '01', '10', '11' pdsch.PTRS.PTRSPortSet = min(pdsch.DMRS.DMRSPortSet); % Set the other parameters that control PT-RS subcarrier locations pdsch.DMRS.DMRSConfigurationType = 1; pdsch.DMRS.DMRSPortSet = 0;
シーケンスの生成
PT-RS の生成に使用されるシーケンスは、DM-RS のシーケンス生成に使用される疑似乱数シーケンスと同じです。PT-RS のシーケンスの値は、最初の DM-RS シンボルの位置によって決まります。詳細については、DM-RS のシーケンス生成を参照してください。
% Set the parameters that control the PT-RS sequence generation pdsch.DMRS.NIDNSCID = 1; % Use empty to set it to NCellID of the carrier pdsch.DMRS.NSCID = 0; % 0 or 1 % Generate PT-RS symbols carrier.NSizeGrid = 4; pdsch.PRBSet = 0:carrier.NSizeGrid-1; pdsch.NumLayers = numel(pdsch.DMRS.DMRSPortSet); ptrsSymbols = nrPDSCHPTRS(carrier,pdsch); % Generate PT-RS indices ptrsIndices = nrPDSCHPTRSIndices(carrier,pdsch);
DM-RS シンボル、PDSCH の RE インデックス、および DM-RS を取得します。
% PDSCH indices, DM-RS symbols and indices
[pdschIndices, pdschInfo] = nrPDSCHIndices(carrier,pdsch);
dmrsIndices = nrPDSCHDMRSIndices(carrier,pdsch);
dmrsSymbols = nrPDSCHDMRS(carrier,pdsch);
PDSCH、DM-RS、および PT-RS の RE インデックスを、スケーリングされた値でグリッドにマッピングし、それぞれの位置をグリッド上で可視化します。
chpLevel = struct; chpLevel.PDSCH = 0.4; chpLevel.DMRS = 1; chpLevel.PTRS = 1.4; nSlotSymb = carrier.SymbolsPerSlot; grid = complex(zeros(carrier.NSizeGrid*12,nSlotSymb,pdsch.NumLayers)); grid(pdschIndices) = chpLevel.PDSCH; grid(dmrsIndices) = chpLevel.DMRS*dmrsSymbols; grid(ptrsIndices) = chpLevel.PTRS*ptrsSymbols; map = parula(64); cscaling = 40; im = image(cscaling*abs(grid(:,:,1))); colormap(im.Parent,map); % Add legend to the image chpval = struct2cell(chpLevel); clevels = cscaling*[chpval{:}]; N = length(clevels); L = line(ones(N),ones(N), 'LineWidth',8); % Generate lines % Index the color map and associated the selected colors with the lines set(L,{'color'},mat2cell(map( min(1+clevels,length(map) ),:),ones(1,N),3)); % Set the colors according to map % Create legend fnames = {'PDSCH','DM-RS','PT-RS'}; legend(fnames{:}); axis xy title('Carrier Grid Containing PDSCH, DM-RS and PT-RS') xlabel('OFDM Symbols') ylabel('Subcarriers')
前の図では、PDSCH 割り当て内における OFDM シンボルの開始位置に PT-RS があります。このシンボルは、他の PT-RS シンボルまたは DM-RS シンボルからホップ間隔 だけ離れた場所に現れます。周波数領域の PT-RS シンボルは、PT-RS が現れている各 OFDM シンボルのサブキャリア 19 (最初の RB) およびサブキャリア 43 (3 番目の RB) に存在します。PT-RS の連続するサブキャリア位置の差は 24 です。これは、RB 内のサブキャリアの数 (12) に PT-RS の周波数密度 (2) を乗算した数値です。
その他の調査
基準信号の時間リソースと周波数リソースに影響を与えるパラメーターを変更し、各信号の RE の位置がどのように変化するかを観察してみましょう。
基準信号を使用し、チャネル推定と位相トラッキングを実行してみましょう。NR PDSCH スループットの手順に従ってスループットを計算します。
この例では、DM-RS と PT-RS のシーケンスを生成する方法、およびそれらのシーケンスを OFDM のキャリア リソース グリッドにマッピングする方法を示しています。また、基準信号の時間-周波数構造を制御するプロパティについて説明しています。
参考文献
3GPP TS 38.211. "NR; Physical channels and modulation" 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.
3GPP TS 38.214. "NR; Physical layer procedures for data" 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.
3GPP TS 38.212. "NR; Multiplexing and channel coding" 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.