Main Content

nrOFDMInfo

OFDM 情報の取得

R2020b 以降

説明

info = nrOFDMInfo(carrier) は、指定されたキャリア構成パラメーターの直交周波数分割多重 (OFDM) 変調に関連する次元情報を提供します。

info = nrOFDMInfo(nrb,scs) は、指定された数のリソース ブロック nrb およびサブキャリア間隔 scs についての OFDM 情報を提供します。

info = nrOFDMInfo(___,Name,Value) は、前述のいずれかの構文の入力引数に加えて、1 つ以上の名前と値のペアの引数を使用してオプションを指定します。

すべて折りたたむ

サウンディング基準信号 (SRS) が格納されたリソース配列の OFDM 変調を実行して、波形を生成します。リソース配列はフレーム全体にまたがっています。

キャリア リソース配列で 30 kHz のサブキャリア間隔と 24 個のリソース ブロック (RB) を指定して、キャリア構成パラメーターを設定します。

carrier = nrCarrierConfig('SubcarrierSpacing',30,'NSizeGrid',24);

スロットの周期性を 2 に設定し、オフセットを 0 に設定して、SRS パラメーターを構成します。

srs = nrSRSConfig('SRSPeriod',[2 0]);

指定したキャリア構成の OFDM 情報を取得します。

info = nrOFDMInfo(carrier);

個々のスロット リソース配列を作成し、それを連結して、フレーム リソース配列を生成します。

grid = [];
for nslot = 0:(info.SlotsPerFrame - 1)
    carrier.NSlot = nslot;
    slotGrid = nrResourceGrid(carrier);
    ind = nrSRSIndices(carrier,srs);
    sym = nrSRS(carrier,srs);
    slotGrid(ind) = sym;
    grid = [grid slotGrid];
end

指定したキャリア構成のリソース配列で OFDM 変調を実行します。

[waveform,info] = nrOFDMModulate(carrier,grid);

60 kHz のサブキャリア間隔と拡張サイクリック プレフィックスを指定して、キャリア構成パラメーターを設定します。

scs = 60;
cpl = 'Extended';

リソース ブロックの数を 150 に設定します。

OFDM 情報を生成して表示します。

nrb = 150;
info = nrOFDMInfo(nrb,scs,'CyclicPrefix',cpl)
info = struct with fields:
                   Nfft: 4096
             SampleRate: 245760000
    CyclicPrefixLengths: [1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 ... ] (1x48 double)
          SymbolLengths: [5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 ... ] (1x48 double)
              Windowing: 116
           SymbolPhases: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
         SymbolsPerSlot: 12
       SlotsPerSubframe: 4
          SlotsPerFrame: 40

キャリア リソース配列で 106 個の RB を指定して、キャリア構成パラメーターを設定します。

carrier = nrCarrierConfig('NSizeGrid',106);

指定されたサンプル レートの OFDM 情報を生成して表示します。

sr = 1e8;
info = nrOFDMInfo(carrier,'SampleRate',sr)
info = struct with fields:
                   Nfft: 3200
             SampleRate: 100000000
    CyclicPrefixLengths: [250 225 225 225 225 225 225 250 225 225 225 225 225 225]
          SymbolLengths: [3450 3425 3425 3425 3425 3425 3425 3450 3425 3425 3425 3425 3425 3425]
              Windowing: 112
           SymbolPhases: [0 0 0 0 0 0 0 0 0 0 0 0 0 0]
         SymbolsPerSlot: 14
       SlotsPerSubframe: 1
          SlotsPerFrame: 10

入力引数

すべて折りたたむ

特定の OFDM numerology のキャリア構成パラメーター。nrCarrierConfig オブジェクトとして指定します。そのオブジェクト プロパティのみが、この関数に関連付けられます。

リソース ブロックの数。1 ~ 275 の整数として指定します。

データ型: double

kHz 単位のサブキャリア間隔。153060120240480、または 960 として指定します。

データ型: double

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は関係ありません。

R2021a より前では、コンマを使用して名前と値の各ペアを区切り、Name を引用符で囲みます。

例: 'SampleRate','1e9' は、1×109 Hz のサンプル レートを指定します。

サイクリック プレフィックス長。'CyclicPrefix' と次の値のいずれかで構成されるコンマ区切りのペアとして指定します。

  • 'normal' — この値を使用して、ノーマル サイクリック プレフィックスを指定します。このオプションは、スロット内の 14 個の OFDM シンボルに対応します。

  • 'extended' — この値を使用して、拡張サイクリック プレフィックスを指定します。このオプションは、スロット内の 12 個の OFDM シンボルに対応します。TS 38.211 の Section 4.2 で規定されている numerology では、拡張サイクリック プレフィックス長が 60 kHz のサブキャリア間隔にのみ適用されます。

メモ

carrier 入力を指定する場合は、carrier 入力の CyclicPrefix プロパティを使用して、サイクリック プレフィックス長を指定します。この名前と値のペアの引数を carrier 入力と一緒に使用することはできません。

データ型: char | string

