nrPRSIndices

Сгенерируйте индексы ресурсного элемента PRS

    Описание

    пример

    ind = nrPRSIndices(carrier,prs) генерирует индексы ресурсного элемента (RE) опорного сигнала позиционирования (PRS) ind, как определено в TS 38.211 Раздел 7.4.1.7.3 [1], для строения несущей carrier и строение PRS prs. Функция также обрабатывает условия, связанные с отображением ресурсов PRS в пазы, как определено в TS 38.211 Раздел 7.4.1.7.4.

    пример

    ind = nrPRSIndices(carrier,prs,Name,Value) задает опции с помощью одного или нескольких аргументов имя-значение. Для примера, 'IndexBase','0based' задает основу индексации RE равную 0.

    Примеры

    свернуть все

    Создайте объект строения поставщика услуг по умолчанию.

    carrier = nrCarrierConfig;

    Создайте объект строения PRS по умолчанию.

    prs = nrPRSConfig;

    Установите свойства, которые являются общими для всех ресурсов PRS в наборе ресурсов.

    prs.PRSResourceSetPeriod = [20 0];
    prs.PRSResourceRepetition = 4;
    prs.PRSResourceTimeGap = 2;
    prs.MutingPattern1 = [1 0];
    prs.MutingBitRepetition = 2;
    prs.MutingPattern2 = [1 0 1 0];
    prs.NumRB = 32;
    prs.RBOffset = 10;
    prs.CombSize = 4; 

    Задайте свойства, уникальные для каждого ресурса PRS в наборе ресурсов. Можно задать эти свойства как скаляр или вектор. Если вы задаете скаляр, объект применяет это значение ко всем ресурсам PRS в наборе ресурсов PRS. Если вы задаете вектор, объект применяет значения векторного элемента к соответствующему ресурсу PRS. Длина этого вектора должна быть равна количеству ресурсов PRS, которые должны быть сконфигурированы в наборе ресурсов PRS.

    prs.PRSResourceOffset = [0 10];
    prs.NumPRSSymbols = [6 4];
    prs.SymbolStart = [0 1];
    prs.REOffset = 0;
    prs.NPRSID = [10 50];

    Сгенерируйте индексы PRS RE на основе 0 с нижним индексом RE формы.

    ind = nrPRSIndices(carrier,prs,'IndexStyle','subscript','IndexBase','0based')
    ind = 576x3 uint32 matrix
    
       120     0     0
       124     0     0
       128     0     0
       132     0     0
       136     0     0
       140     0     0
       144     0     0
       148     0     0
       152     0     0
       156     0     0
          ⋮
    
    

    Создайте объект строения поставщика услуг по умолчанию.

    carrier = nrCarrierConfig;

    Создайте объект строения PRS по умолчанию.

    prs = nrPRSConfig;

    Установите свойства, относящиеся к строению паза PRS.

    prs.PRSResourceSetPeriod = [8 0]; % Resource set periodicity of 8 slots and resource set slot offset of 0 slots
    prs.PRSResourceOffset = [0 4];    % Configure two PRS resources with slot offsets 0 and 4 relative to resource set offset
    prs.PRSResourceRepetition = 2;    % Repeat each PRS resource twice
    prs.PRSResourceTimeGap = 1;       % Configure two PRS resource repetition indices with no time gap

    Установите свойства, связанные с строением PRS-мутинга.

    prs.MutingPattern1 = [1 1];       % Transmit all PRS resource set instances
    prs.MutingBitRepetition = 1;      % One instance of a PRS resource set corresponding to a single element of MutingPattern1 binary vector
    prs.MutingPattern2 = [1 0];       % Mute second repetition index of all the PRS resources within an active instance of a PRS resource set

    Установите свойства, связанные с выделением временной области PRS.

    prs.NumPRSSymbols = [6 12];
    prs.SymbolStart = [6 0];

    Установите свойства, связанные с выделением частотного диапазона PRS.

    prs.NumRB = 40;
    prs.RBOffset = 4;
    prs.CombSize = 4;
    prs.REOffset = [1 3];
    prs.NPRSID = 5;       % Set PRS sequence identity

    Получите количество символов ортогональной частоты деления мультиплексирования (OFDM) в паз.

    numSymPerSlot = carrier.SymbolsPerSlot;

    Установите количество пазов равным 20.

    numSlots = 20;

    Сопоставьте ресурсные элементы (RE) для обоих ресурсов PRS в ресурсной сетке поставщика услуг.

    grid = complex(zeros(carrier.NSizeGrid*12,carrier.SymbolsPerSlot*numSlots));
    for slotIdx = 0:numSlots-1
        carrier.NSlot = slotIdx;
        indCell = nrPRSIndices(carrier,prs,'OutputResourceFormat','cell');
        symCell = nrPRS(carrier,prs,'OutputResourceFormat','cell');
        slotGrid = nrResourceGrid(carrier);
        slotGrid(indCell{1}) = 70*symCell{1};                              % Resource element mapping of PRS resource 1 with some scaling for plotting purpose
        slotGrid(indCell{2}) = 250*symCell{2};                             % Resource element mapping of PRS resource 2 with some scaling for plotting purpose
        grid(:,(1:numSymPerSlot)+numSymPerSlot*slotIdx) = slotGrid;
    end
    figure
    image(abs(grid));
    axis xy;
    L = line(ones(2),ones(2),'LineWidth',8);               % Generate lines
    set(L,{'color'},{[0.18 0.51 0.98]; [0.96 0.95 0.11]}); % Set the colors
    legend('PRS Resource 1','PRS Resource 2');             % Create legend
    title('PRS Resource Elements');
    xlabel('OFDM Symbols');
    ylabel('Subcarriers');

    Figure contains an axes. The axes with title PRS Resource Elements contains 3 objects of type image, line. These objects represent PRS Resource 1, PRS Resource 2.

    Входные параметры

    свернуть все

    Параметры конфигурации несущей для определенной нумерологии OFDM, заданные как nrCarrierConfig объект. Эта функция использует только эти nrCarrierConfig свойства объекта.

    Интервалы между поднесущими в кГц, для всех каналов и опорных сигналов несущей, заданные как 15, 30, 60, 120, или 240.

    Типы данных: double

    Длина циклического префикса, заданная как один из следующих опций.

    • 'normal' - Используйте это значение, чтобы задать нормальный циклический префикс. Эта опция соответствует 14 символам OFDM в пазе.

    • 'extended' - Используйте это значение для задания расширенного циклического префикса. Эта опция соответствует 12 символам OFDM в пазе. Для нумераций, указанных в TS 38.211 Раздел 4.2, удлиненная длина циклического префикса применяется только для интервалов между поднесущими 60 кГц.

    Типы данных: char | string

    Количество RB в ресурсной сетке поставщика услуг, заданное в виде целого числа от 1 до 275. Значение по умолчанию 52 соответствует максимальному количеству RB несущей 10 МГц с 15 кГц SCS.

    Типы данных: double

    Запуск ресурсной сетки поставщика услуг связи относительно CRB 0, заданный в виде целого числа от 0 до 2199. Это свойство является параметром более высокого уровня offsetToCarrier.

    Типы данных: double

    Номер слота, заданный как неотрицательное целое число. Можно задать NSlot значение, больше, чем количество пазов на систему координат. Для примера можно задать это значение с помощью счетчиков цикла передачи в MATLAB® симуляция. В этом случае, возможно, вам придется убедиться, что значение свойства по модулю является количеством пазов на систему координат в коде вызова.

    Типы данных: double

    Номер системной системы координат, заданный как неотрицательное целое число. Можно задать NFrame значение, больше максимального номера системы координат 1023. Для примера можно задать это значение с помощью счетчиков цикла передачи в симуляции MATLAB. В этом случае, возможно, вам придется убедиться, что значение свойства по модулю 1024 в коде вызова.

    Типы данных: double

    Параметры конфигурации PRS, заданные как nrPRSConfig объект. Эта функция использует только эти nrPRSConfig свойства объекта.

    Паз набора ресурсов PRS и смещение паза, заданные как один из следующих опций.

    • 'on' - Все ресурсы PRS присутствуют в рабочем пазе.

    • 'off' - Все ресурсы PRS отсутствуют в рабочем пазе.

    • Двухэлементный вектор вида [TPRSPeriod, TPRSOffset] - TPRSPeriod является периодичностью паза набора ресурсов. Номинальное значение TPRSPeriod должно равняться 2μ умножено на одно из значений в наборе {4, 5, 8, 10, 16, 20, 32, 40, 64, 80, 160, 320, 640, 1280, 2560, 5120, 10 240}, где TPRSOffset - смещение паза набора ресурсов и должно равняться значению в области значений [0, TPRSPeriod - 1].

    Типы данных: double | string | char

    Паз смещение каждого ресурса PRS (на основе 0), обеспечиваемое параметром более высокого слоя dl-PRS-ResourceSlotOffset-r16, заданным в виде скаляра в область значений [0, 511] или вектором целых чисел в область значений [0, 511]. Это свойство представляет смещение начального паза ресурса PRS относительно смещения ресурса PRS (TPRSOffset).

    Настройте это свойство для каждого ресурса в наборе ресурсов отдельно на основе одной из следующих опций.

    • Когда присутствует один ресурс, задайте это свойство как скаляр.

    • Когда присутствует несколько ресурсов, задайте это свойство как скаляр или вектор. Если вы задаете скаляр, объект применяет это значение ко всем ресурсам PRS в наборе ресурсов PRS. Если вы задаете вектор, объект применяет значения векторного элемента к соответствующему ресурсу PRS. Длина этого вектора должна быть равна количеству ресурсов PRS, которые должны быть сконфигурированы в наборе ресурсов PRS.

    Зависимости

    Чтобы включить это свойство, установите PRSResourceSetPeriod свойство двухэлементному вектору вида [TPRSPeriod, TPRSOffset].

    Типы данных: double

    Коэффициент повторения ресурса PRS, обеспечиваемый более высоким слоям параметром dl-PRS-ResourceRepetitionFactor-r16, задается как 1, 2, 4, 6, 8, 16, или 32. Это значение свойства является тем же самым для всех ресурсов PRS в наборе ресурсов PRS.

    Зависимости

    Чтобы включить это свойство, установите PRSResourceSetPeriod свойство двухэлементному вектору вида [TPRSPeriod, TPRSOffset].

    Типы данных: double

    Смещение паза между двумя последовательными повторяющимися образцами ресурса PRS, заданное как 1, 2, 4, 8, 16, или 32. Свойство представляет смещение с точки зрения количества пазов между двумя повторяющимися образцами ресурса PRS. Это значение свойства совпадает со значением для всех ресурсов PRS в наборе ресурсов PRS. Это свойство является более высоким dl-PRS-ResourceTimeGap-r16 параметра слоя.

    Зависимости

    Чтобы включить это свойство, установите PRSResourceSetPeriod свойство двухэлементному вектору вида [TPRSPeriod, TPRSOffset] и PRSResourceRepetition свойство к значению больше 1.

    Типы данных: double

    Опция битового шаблона мутации-1, заданная как [] или двоичный вектор длины 2, 4, 6, 8, 16 или 32.

    • Если mutingOption1-r16 параметра более высокого слоя сконфигурирована, установите это свойство в двоичный вектор длины 2, 4, 6, 8, 16 или 32. Каждый элемент в векторе соответствует ряду последовательных образцов набора ресурсов PRS, основанного на MutingBitRepetition свойство. Векторный элемент также указывает, переданы ли все ресурсы PRS в образцах набора ресурсов PRS (двоичный 1) или приглушены (двоичный 0).

    • Если mutingOption1-r16 параметра более высокого слоя не сконфигурирован, задайте для этого свойства значение []. Чтобы отключить бит мутации шаблона опции -1, задайте для этого свойства значение [].

    Зависимости

    Чтобы включить это свойство, установите PRSResourceSetPeriod свойство двухэлементному вектору вида [TPRSPeriod, TPRSOffset].

    Типы данных: double

    Коэффициент повторения битов мутации, обеспечиваемый dl-PRS-MutingBitRepetitionFactor-r16 параметра более высокого слоя, заданный как 1, 2, 4, или 8. Это свойство указывает количество последовательных образцов набора ресурсов PRS, N, соответствующих каждому элементу MutingPattern1 свойство. Первый элемент в MutingPattern1 соответствует первым N образцам набора ресурсов PRS, второй элемент соответствует следующим N образцам набора ресурсов PRS и так далее.

    Зависимости

    Чтобы включить это свойство, установите PRSResourceSetPeriod свойство двухэлементному вектору вида [TPRSPeriod, TPRSOffset] и MutingPattern1 свойство к значению, отличному от [].

    Типы данных: double

    Опция мутационного битового шаблона, заданная как [] или двоичный вектор длины 1, 2, 4, 6, 8, 16 или 32.

    • Если mutingOption2-r16 параметра более высокого слоя сконфигурирована, установите это свойство в двоичный вектор длины 1, 2, 4, 6, 8, 16 или 32. Каждый элемент в векторе относится к соответствующему индексу повторения. Каждый элемент в векторе соответствует одному индексу повторения каждого ресурса PRS в активном образце набора ресурсов PRS. Векторный элемент также указывает, передан ли индекс повторения для всех ресурсов PRS (двоичный 1) или приглушен (двоичный 0).

    • Если mutingOption2-r16 параметра более высокого слоя не сконфигурирован, задайте для этого свойства значение []. Чтобы отключить бит мутации шаблона опции -2, задайте для этого свойства значение [].

    Зависимости

    Чтобы включить это свойство, установите PRSResourceSetPeriod свойство двухэлементному вектору вида [TPRSPeriod, TPRSOffset].

    Типы данных: double

    Количество последовательных символов OFDM, выделенных для каждого ресурса PRS, заданное в виде скаляра в области значений [0, 12] или вектора из целых чисел в области значений [0, 12].

    Настройте это свойство для каждого ресурса в наборе ресурсов отдельно на основе одной из следующих опций.

    • Когда присутствует один ресурс, задайте это свойство как скаляр.

    • Когда присутствует несколько ресурсов, задайте это свойство как скаляр или вектор. Если вы задаете скаляр, объект применяет это значение ко всем ресурсам PRS в наборе ресурсов PRS. Если вы задаете вектор, объект применяет значения векторного элемента к соответствующему ресурсу PRS. Длина этого вектора должна быть равна количеству ресурсов PRS, которые должны быть сконфигурированы в наборе ресурсов PRS.

    Это свойство является более высоким dl-PRS-NumSymbols-r16 параметра слоя, и номинальное значение этого свойства должно быть 2, 4, 6, или 12. Чтобы указать отсутствие выделения ресурсов PRS, задайте для этого свойства значение 0.

    Типы данных: double

    Запуск символа OFDM каждого ресурса PRS в пазе (на основе 0), заданный как скаляр в области значений [0, 13] или вектор из целых чисел в области значений [0, 13].

    Настройте это свойство для каждого ресурса в наборе ресурсов отдельно на основе одной из следующих опций.

    • Когда присутствует один ресурс, задайте это свойство как скаляр.

    • Когда присутствует несколько ресурсов, задайте это свойство как скаляр или вектор. Если вы задаете скаляр, объект применяет это значение ко всем ресурсам PRS в наборе ресурсов PRS. Если вы задаете вектор, объект применяет значения векторного элемента к соответствующему ресурсу PRS. Длина этого вектора должна быть равна количеству ресурсов PRS, которые должны быть сконфигурированы в наборе ресурсов PRS.

    Это свойство является более высоким dl-PRS-ResourceSymbolOffset-r16 параметра слоя, и номинальное значение этого свойства должно находиться в области значений [0, 12].

    Типы данных: double

    Количество PRB, выделенных для всех ресурсов PRS в наборе ресурсов, заданное в виде скаляра в области значений [0, 275]. Это свойство является более высоким dl-PRS-ResourceBandwidth-r16 параметра слоя, и номинальное значение этого свойства должно находиться в области значений [24, 272] с гранулярностью 4 PRB. Чтобы указать отсутствие выделения ресурсов PRS, задайте для этого свойства значение 0.

    Типы данных: double

    Запуск индекса PRB всех ресурсов PRS относительно ресурсной сетки поставщика услуг, заданный как скаляр в области значений [0, 274].

    Типы данных: double

    Размер гребня всех ресурсов PRS в наборе ресурсов, заданный как 2, 4, 6, или 12. Размер гребня представляет интервал ресурсного элемента в каждом символе OFDM. Это свойство является более высоким dl-PRS-CombSizeN-r16 параметра слоя. Значение 2 задает для объекта назначение каждого второго RE в PRB для PRS значение 4 задает для объекта назначение каждого 4-го RE в PRB для PRS и так далее.

    Типы данных: double

    Запуск смещения RE в первом символе PRS OFDM каждого ресурса PRS, заданный как скаляр в области значений [0, (CombSize-1)] или вектор из целых чисел в области значений [0, (CombSize–1)]. Относительные смещения RE следующих символов PRS OFDM заданы относительно REOffset значение, как описано в TS 38.211 Таблица 7.4.1.7.3-1.

    Настройте это свойство для каждого ресурса в наборе ресурсов отдельно на основе одной из следующих опций.

    • Когда присутствует один ресурс, задайте это свойство как скаляр.

    • Когда присутствует несколько ресурсов, задайте это свойство как скаляр или вектор. Если вы задаете скаляр, объект применяет это значение ко всем ресурсам PRS в наборе ресурсов PRS. Если вы задаете вектор, объект применяет значения векторного элемента к соответствующему ресурсу PRS. Длина этого вектора должна быть равна количеству ресурсов PRS, которые должны быть сконфигурированы в наборе ресурсов PRS.

    Это свойство является более высоким dl-PRS-ReOffset-r16 параметра слоя.

    Типы данных: double

    Примечание

    Максимальная длина вектора этих пяти свойств nrPRSConfig объект определяет количество сконфигурированных ресурсов PRS.

    Аргументы в виде пар имя-значение

    Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

    Пример: 'IndexStyle','subscript' задает стиль индексации RE выходных индексов следующим 'subscript'.

    Форма индексации RE, заданная в качестве одного из следующих значений:

    • 'index' - Индексы указаны в виде линейного индекса.

    • 'subscript' - Индексы указаны в форме строки [поднесущая, символ, антенна].

    Типы данных: char | string

    RE- основы индексации, заданные как одно из следующих значений:

    • '1based' - Счетчик индексов начинается с 1.

    • '0based' - Счетчик индексов начинается с 0.

    Типы данных: char | string

    Выход индексов ресурсного элемента PRS, заданный как одно из следующих значений:

    • 'concatenated' - Выходные ind является одним вектором-столбцом, содержащей все объединенные индексы ресурсного элемента PRS.

    • 'cell' - Выходные ind - массив ячеек, где каждая камера соответствует одному ресурсу PRS.

    Типы данных: char | string

    Выходные аргументы

    свернуть все

    Индексы PRS RE, возвращенные как одно из следующих значений.

    • Вектор-столбец - функция возвращает индексы, выводимые в этом формате, когда вы устанавливаете IndexStyle аргумент имя-значение в 'index'.

    • M -by-3 матрица - Функция возвращает индексы, выводимые в этом формате, когда вы устанавливаете IndexStyle аргумент имя-значение в 'subscript'. Строки матрицы соответствуют нижним индексам [поднесущая, символ, антенна] на основе количества поднесущих, символов OFDM и количества антенн, соответственно.

    • Массив ячеек векторов-столбцов - функция возвращает индексы, выход в этом формате, когда вы устанавливаете IndexStyle аргумент имя-значение в 'index' и OutputResourceFormat аргумент имя-значение в 'cell'.

    • Массив ячеек из матриц - функция возвращает индексы, выводимые в этом формате, когда IndexStyle установлено в 'subscript' и OutputResourceFormat аргумент имя-значение в 'cell'. Количество строк в каждой камере изменяется в зависимости от строений ресурса PRS в наборе ресурсов PRS.

    В зависимости от значения IndexBaseфункция возвращает индексы на основе 1 или на основе 0.

    Типы данных: uint32

    Ссылки

    [1] 3GPP TS 38.211. "NR; Физические каналы и модуляция (Release 16). Группа технических спецификаций Радиосеть доступ.

    Расширенные возможности

    .
    Введенный в R2021a
    Для просмотра документации необходимо авторизоваться на сайте