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 на основе 0 индексы RE с индексом форма индексации 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 свойства объектов.

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

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

    Длина циклического префикса в виде одной из этих опций.

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

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

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

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

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

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

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

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

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

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

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

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

    Периодичность паза набора ресурсов PRS и паз возмещены в виде одной из этих опций.

    • 'on' — Все ресурсы PRS присутствуют в операционном пазе.

    • 'off' — Все ресурсы PRS отсутствуют в операционном пазе.

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

    Отключение звука опции 2 комбинации двоичных разрядов в виде [] или вектор с бинарным знаком из длины 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

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

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

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

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

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

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

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

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

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

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

    Это свойство является более высоким параметром слоя dl Пересмещение PRS 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, возвращенные как одно из этих значений.

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

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

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

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

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

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

    Ссылки

    [1] 3GPP TS 38.211. “NR; Физические каналы и модуляция (Релиз 16)”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.

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

    Смотрите также

    Объекты

    Функции

    Введенный в R2021a