exponenta event banner

nrPUCCHDMRS

Создание символов PUCCH DM-RS

    Описание

    пример

    sym = nrPUCCHDMRS(carrier,pucch) производит sym, который содержит символы опорного сигнала демодуляции (DM-RS) физического канала управления восходящей линии связи (PUCCH), как определено в TS 38.211, раздел 6.4.1.3 [1], для всех форматов PUCCH. carrier определяет конфигурацию оператора связи. pucch определяет конфигурацию PUCCH. Для форматов PUCCH 1, 3 и 4 установите значение GroupHopping имущество pucch имеет значение 'disable' включает скачкообразную перестройку последовательности. В этом случае функция выбирает порядковый номер, который может быть неподходящим для коротких базовых последовательностей. Для формата PUCCH 0 функция возвращает пустое значение для sym.

    пример

    sym = nrPUCCHDMRS(carrier,pucch,'OutputDataType',datatype) указывает тип данных символов PUCCH.

    Примеры

    свернуть все

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

    carrier = nrCarrierConfig;

    Укажите количество RB в сетке ресурсов несущей как 50, начало сетки ресурсов несущей относительно CRB 0 как 120 и номер слота как 25.

    carrier.NSizeGrid = 50;
    carrier.NStartGrid = 120;
    carrier.NSlot = 25;

    Создайте объект конфигурации формата 2 PUCCH по умолчанию.

    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
          ⋮
    
    

    Создайте индексы RE DM-RS формата 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')

    Figure contains an axes. The axes with title Carrier Grid Containing DM-RS of PUCCH Format 2 contains an object of type image.

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

    carrier = nrCarrierConfig;

    Укажите количество RB в сетке ресурсов оператора связи равным 10.

    carrier.NSizeGrid = 10;

    Создайте объект конфигурации формата 4 PUCCH по умолчанию.

    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
          ⋮
    
    

    Создайте индексы RE DM-RS формата 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')

    Figure contains an axes. The axes with title Carrier Grid Containing DM-RS of PUCCH Format 4 contains an object of type image.

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

    свернуть все

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

    Параметры конфигурации PUCCH, указанные в качестве одной из этих опций.

    Для формата PUCCH 0 функция возвращает пустое значение.

    Тип данных выходных символов, указанный как 'double' или 'single'.

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

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

    свернуть все

    Символы модуляции PUCCH DM-RS, возвращаемые как комплексная матрица. Для формата PUCCH 0 этот вывод пуст.

    Типы данных: single | double
    Поддержка комплексного номера: Да

    Ссылки

    [1] 3GPP TS 38.211. "НР; Физические каналы и модуляция. "Проект партнерства 3-го поколения; Техническая спецификация на сеть радиодоступа группы.

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

    .
    Представлен в R2021a