Main Content

5G NR 波形生成

この例では、5G NR 波形生成ワークフローの概要と、5G Toolbox™ 製品を使用して生成できる波形タイプを示します。

はじめに

5G Toolbox の機能を使用することで、以下の NR 波形を構成および生成できます。

  • NR テスト モデル (NR-TM)

  • NR アップリンクおよび NR ダウンリンクの fixed reference channel (FRC)

  • NR ダウンリンク波形

  • NR アップリンク波形

パラメーターの静的セットを使用して波形を構成および生成するには、以下のワークフローのいずれかを使用できます。これらのワークフローで生成された波形は、テストや測定の用途で使用できます。

  • 5G 波形発生器アプリの使用。このアプリは、波形を構成するためのユーザー インターフェイス (UI) を提供します。5G 波形には多数のパラメーターがあるため、波形をパラメーター化するための推奨ワークフローは、このアプリを使用することです。このアプリでは、アプリ内で直接波形を生成することも、波形構成を MATLAB® にエクスポートしてコマンド プロンプトで波形を生成することもできます。このアプリでは、波形構成を Simulink™ にエクスポートすることもできます。

  • 関数nrWaveformGeneratorの使用。この関数は、構成オブジェクトを使用して波形を構成するためのプログラム インターフェイスを提供します。

動的に変化するパラメーターを使用して波形を構成および生成する方法 (たとえば 5G リンクをモデル化する場合) については、NR PDSCH スループットおよびNR PUSCH スループットの例を参照してください。

物理ランダム アクセス チャネル (PRACH) 波形を構成および生成する方法については、5G NR PRACH 構成および5G NR PRACH 波形の生成の例を参照してください。

アプリを使用した 5G 波形の構成および生成

"5G 波形発生器" アプリは、多数の構成パラメーターを管理するための UI を提供します。このアプリでは、波形タイプの選択、パラメーターの指定、および波形の生成とエクスポートを行うことができます。このアプリでは、テスト装置や測定装置と通信することもできます。以下の図は、このアプリで 5G 波形を生成してエクスポートするための一般的なワークフローを示しています。

WaveformGenerationSteps.png

5G 波形発生器アプリを開く

[アプリ] タブの [信号処理と通信]"5G 波形発生器" アプリのアイコンをクリックし、このアプリを開きます。

appsTab.png

波形タイプの選択

このアプリでは、さまざまな波形タイプを選択できます。ダウンリンクとアップリンクのオプションにより、波形のコンテンツを完全にカスタマイズできます。NR-TM、ダウンリンク FRC、およびアップリンク FRC も生成できます。

SelectWaveformType.png

パラメーターの指定

このアプリでは、パラメーターを指定できます。パラメーターを設定すると、アプリはリソース グリッドの可視化コンテンツを即座に更新し、すべての物理チャネルの位置を波形内に表示します。リソース グリッド ビューには、全ポートにまたがるすべての物理チャネルの場所の結合が含まれます (つまり、可視化では各ポートの送信内容が区別されない)。リソース グリッドの最大解像度は 1 リソース ブロック (RB) であるため、可視化では単一のリソース エレメント (RE) を使用する信号が表示されません。

以下の図は、2 つの物理ダウンリンク共有チャネル (PDSCH) の構成を示しています。最初の PDSCH はすべてのスロットに広がり、物理リソース ブロック (PRB) 0 ~ 100 を使用します。2 番目の PDSCH は、スロット 0 ~ 2 とスロット 4 ~ 6 でアクティブであり、PRB 200 ~ 250 を使用します。

ChangingParameters.png

波形の生成

アプリで構成された波形を生成するには、[生成] をクリックします。アプリは、ベースバンドの同相成分と直交 (IQ) 成分のサンプルを発生器の内部で作成します。[Spectrum Analyzer] タブで、生成された信号のスペクトルを確認できます。

波形のエクスポート

波形をエクスポートするには、[エクスポート] をクリックして、利用可能なオプションのいずれかを選択します。波形は、ワークスペース、ファイル、MATLAB スクリプト、または Simulink モデルにエクスポートできます。

Export.png

  • [ワークスペースにエクスポート] オプションは、MATLAB ワークスペースに構造体を作成します。構造体には、波形サンプル、サンプリング周波数、構成パラメーターに加え、波形タイプ (ダウンリンク、アップリンク、テスト モデル、ダウンリンク FRC、またはアップリンク FRC) を記述する文字列が含まれます。たとえば、以下のようになります。

myWaveformStructure.png

  • [ファイルへエクスポート] オプションは、波形を .mat または .bb のベースバンド ファイルとして保存します。

  • [MATLAB スクリプトのエクスポート] オプションは、MATLAB スクリプトを作成します。スクリプトを実行して、構成された波形を MATLAB コマンド ウィンドウで生成します。

  • [Simulink にエクスポート] オプションは、Waveform From Wireless Waveform Generator Appブロックを生成します。このブロックを Simulink モデルで波形ソースとして使用します。

