디폴트 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;
최대 90%의 점유율을 제공하도록 각 NSizeGrid 값에 대해 Nfft를 설정합니다.
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)');
