Сгенерируйте индексы ресурсного элемента PRS
генерирует индексы ресурсного элемента (RE) опорного сигнала позиционирования (PRS) ind
= nrPRSIndices(carrier
,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');
carrier
- Параметры конфигурации поставщика услугnrCarrierConfig
объектПараметры конфигурации несущей для определенной нумерологии OFDM, заданные как nrCarrierConfig
объект. Эта функция использует только эти nrCarrierConfig
свойства объекта.
SubcarrierSpacing
- Интервал между поднесущими в кГц15
(по умолчанию) | 30
| 60
| 120
| 240
Интервалы между поднесущими в кГц, для всех каналов и опорных сигналов несущей, заданные как 15
, 30
, 60
, 120
, или 240
.
Типы данных: double
CyclicPrefix
- Длина циклического префикса'normal'
(по умолчанию) | 'extended'
Длина циклического префикса, заданная как один из следующих опций.
'normal'
- Используйте это значение, чтобы задать нормальный циклический префикс. Эта опция соответствует 14 символам OFDM в пазе.
'extended'
- Используйте это значение для задания расширенного циклического префикса. Эта опция соответствует 12 символам OFDM в пазе. Для нумераций, указанных в TS 38.211 Раздел 4.2, удлиненная длина циклического префикса применяется только для интервалов между поднесущими 60 кГц.
Типы данных: char
| string
NSizeGrid
- Количество RB в ресурсной сетке поставщика услуг52
(по умолчанию) | целое число от 1 до 275Количество RB в ресурсной сетке поставщика услуг, заданное в виде целого числа от 1 до 275. Значение по умолчанию 52
соответствует максимальному количеству RB несущей 10 МГц с 15 кГц SCS.
Типы данных: double
NStartGrid
- Запуск ресурсной сетки поставщика услуг связи относительно CRB 00
(по умолчанию) | целое число от 0 до 2199Запуск ресурсной сетки поставщика услуг связи относительно CRB 0, заданный в виде целого числа от 0 до 2199. Это свойство является параметром более высокого уровня offsetToCarrier.
Типы данных: double
NSlot
- Номер паз0
(по умолчанию) | неотрицательное целое числоНомер слота, заданный как неотрицательное целое число. Можно задать NSlot
значение, больше, чем количество пазов на систему координат. Для примера можно задать это значение с помощью счетчиков цикла передачи в MATLAB® симуляция. В этом случае, возможно, вам придется убедиться, что значение свойства по модулю является количеством пазов на систему координат в коде вызова.
Типы данных: double
NFrame
- Номер системной системы координат0
(по умолчанию) | неотрицательное целое числоНомер системной системы координат, заданный как неотрицательное целое число. Можно задать NFrame
значение, больше максимального номера системы координат 1023. Для примера можно задать это значение с помощью счетчиков цикла передачи в симуляции MATLAB. В этом случае, возможно, вам придется убедиться, что значение свойства по модулю 1024 в коде вызова.
Типы данных: double
prs
- параметры конфигурации PRSnrPRSConfig
объектПараметры конфигурации PRS, заданные как nrPRSConfig
объект. Эта функция использует только эти nrPRSConfig
свойства объекта.
PRSResourceSetPeriod
- Периодичность паза набора ресурсов PRS и смещение паза'on'
(по умолчанию) | 'off'
| двухэлементный векторПаз набора ресурсов 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
PRSResourceOffset
- Смещение паза каждого ресурса PRS0
(по умолчанию) | скаляр в области значений [0, 511] | вектор из целых чисел в области значений [0, 511]Паз смещение каждого ресурса PRS (на основе 0), обеспечиваемое параметром более высокого слоя dl-PRS-ResourceSlotOffset-r16, заданным в виде скаляра в область значений [0, 511] или вектором целых чисел в область значений [0, 511]. Это свойство представляет смещение начального паза ресурса PRS относительно смещения ресурса PRS (TPRSOffset).
Настройте это свойство для каждого ресурса в наборе ресурсов отдельно на основе одной из следующих опций.
Когда присутствует один ресурс, задайте это свойство как скаляр.
Когда присутствует несколько ресурсов, задайте это свойство как скаляр или вектор. Если вы задаете скаляр, объект применяет это значение ко всем ресурсам PRS в наборе ресурсов PRS. Если вы задаете вектор, объект применяет значения векторного элемента к соответствующему ресурсу PRS. Длина этого вектора должна быть равна количеству ресурсов PRS, которые должны быть сконфигурированы в наборе ресурсов PRS.
Чтобы включить это свойство, установите PRSResourceSetPeriod
свойство двухэлементному вектору вида [TPRSPeriod, TPRSOffset].
Типы данных: double
PRSResourceRepetition
- коэффициент повторения ресурса PRS1
(по умолчанию) | 2
| 4
| 6
| 8
| 16
| 32
Коэффициент повторения ресурса PRS, обеспечиваемый более высоким слоям параметром dl-PRS-ResourceRepetitionFactor-r16, задается как 1
, 2
, 4
, 6
, 8
, 16
, или 32
. Это значение свойства является тем же самым для всех ресурсов PRS в наборе ресурсов PRS.
Чтобы включить это свойство, установите PRSResourceSetPeriod
свойство двухэлементному вектору вида [TPRSPeriod, TPRSOffset].
Типы данных: double
PRSResourceTimeGap
- Смещение паза между двумя последовательными повторяющимися образцами ресурса PRS1
(по умолчанию) | 2
| 4
| 8
| 16
| 32
Смещение паза между двумя последовательными повторяющимися образцами ресурса PRS, заданное как 1
, 2
, 4
, 8
, 16
, или 32
. Свойство представляет смещение с точки зрения количества пазов между двумя повторяющимися образцами ресурса PRS. Это значение свойства совпадает со значением для всех ресурсов PRS в наборе ресурсов PRS. Это свойство является более высоким dl-PRS-ResourceTimeGap-r16 параметра слоя.
Чтобы включить это свойство, установите PRSResourceSetPeriod
свойство двухэлементному вектору вида [TPRSPeriod, TPRSOffset] и PRSResourceRepetition
свойство к значению больше 1.
Типы данных: double
MutingPattern1
- Опция мутирующего битового шаблона[]
(по умолчанию) | двоичный вектор длины 2, 4, 6, 8, 16 или 32Опция битового шаблона мутации-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
MutingBitRepetition
- Коэффициент повторения битов мутации1
(по умолчанию) | 2
| 4
| 8
Коэффициент повторения битов мутации, обеспечиваемый dl-PRS-MutingBitRepetitionFactor-r16 параметра более высокого слоя, заданный как 1
, 2
, 4
, или 8
. Это свойство указывает количество последовательных образцов набора ресурсов PRS, N, соответствующих каждому элементу MutingPattern1
свойство. Первый элемент в MutingPattern1
соответствует первым N образцам набора ресурсов PRS, второй элемент соответствует следующим N образцам набора ресурсов PRS и так далее.
Чтобы включить это свойство, установите PRSResourceSetPeriod
свойство двухэлементному вектору вида [TPRSPeriod, TPRSOffset] и MutingPattern1
свойство к значению, отличному от []
.
Типы данных: double
MutingPattern2
- Опция Muting bit pattern-2[]
(по умолчанию) | двоичный вектор длины 1, 2, 4, 6, 8, 16 или 32Опция мутационного битового шаблона, заданная как []
или двоичный вектор длины 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
NumPRSSymbols
- Количество последовательных символов OFDM, выделенных для каждого ресурса PRS12
(по умолчанию) | скаляр в области значений [0, 12] | вектор целых чисел в области значений [0, 12]Количество последовательных символов OFDM, выделенных для каждого ресурса PRS, заданное в виде скаляра в области значений [0, 12] или вектора из целых чисел в области значений [0, 12].
Настройте это свойство для каждого ресурса в наборе ресурсов отдельно на основе одной из следующих опций.
Когда присутствует один ресурс, задайте это свойство как скаляр.
Когда присутствует несколько ресурсов, задайте это свойство как скаляр или вектор. Если вы задаете скаляр, объект применяет это значение ко всем ресурсам PRS в наборе ресурсов PRS. Если вы задаете вектор, объект применяет значения векторного элемента к соответствующему ресурсу PRS. Длина этого вектора должна быть равна количеству ресурсов PRS, которые должны быть сконфигурированы в наборе ресурсов PRS.
Это свойство является более высоким dl-PRS-NumSymbols-r16 параметра слоя, и номинальное значение этого свойства должно быть 2
, 4
, 6
, или 12
. Чтобы указать отсутствие выделения ресурсов PRS, задайте для этого свойства значение 0
.
Типы данных: double
SymbolStart
- Запуск символа OFDM каждого ресурса PRS в пазе0
(по умолчанию) | скаляр в области значений [0, 13] | вектор целых чисел в области значений [0, 13]Запуск символа OFDM каждого ресурса PRS в пазе (на основе 0), заданный как скаляр в области значений [0, 13] или вектор из целых чисел в области значений [0, 13].
Настройте это свойство для каждого ресурса в наборе ресурсов отдельно на основе одной из следующих опций.
Когда присутствует один ресурс, задайте это свойство как скаляр.
Когда присутствует несколько ресурсов, задайте это свойство как скаляр или вектор. Если вы задаете скаляр, объект применяет это значение ко всем ресурсам PRS в наборе ресурсов PRS. Если вы задаете вектор, объект применяет значения векторного элемента к соответствующему ресурсу PRS. Длина этого вектора должна быть равна количеству ресурсов PRS, которые должны быть сконфигурированы в наборе ресурсов PRS.
Это свойство является более высоким dl-PRS-ResourceSymbolOffset-r16 параметра слоя, и номинальное значение этого свойства должно находиться в области значений [0, 12].
Типы данных: double
NumRB
- Количество PRB, выделенных для всех ресурсов PRS52
(по умолчанию) | скаляром в области значений [0, 275]Количество PRB, выделенных для всех ресурсов PRS в наборе ресурсов, заданное в виде скаляра в области значений [0, 275]. Это свойство является более высоким dl-PRS-ResourceBandwidth-r16 параметра слоя, и номинальное значение этого свойства должно находиться в области значений [24, 272] с гранулярностью 4 PRB. Чтобы указать отсутствие выделения ресурсов PRS, задайте для этого свойства значение 0
.
Типы данных: double
RBOffset
- Запуск индекса PRB всех ресурсов PRS относительно ресурсной сетки поставщика услуг0
(по умолчанию) | скаляром в области значений [0, 274]Запуск индекса PRB всех ресурсов PRS относительно ресурсной сетки поставщика услуг, заданный как скаляр в области значений [0, 274].
Типы данных: double
CombSize
- Размер гребня всех ресурсов PRS2
(по умолчанию) | 4
| 6
| 12
Размер гребня всех ресурсов PRS в наборе ресурсов, заданный как 2
, 4
, 6
, или 12
. Размер гребня представляет интервал ресурсного элемента в каждом символе OFDM. Это свойство является более высоким dl-PRS-CombSizeN-r16 параметра слоя. Значение 2
задает для объекта назначение каждого второго RE в PRB для PRS значение 4
задает для объекта назначение каждого 4-го RE в PRB для PRS и так далее.
Типы данных: double
REOffset
- Запуск смещения RE в первом символе PRS OFDM каждого ресурса PRS0
(по умолчанию) | скаляром в области значений [0, (CombSize
-1)] | вектор целых чисел в области значений [0, (CombSize
–1)]Запуск смещения 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'
.'IndexStyle'
- форма индексации RE'index'
(по умолчанию) | 'subscript'
Форма индексации RE, заданная в качестве одного из следующих значений:
'index'
- Индексы указаны в виде линейного индекса.
'subscript'
- Индексы указаны в форме строки [поднесущая, символ, антенна].
Типы данных: char
| string
'IndexBase'
- основа индексации RE'1based'
(по умолчанию) | '0based'
RE- основы индексации, заданные как одно из следующих значений:
'1based'
- Счетчик индексов начинается с 1.
'0based'
- Счетчик индексов начинается с 0.
Типы данных: char
| string
'OutputResourceFormat'
- Выход индексов ресурсного элемента PRS'concatenated'
(по умолчанию) | 'cell'
Выход индексов ресурсного элемента PRS, заданный как одно из следующих значений:
'concatenated'
- Выходные ind
является одним вектором-столбцом, содержащей все объединенные индексы ресурсного элемента PRS.
'cell'
- Выходные ind
- массив ячеек, где каждая камера соответствует одному ресурсу PRS.
Типы данных: char
| string
ind
- индексы PRS REИндексы 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). Группа технических спецификаций Радиосеть доступ.
Указания и ограничения по применению:
Имена и значения в аргументах пары "имя-значение" должны быть константами времени компиляции. Для примера при указании формы линейной индексации включите {coder.Constant('IndexStyle'),coder.Constant('index')}
в -args
значение codegen
функция. Для получения дополнительной информации смотрите coder.Constant
(MATLAB Coder) класс.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.