高速フーリエ変換 (FFT) 点の数。'Nfft' および 127 より大きい非負の整数または [] で構成されるコンマ区切りのペアとして指定します。指定する値は、サイクリック プレフィックス長が整数値となり、最大占有率が 100% となるものでなければなりません。占有率は (12 × NRB)/Nfft の値として定義されます。ここで、NRB はリソース ブロックの数です。

この入力を指定しなかった場合、または 'Nfft',[] を指定した場合、関数はこの入力の既定値として 127 より大きい整数値を設定します。実際の既定値は、他の入力値によって異なります。

  • SampleRate 入力を指定しなかった場合、または 'SampleRate',[] を指定した場合、関数は次の条件を満たす Nfft を設定します。

    • 2 の整数乗の Nfft

    • 最大占有率が 85% になる Nfft

  • SampleRate 入力を指定した場合、関数は次の条件を満たす Nfft を設定します。

    • サイクリック プレフィックス長が整数値になる Nfft

    • gcd (Nfft × SCS, SampleRate) の値を最大化する Nfft。ここで、SCScarrier.SubcarrierSpacing プロパティまたは scs 入力によって指定される。

詳細については、OFDM サンプル レートと FFT サイズの構成を参照してください。

データ型: double

波形のサンプル レート。'SampleRate' および正のスカラー値または [] で構成されるコンマ区切りのペアとして指定します。

この入力を指定しなかった場合、または 'SampleRate',[] を指定した場合、関数はこの入力に Nfft × SCS の値を設定します。

  • Nfft'Nfft' 入力の値。

  • SCS はサブキャリア間隔。使用する関数構文に応じて、SCScarrier.SubcarrierSpacing プロパティまたは scs 入力によって指定されます。

詳細については、OFDM サンプル レートと FFT サイズの構成を参照してください。

データ型: double

関数が OFDM シンボルのレイズド コサイン ウィンドウ処理とオーバーラップ処理を適用する時間領域サンプルの数。'Windowing' および非負の整数または [] で構成されるコンマ区切りのペアとして指定します。

この入力を指定しなかった場合、または 'Windowing',[] を指定した場合、関数は、TS 38.101-1 の Annex F.5.3 と Annex F.5.4、TS 38.101-2 の Annex F.5.3 と Annex F.5.4、および TS 38.104 の Annex B.5.2 と Annex C.5.2 で規定されているように、この入力をエラー ベクトル振幅 (EVM) テストに影響を与えない最大値 E に設定します。Efloor((NCPW) × info.NfftNFFT, nominal) の値に等しくなります。ここで、NCPW、および NFFT, nominal は、それぞれ "Cyclic prefix length"、"EVM window length"、および "FFT size" というラベルの付いたテーブル列の値です。

データ型: double

Hz 単位の搬送周波数。'CarrierFrequency' と実数で構成されるコンマ区切りのペアとして指定します。この入力は、TS 38.211 の Section 5.4 で定義されている f0 に対応します。

データ型: double

出力引数

すべて折りたたむ

OFDM 情報。次のフィールドを含む構造体として返されます。

フィールド説明
Nfft正の整数FFT 点の数
SampleRate正のスカラー波形のサンプル レート
CyclicPrefixLengths正の整数の 1 行 N 列のベクトル。ここで、N はサブフレーム内の OFDM シンボルの数。

各 OFDM シンボルのサイクリック プレフィックス長 (サンプル数)

SymbolLengths正の整数の 1 行 N 列のベクトルOFDM シンボル長 (サンプル数)
Windowing正の整数関数が OFDM シンボルのレイズド コサイン ウィンドウ処理とオーバーラップ処理を適用する時間領域サンプルの数
SymbolPhases区間 [-π, π] の数値の 1 行 N 列のベクトル

各 OFDM シンボルの位相補償 (ラジアン)

関数 nrOFDMModulate は、TS 38.211 の Section 5.4 [4]で規定されているように、変調の際にこの補正を適用して、OFDM シンボルごとに位相項を計算に入れます。関数 nrOFDMDemodulate が復調の際にこの位相補償を反転します。

SymbolsPerSlot正の整数スロット内の OFDM シンボルの数
SlotsPerSubframe正の整数1 ms サブフレーム内のスロット数
SlotsPerFrame正の整数10 ms フレーム内のスロット数

メモ

CyclicPrefixLengthsSymbolLengths、および Windowing の構造体フィールドのサンプル数は、OFDM シンボルの構成時に使用されるサイズ Nfft の IFFT のサンプル レートに対して適用されます。ただし、SampleRate の名前と値の引数で任意のサンプル レートを指定する場合、IFFT のサンプル レートは波形サンプル レートと異なる場合があります。

これらのフィールドの詳細については、Use Custom OFDM Sample Rate and Custom FFT Sizeの例を参照してください。

データ型: struct

参照

[1] 3GPP TS 38.101-1. “NR; User Equipment (UE) radio transmission and reception; Part 1: Range 1 Standalone.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

[2] 3GPP TS 38.101-2. “NR; User Equipment (UE) radio transmission and reception; Part 2: Range 2 Standalone.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

[3] 3GPP TS 38.104. “NR; Base Station (BS) radio transmission and reception.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

[4] 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++ コードを生成します。

バージョン履歴

R2020b で導入

すべて展開する