Этот пример объясняет, как OFDM функционирует (nrOFDMModulate
, nrOFDMInfo
, и nrOFDMDemodulate
) установите значение по умолчанию для входа частоты дискретизации, SampleRate
, и значение по умолчанию для входа размера быстрого преобразования Фурье (FFT), Nfft
, когда вы вызываете функцию OFDM, и эти условия применяются.
Вы не задаете значение для SampleRate
введите или вы задаете 'SampleRate',[]
.
Вы не задаете значение для Nfft
введите или вы задаете 'Nfft',[]
.
Значение по умолчанию установлено для SampleRate
вход равен:
Nfft * carrier.SubcarrierSpacing * 1000
.
Значение по умолчанию установлено для Nfft
введите удовлетворяет этим условиям.
Nfft
целочисленное значение, больше, чем 127 (чтобы гарантировать длины циклического префикса с целочисленным знаком)
Nfft
целочисленная степень 2.
Nfft
результаты в максимальном заполнении 85%. Фактическое заполнение равно carrier.NSizeGrid * 12 / Nfft
, где carrier
входной параметр вызова функции, задавая настройку несущей.
Создайте объект настройки несущей.
carrier = nrCarrierConfig;
Вычислите фактическое заполнение, равное carrier.NSizeGrid * 12 / Nfft
для всего NSizeGrid
значения.
nSizeGrids = 1:275; defaultOccupancy = zeros(1,275); for nSizeGrid = nSizeGrids carrier.NSizeGrid = nSizeGrid; ofdmInfo = nrOFDMInfo(carrier); defaultOccupancy(nSizeGrid) = carrier.NSizeGrid * 12 / ofdmInfo.Nfft; end
Постройте фактическое заполнение.
figure; plot(nSizeGrids,defaultOccupancy,'x'); hold on;
Подсветите заполнение для типичного NSizeGrid
значения 52
, 106, 160
, и
216
.
typicalNSizeGrids = [52 106 160 216]; plot(typicalNSizeGrids,defaultOccupancy(typicalNSizeGrids),'ro','MarkerFaceColor','r'); title('Bandwidth Occupancy for Default SampleRate and Default Nfft'); axis([1 275 0 1]); xlabel('NSizeGrid'); xticks([1 typicalNSizeGrids 275]); ylabel('Bandwidth Occupancy (NSizeGrid * 12 / Nfft)');
Проигнорируйте самый маленький NSizeGrid
значения.
defaultOccupancy(1:5) = NaN;
Найдите минимальное заполнение и соответствующий NSizeGrid
значение.
[occupancyMin,nSizeGridMin] = min(defaultOccupancy)
occupancyMin = 0.4277
nSizeGridMin = 73
Найдите максимальное заполнение и соответствующий NSizeGrid
значение.
[occupancyMax,nSizeGridMax] = max(defaultOccupancy)
occupancyMax = 0.8496
nSizeGridMax = 145