Сгенерируйте индексы ресурсного элемента PUCCH DM-RS
генерирует ind
= nrPUCCHDMRSIndices(carrier
,pucch
)ind
, который содержит индексы ресурсного элемента (RE) демодуляционного опорного сигнала (DM-RS) физического канала управления восходящей линии связи (PUCCH), как определено в TS 38.211 раздел 6.4.1.3 [1], для всех форматов PUCCH. carrier
задает строение поставщика услуг. pucch
задает строение PUCCH. Для формата PUCCH 0 функция возвращает пустое значение для sym
.
задает опции выхода, используя один или несколько аргументов имя-значение.ind
= nrPUCCHDMRSIndices(carrier
,pucch
,Name,Value
)
Создайте объект строения поставщика услуг по умолчанию.
carrier = nrCarrierConfig;
Укажите количество RB в ресурсной сетке поставщика услуг как 50, начало ресурсной сетки поставщика услуг связи относительно CRB 0 как 120 и номер паза как 25.
carrier.NSizeGrid = 50; carrier.NStartGrid = 120; carrier.NSlot = 25;
Создайте объект строения PUCCH формата 2 по умолчанию.
pucch2 = nrPUCCH2Config;
Укажите первый индекс символа в пазе передачи PUCCH как 7, и количество выделенных символов PUCCH как 2. Установите значения PRB, выделенных для PUCCH, в диапазоне от 40 до 45. Включите внутрислотовое скачкообразное изменение частоты и установите начальный индекс PRB второго скачка равным 20. Задайте тождества скремблирования DM-RS равным 1005.
pucch2.SymbolAllocation = [7 2];
pucch2.PRBSet = 40:45;
pucch2.FrequencyHopping = 'intraSlot';
pucch2.SecondHopStartPRB = 20;
pucch2.NID0 = 1005;
Сгенерируйте символы DM-RS формата PUCCH 2.
sym = nrPUCCHDMRS(carrier,pucch2)
sym = 48×1 complex
0.7071 - 0.7071i
-0.7071 + 0.7071i
-0.7071 - 0.7071i
0.7071 - 0.7071i
-0.7071 - 0.7071i
0.7071 - 0.7071i
0.7071 - 0.7071i
0.7071 - 0.7071i
0.7071 - 0.7071i
-0.7071 + 0.7071i
⋮
Сгенерируйте индексы DM-RS RE формата PUCCH 2.
ind = nrPUCCHDMRSIndices(carrier,pucch2)
ind = 48x1 uint32 column vector
4682
4685
4688
4691
4694
4697
4700
4703
4706
4709
⋮
Постройте график сгенерированных символов и RE в ресурсной сетке поставщика услуг.
resGrid = nrResourceGrid(carrier); resGrid(ind) = sym; imagesc(abs(resGrid)) axis xy xlabel('OFDM Symbols') ylabel('Subcarriers') title('Carrier Grid Containing DM-RS of PUCCH Format 2')
Создайте объект строения поставщика услуг по умолчанию.
carrier = nrCarrierConfig;
Задайте количество RB в ресурсной сетке поставщика услуг до 10.
carrier.NSizeGrid = 10;
Создайте объект строения PUCCH формата 4 по умолчанию.
pucch4 = nrPUCCH4Config;
Установите первый индекс символа в пазе передачи PUCCH, равный 2, и количество выделенных символов PUCCH, равное 12. Включите скачкообразное изменение группы и дополнительный флаг строения DM-RS. Задайте тождества скачкообразного изменения как 120, коэффициент расширения как 4 и индекс ортогонального кода покрытия (OCCI) как 3.
pucch4.SymbolAllocation = [2 12];
pucch4.GroupHopping = 'enable';
pucch4.HoppingID = 120;
pucch4.SpreadingFactor = 4;
pucch4.OCCI = 3;
pucch4.AdditionalDMRS = 1;
Сгенерируйте символы DM-RS формата PUCCH 4 с типом данных single
.
sym = nrPUCCHDMRS(carrier,pucch4, 'OutputDataType','single')
sym = 48x1 single column vector
0.7071 - 0.7071i
0.7071 - 0.7071i
0.7071 - 0.7071i
-0.7071 - 0.7071i
-0.7071 - 0.7071i
0.7071 - 0.7071i
0.7071 + 0.7071i
-0.7071 - 0.7071i
0.7071 + 0.7071i
0.7071 + 0.7071i
⋮
Сгенерируйте индексы DM-RS RE формата PUCCH 4.
ind = nrPUCCHDMRSIndices(carrier,pucch4)
ind = 48x1 uint32 column vector
361
362
363
364
365
366
367
368
369
370
⋮
Постройте график сгенерированных символов и RE в ресурсной сетке поставщика услуг.
resGrid = nrResourceGrid(carrier); resGrid(ind) = sym; imagesc(abs(resGrid)) axis xy xlabel('OFDM Symbols') ylabel('Subcarriers') title('Carrier Grid Containing DM-RS of PUCCH Format 4')
carrier
- Параметры конфигурации поставщика услугnrCarrierConfig
объектПараметры конфигурации несущей для определенной нумерологии OFDM, заданные как nrCarrierConfig
объект. Эта функция использует только эти nrCarrierConfig
свойства объекта.
pucch
- Параметры конфигурации PUCCHnrPUCCH1Config
| объекта nrPUCCH2Config
| объекта nrPUCCH3Config
| объекта nrPUCCH4Config
объектПараметры конфигурации PUCCH, заданные как один из следующих опций.
Для формата 1 задайте nrPUCCH1Config
объект. Функция использует только эти свойства объекта.
Для формата 2 задайте nrPUCCH2Config
объект. Функция использует только эти свойства объекта.
Для формата 3 задайте nrPUCCH3Config
объект. Функция использует только эти свойства объекта.
Для формата 4 задайте nrPUCCH4Config
объект. Функция использует только эти свойства объекта.
Для формата PUCCH 0 функция возвращает пустое значение.
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
'IndexStyle','subscript'
задает форму RE индексации выхода.'IndexStyle'
- форма индексации RE'index'
(по умолчанию) | 'subscript'
Форма индексации RE, заданная в качестве одного из следующих значений:
'index'
- Индексы указаны в виде линейного индекса.
'subscript'
- Индексы указаны в форме строки [поднесущая, символ, антенна].
Типы данных: char
| string
'IndexBase'
- основа индексации RE'1based'
(по умолчанию) | '0based'
RE- основы индексации, заданные как одно из следующих значений:
'1based'
- Счетчик индексов начинается с 1.
'0based'
- Счетчик индексов начинается с 0.
Типы данных: char
| string
'IndexOrientation'
- ориентация индексации RE'carrier'
(по умолчанию) | 'bwp'
Ориентация индексации RE, заданная как одно из следующих значений:
'carrier'
- Индексы привязаны относительно сетки перевозчика.
'bwp'
- Индексы ссылаются на BWP.
Типы данных: char
| string
ind
- индексы PUCCH DM-RS REИндексы PUCCH DM-RS RE, возвращенные в качестве одного из следующих значений.
Вектор-столбец - функция возвращает этот тип значения, когда вы устанавливаете IndexStyle
аргумент имя-значение в 'index'
.
M -by-3 матрица - Функция возвращает этот тип значения, когда вы устанавливаете IndexStyle
аргумент имя-значение в 'subscript'
. Строки матрицы соответствуют нижним индексам [поднесущая, символ, антенна] на основе количества поднесущих, символов OFDM и количества антенн, соответственно.
В зависимости от значения IndexBase
функция возвращает индексы на основе 1 или на основе 0. В зависимости от значения IndexOrientation
функция возвращает либо индексы, ориентированные на несущую, либо индексы, ориентированные на BWP.
Для формата PUCCH 0 этот выход пуст.
Типы данных: uint32
[1] 3GPP TS 38.211. "NR; Физические каналы и модуляция ". 3rd Генерация Partnership Project; Группа технических спецификаций Радиосеть доступ.
Указания и ограничения по применению:
Имена и значения в аргументах пары "имя-значение" должны быть константами времени компиляции. Для примера при указании формы линейной индексации включите {coder.Constant('IndexStyle'),coder.Constant('index')}
в -args
значение codegen
функция. Для получения дополнительной информации смотрите coder.Constant
(MATLAB Coder) класс.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.