このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
既定の OFDM サンプル レートとカスタムの FFT サイズの使用
この例では、OFDM 関数の呼び出し時に次の条件が当てはまる場合に、OFDM 関数 (nrOFDMModulate、nrOFDMInfo、およびnrOFDMDemodulate) によってサンプル レートの入力 SampleRate の既定値がどのように設定されるかを示します。
入力
SampleRateの値を指定していない。または'SampleRate',[]を指定している。高速フーリエ変換 (FFT) のサイズ入力
Nfftにカスタム値を指定している。
既定の OFDM サンプル レート
SampleRate 入力に設定される既定値は、Nfft*carrier.SubcarrierSpacing*1000 に等しくなります。
カスタムの FFT サイズ
Nfft 入力に設定する値は、次の条件を満たさなければなりません。
Nfftが整数である (整数値のサイクリック プレフィックス長を確保するため)。Nfftが 2 のべき乗である。Nfftの最大占有率が 100% になる。実際の占有率はcarrier.NSizeGrid*12/Nfftに等しくなります。ここで、carrierは、キャリア構成を指定する関数呼び出しの入力引数です。
帯域幅占有率のプロット
キャリア構成オブジェクトを作成します。
carrier = nrCarrierConfig;
各 NSizeGrid 値の Nfft を設定し、占有率が最大 90% になるようにします。
nSizeGrids = 1:275; userNfftOccupancy = zeros(1,275); sampleRate = zeros(1,275); for nSizeGrid = nSizeGrids carrier.NSizeGrid = nSizeGrid; nfft = 128 * ceil(carrier.NSizeGrid*12/0.9/128); ofdmInfo = nrOFDMInfo(carrier,'Nfft',nfft); userNfftOccupancy(nSizeGrid) = carrier.NSizeGrid*12/ofdmInfo.Nfft; sampleRate(nSizeGrid) = ofdmInfo.SampleRate/1e6; end
結果として得られた占有率をプロットします。
figure; plot(nSizeGrids,userNfftOccupancy,'x'); title({'Bandwidth Occupancy for Default Sample Rate' 'with FFT Size Selected for Maximum Occupancy of 90%'}); axis([1 275 0 1]); xlabel('NSizeGrid'); xticks([1 52 106 160 216 275]); ylabel('Bandwidth Occupancy (NSizeGrid * 12 / Nfft)');

結果として得られたサンプル レートをプロットします。
figure; plot(nSizeGrids,sampleRate,'x'); title({'Default Sample Rate' 'with FFT Size Selected for Maximum Occupancy of 90%'}); axis([1 275 0 max(sampleRate)]); xlabel('NSizeGrid'); xticks([1 52 106 160 216 275]); ylabel('Sample Rate (Ms/s)');
