Параметризация

Некоторые функции в LTE Toolbox™ требовать большого количества параметров. Для упрощения процесса LTE Toolbox группирует соответствующие параметры в структуры.

Параметрические структуры

Рассмотрим, в качестве примера, задачу генерации символов PCFICH и индексов отображения. Для этой задачи можно вызвать функцию ltePCFICH, и ltePCFICHIndices. ltePCFICH функция также требует cw, вектор с входом битами. Для этого входов можно вызвать lteCFI функция. Все три функции требуют структуры параметра enb, который представляет параметры eNodeB для всей ячейки.

Функция ltePCFICH требует enb иметь, по крайней мере, следующие поля.

  • NCellID - тождества камер физического слоя

  • CellRefP - Количество портов антенны опорного сигнала для конкретной ячейки. Допустимые значения: 1, 2 и 4.

  • NSubframe - Номер субкадра

Для сравнения, функция ltePCFICHIndices требует enb иметь, по крайней мере, следующие поля.

  • NCellID - тождества камер физического слоя

  • NDLRB - Количество нисходящих ресурсных блоков

Наконец, функция lteCFI требует только enb иметь одно поле, CFI. Во всех случаях, если дополнительные поля присутствуют и не требуются, функция игнорирует их.

Создайте структуру параметров для всей ячейки

В этом примере показано, как создать структуру параметров всей ячейки. В частности, можно создать структуру параметра, enb, который имеет все поля, необходимые lteCFI, ltePCFICH, и ltePCFICHIndices функций.

Создайте новую структуру параметров, enb, только с одним полем, CFI.

enb.CFI = 1;

Создайте 32-элементный вектор, cw, представляющего скорость 1/16 блоков кодирования значения индикатора формата управления (CFI). Для этого вызовите lteCFI функция. Обеспечивайте enb как входной параметр.

cw = lteCFI(enb);

Добавьте дополнительные поля к enb.

enb.NCellID = 0;
enb.CellRefP = 1;
enb.NSubframe = 0;
enb.NDLRB = 9;

Сгенерируйте комплексные символы PCFICH путем вызова ltePCFICH функция, обеспечивающая enb структура и cw вектор битов как входные параметры.

sym = ltePCFICH(enb,cw);

Хотя ltePCFICH не требует этого enb иметь NDLRB поле, это не вызывает проблемы. В этом случае функция игнорирует любые необязательные поля.

Сгенерируйте индексы отображения PCFICH путем вызова ltePCFICHIndices функция, обеспечивающая enb структура как входной параметр.

ind = ltePCFICHIndices(enb);

Хотя ltePCFICHIndices не требует enb.NSubframe поле, оно не вызывает проблемы. Функция игнорирует все поля, которые ей не требуются.

Вы можете удалить поля из структуры с помощью MATLAB ® rmfield но, как показано, удаление поля не требуется.

Параметры всей ячейки

Многие функции в LTE Toolbox требуют структуры параметра, называемой enb. Этот параметр представляет настройки eNodeB или cell-wide, которые являются общими для всех пользовательских аппаратов (UE) в камере. Эта структура может включать следующие поля, которые являются одними из наиболее распространенных.

  • NCellID - тождества камер физического слоя

  • CellRefP - Количество портов антенны опорного сигнала для конкретной ячейки. Допустимые значения: 1, 2 и 4.

  • CyclicPrefix - Длина циклического префикса. Допустимые значения 'Normal' и 'Extended'.

  • NSubframe - Номер субкадра

  • NDLRB - Количество нисходящих ресурсных блоков

Различные функции требуют различных полей. Не все функции, которые требуют enb структуре нужны все перечисленные выше поля. Некоторые функции требуют только подмножества из перечисленных выше. В этом случае все необязательные поля игнорируются.

Когда необязательные поля параметров не заданы, функция в LTE Toolbox может принимать настройки по умолчанию. В этом случае тулбокс выдает предупреждающие сообщения, чтобы задать значения по умолчанию, которые он использует. Вы можете управлять этими предупреждениями, используя lteWarning функция.

Необязательные форматы выхода

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

Создайте новую структуру параметров, enb.

enb.NCellID = 0;
enb.CellRefP = 1;
enb.NSubframe = 0;
enb.NDLRB = 9;
enb.Ng = 'Sixth';

Например, рассмотрим случай, когда список индексов для определенного физического канала генерируется с помощью ltePCFICHIndices.

Входной параметр, enb, является структурой с соответствующими полями. По умолчанию эти индексы основаны на одном, в отличие от нулевых индексов, заданных в документации технической спецификации (TS).

ind = ltePCFICHIndices(enb);
firstIndex = ind(1)
firstIndex = uint32
    2

Измените базовое число, используемое в генерации индекса, предоставив дополнительный необязательный входной параметр. Задайте '0based' для генерации нулевых индексов или '1based' чтобы сгенерировать индексы на основе одного.

ind = ltePCFICHIndices(enb, '0based');
firstIndex_0based = ind(1)
firstIndex_0based = uint32
    1
ind = ltePCFICHIndices(enb, '1based');
firstIndex_1based = ind(1)
firstIndex_1based = uint32
    2

Первый индекс, сгенерированный, когда необязательный аргумент не предоставляется, соответствует первому индексу при '1based' задан. Необязательный вход не требуется. Если вы не задаете необязательный вход, функция использует значение по умолчанию.

Задайте несколько опций выходного формата для функции путем предоставления входного параметра массива ячеек, opts.

opts = {'sub', '1based', 'reg'};
pcfichInd = ltePCFICHIndices(enb, opts)
pcfichInd = 4x3 uint32 matrix

    1    1    1
   25    1    1
   55    1    1
   79    1    1

Сгенерированные индексы PCFICH указаны в стиле индексации под индексами, на одной основе и относятся к группам ресурсных элементов. Заданный массив опций указывает формат возвращаемых индексов.

Изменение порядка opts записи в камере дают тот же результат.

opts = {'1based', 'sub', 'reg'};
pcfichInd = ltePCFICHIndices(enb, opts)
pcfichInd = 4x3 uint32 matrix

    1    1    1
   25    1    1
   55    1    1
   79    1    1

Порядок предоставления opts входы не релевантны. Оба случая приводят к одинаковым значениям в выходном аргументе, pcfichInd.

См. также

| | | |

Похожие темы

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