MATLAB コードを使用した 5G 波形の構成と生成

関数nrWaveformGeneratorは、構成オブジェクトを使用して波形を構成するためのプログラム インターフェイスを提供します。時間をかけてすべてのパラメーターを手動で指定する代わりに、5G 波形発生器アプリで波形を構成し、その構成を MATLAB スクリプトにエクスポートできます。この MATLAB スクリプトを変更して実行し、構成された 5G 波形を生成できます。

このアプリを使用することには、以下の利点があります。

  • アプリには、値を選択するためのドロップダウン リストなどの UI コントロールが含まれている。

  • 一部の UI コントロールには、カスタム値を設定する際の検証が含まれている。

  • グリッド可視化機能により、指定するパラメーターに応じて信号がどのように見えるかを確認できる。

たとえば、このセクションのコード例では、nrDLCarrierConfig 構成オブジェクトを使用して 5G ダウンリンク波形を生成します。アプリの [MATLAB スクリプトのエクスポート] オプションを使用してダウンリンク波形用に生成するコードも、nrDLCarrierConfig 構成オブジェクトを使用します。

既定のダウンリンク波形構成オブジェクトを作成します。waveconfig オブジェクトは波形の仕様をすべて網羅しており、すべてが構成可能です。

waveconfig = nrDLCarrierConfig
waveconfig = 
  nrDLCarrierConfig with properties:

               Label: 'Downlink carrier 1'
      FrequencyRange: 'FR1'
    ChannelBandwidth: 50
             NCellID: 1
        NumSubframes: 10
    InitialNSubframe: 0
    WindowingPercent: 0
          SampleRate: []
    CarrierFrequency: 0
         SCSCarriers: {[1x1 nrSCSCarrierConfig]}
      BandwidthParts: {[1x1 nrWavegenBWPConfig]}
             SSBurst: [1x1 nrWavegenSSBurstConfig]
             CORESET: {[1x1 nrCORESETConfig]}
        SearchSpaces: {[1x1 nrSearchSpaceConfig]}
               PDCCH: {[1x1 nrWavegenPDCCHConfig]}
               PDSCH: {[1x1 nrWavegenPDSCHConfig]}
               CSIRS: {[1x1 nrWavegenCSIRSConfig]}

構成パラメーターを設定したら、プログラムの波形発生器を呼び出します。

[waveform,waveformInfo] = nrWaveformGenerator(waveconfig);

スペクトログラムをプロットして、周波数領域で信号を可視化します。この波形には、フル割り当て PDSCH、物理ダウンリンク制御チャネル (PDCCH)、および信号同期 (SS) バーストが含まれます。

% Plot spectrogram of waveform for first antenna port
samplerate = waveformInfo.ResourceGrids(1).Info.SampleRate;
nfft = waveformInfo.ResourceGrids(1).Info.Nfft;
figure;
spectrogram(waveform(:,1),ones(nfft,1),0,nfft,'centered',samplerate,'yaxis','MinThreshold',-130);
title('Spectrogram of 5G Downlink Baseband Waveform');

PRB 0 ~ 10 の範囲になるように PDSCH 割り当てを変更します。波形を生成し、スペクトログラムをプロットします。

waveconfig.PDSCH{1}.PRBSet = 0:10;
[waveform,waveformInfo] = nrWaveformGenerator(waveconfig);

% Plot spectrogram of waveform for first antenna port
samplerate = waveformInfo.ResourceGrids(1).Info.SampleRate;
nfft = waveformInfo.ResourceGrids(1).Info.Nfft;
figure;
spectrogram(waveform(:,1),ones(nfft,1),0,nfft,'centered',samplerate,'yaxis','MinThreshold',-130);
title('Spectrogram of 5G Downlink Baseband Waveform');

物理チャネルと信号は複数のインスタンスを定義できます。PDSCH 構成オブジェクトの 2 番目のインスタンスを作成し、割り当てを PRB 40 ~ 50 および OFDM シンボル 2 ~ 10 の範囲に設定します。

mySecondPDSCH = nrWavegenPDSCHConfig;
mySecondPDSCH.PRBSet = 40:50;
mySecondPDSCH.SymbolAllocation = [2 10];

2 番目の PDSCH 構成を波形構成に割り当てます。波形を生成します。

waveconfig.PDSCH{2} = mySecondPDSCH;
[waveform,waveformInfo] = nrWaveformGenerator(waveconfig);

% Plot spectrogram of waveform for first antenna port
samplerate = waveformInfo.ResourceGrids(1).Info.SampleRate;
nfft = waveformInfo.ResourceGrids(1).Info.Nfft;
figure;
spectrogram(waveform(:,1),ones(nfft,1),0,nfft,'centered',samplerate,'yaxis','MinThreshold',-130);
title('Spectrogram of 5G Downlink Baseband Waveform');

関連するトピック