nrPUSCHDMRS
PUSCH DM-RS シンボルの生成
説明
例
既定のプロパティを使用してキャリア構成オブジェクトを作成します。このオブジェクトは、サブキャリア間隔が 15 kHz である 10 MHz キャリアに対応します。
carrier = nrCarrierConfig;
物理アップリンク共有チャネル (PUSCH) 構成オブジェクトを作成してプロパティを指定します。トランスフォーム プリコーディングが 0 に設定されている場合、波形タイプは、サイクリック プレフィックス直交周波数分割多重 (CP-OFDM) です。
pusch = nrPUSCHConfig;
pusch.TransformPrecoding = 0;
pusch.TransmissionScheme = 'codebook';
pusch.NumAntennaPorts = 4;
pusch.TPMI = 0;パラメーターを指定して PUSCH 復調基準信号 (DM-RS) を構成します。
pusch.DMRS.DMRSAdditionalPosition = 1; pusch.DMRS.DMRSTypeAPosition = 2; pusch.DMRS.DMRSPortSet = 2; pusch.DMRS.NIDNSCID = 10; pusch.DMRS.NSCID = 1;
single データ型の PUSCH に関連付けられた DM-RS シンボルを生成します。
sym = nrPUSCHDMRS(carrier,pusch,'OutputDataType','single')
sym = 624×4 single matrix
-0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
-0.3536 + 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
-0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
-0.3536 + 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
-0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
0.3536 + 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
-0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
-0.3536 + 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
-0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
-0.3536 - 0.3536i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i
⋮
サブキャリア間隔が 30 kHz で伝送帯域幅が 5 MHz のキャリア構成を作成します。
carrier = nrCarrierConfig; carrier.SubcarrierSpacing = 30; carrier.NSizeGrid = 11;
物理アップリンク共有チャネル (PUSCH) 構成オブジェクトを作成してプロパティを指定します。トランスフォーム プリコーディングが 1 に設定されている場合、波形タイプは離散フーリエ変換拡散直交周波数分割多重 (DFT-s-OFDM) です。
pusch = nrPUSCHConfig;
pusch.NSizeBWP = 9;
pusch.NStartBWP = 1;
pusch.PRBSet = 0:3;
pusch.TransformPrecoding = 1;
pusch.FrequencyHopping = 'intraSlot';
pusch.SecondHopStartPRB = 5;PUSCH 復調基準信号 (DM-RS) オブジェクトを作成してプロパティを指定します。
dmrs = nrPUSCHDMRSConfig; dmrs.DMRSAdditionalPosition = 1; dmrs.DMRSTypeAPosition = 2; dmrs.DMRSPortSet = 3; dmrs.GroupHopping = 1; dmrs.SequenceHopping = 0; dmrs.NRSID = 10;
PUSCH DM-RS 構成オブジェクトを PUSCH 構成オブジェクトの DMRS プロパティに割り当てます。
pusch.DMRS = dmrs;
キャリア構成、PUSCH 構成、および出力フォーマットの name-value ペアの引数を指定して、PUSCH DM-RS のシンボルとインデックスを生成します。
sym = nrPUSCHDMRS(carrier,pusch,'OutputDataType','single')
sym = 96×1 single column vector
-0.7071 - 0.7071i
-0.7071 - 0.7071i
-0.7071 - 0.7071i
0.7071 - 0.7071i
-0.7071 - 0.7071i
-0.7071 - 0.7071i
-0.7071 - 0.7071i
0.7071 - 0.7071i
0.7071 + 0.7071i
-0.7071 + 0.7071i
-0.7071 - 0.7071i
-0.7071 + 0.7071i
-0.7071 - 0.7071i
0.7071 + 0.7071i
-0.7071 - 0.7071i
⋮
ind = nrPUSCHDMRSIndices(carrier,pusch,'IndexBase','0based','IndexOrientation','bwp')
ind = 96×1 uint32 column vector
217
219
221
223
225
227
229
231
233
235
237
239
241
243
245
⋮
bandwidth part (BWP) グリッドを作成し、DM-RS シンボルをグリッドにマッピングします。
bwp = complex(zeros([pusch.NSizeBWP*12 carrier.SymbolsPerSlot pusch.NumLayers]));
bwp(ind+1) = sym; % Map the DM-RS symbolsBWP をキャリア リソース グリッドにマッピングし、キャリア グリッドを表示します。
grid = complex(zeros([carrier.NSizeGrid*12 carrier.SymbolsPerSlot pusch.NumLayers])); % Create carrier resource grid offset = pusch.NStartBWP-carrier.NStartGrid; % BWP start location in the carrier grid grid(offset*12+1:(offset+pusch.NSizeBWP)*12,:,:) = bwp; imagesc(abs(grid(:,:,1))); axis xy; xlabel('OFDM Symbols'); ylabel('Subcarriers'); title('PUSCH DM-RS Resource Elements in the Carrier Resource Grid');

入力引数
特定の OFDM numerology のキャリア構成パラメーター。nrCarrierConfig オブジェクトとして指定します。この関数は、nrCarrierConfig オブジェクトの次のプロパティのみを使用します。
PUSCH 構成パラメーター。nrPUSCHConfig オブジェクトとして指定します。この関数は、nrPUSCHConfig オブジェクトの次のプロパティのみを使用します。
周波数範囲 1 (FR1) の共有スペクトル チャネル アクセスの操作では、Interlacing プロパティを true に設定し、RBSetIndex オブジェクト プロパティと InterlaceIndex オブジェクト プロパティを使用して、割り当てられた周波数リソースを指定します。 (R2023b 以降)
生成される DM-RS シンボルのデータ型。'double' または 'single' として指定します。
データ型: char | string
出力引数
DM-RS シンボル。複素行列として返されます。列の数は、設定されているアンテナ ポートの数に対応します。
データ型: single | double
複素数のサポート: あり
参照
[1] 3GPP TS 38.211. “NR; Physical channels and modulation.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.
拡張機能
使用上の注意および制限:
入力引数 datatype はコンパイル時の定数でなければなりません。たとえば、出力データ型として 'single' を指定するときは、関数 codegen の -args の値に {coder.Constant('OutputDataType'),coder.Constant('single')} を含めます。詳細については、coder.Constant (MATLAB Coder) クラスを参照してください。
バージョン履歴
R2020a で導入pusch 入力の Modulation、NumLayers、NumAntennaPorts、TPMI、および CodebookType オブジェクト プロパティにより、PUSCH トランスミッションの 8 個のアンテナ ポート、最大 8 つまでのレイヤー、2 つのコードワードのサポートが追加されます。
carrier 入力の IntraCellGuardBands オブジェクト プロパティを使用して、セル内ガード バンドを指定します。
Interlaced PUSCH 送信を構成するには、入力引数 pusch の Interlacing プロパティ、RBSetIndex プロパティ、および InterlaceIndex プロパティを使用します。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)