В этом примере показано, как сгенерировать PCFICH с LTE Toolbox™. Сначала создайте CFI на основе строения eNodeB и закодируйте его. Затем сгенерируйте PCFICH с помощью закодированного CFI и сопоставьте его с ресурсной сеткой.
Настройте параметры всей ячейки. Создайте структуру и задайте в качестве ее полей параметры всей ячейки.
enb.NDLRB = 9; enb.CyclicPrefix = 'Normal'; enb.PHICHDuration = 'Normal'; enb.CFI = 3; enb.CellRefP = 4; enb.NCellID = 1; enb.NSubframe = 0;
Многие функции, используемые в этом примере, требуют подмножества предыдущих заданных настроек.
Создайте пустую ресурсную сетку для одного подкадра путем вызова lteDLResourceGrid
функция.
subframe = lteDLResourceGrid(enb);
Получившийся подрамник является 3 размерной матрицей. Количество строк представляет количество доступных поднесущих, 12 × (enb.NDLRB
), поскольку на каждый ресурсный блок приходится 12 поднесущих. Количество столбцов соответствует количеству символов OFDM в подкадре, 7 × 2, поскольку существует 7 символов OFDM в паз для нормального циклического префикса и существует 2 пазы в подкадре. Третья размерность матрицы соответствует количеству используемых портов передающей антенны. В примере задано четыре, так что enb.CellRefP
равен 4.
Используйте lteCFI
функция для кодирования канала CFI. Результат, cfiCodedBits
, является 32- бит набором закодированных бит.
cfiCodedBits = lteCFI(enb);
Как описано выше, количество символов OFDM, используемых для передачи управляющей информации в подкадре, определяется значением CFI. The eNodeB
строение присваивает CFI значение 3. Таким образом, 4 символа OFDM используются для области управления, потому что количество используемых ресурсных блоков меньше 11, поскольку enb.NDLRB
равен 9.
Сгенерируйте комплексные символы PCFICH при помощи ltePCFICH
функция. Эта функция скремблирует кодированные биты CFI, QPSK модулирует символы, преобразует символы в слои и предварительно кодирует, чтобы сформировать комплексные символы PCFICH.
pcfichSymbols = ltePCFICH(enb,cfiCodedBits);
Получившаяся матрица, pcfichSymbols
, имеет 4 столбца. Каждый столбец содержит сложные символы PCFICH, которые сопоставлены с каждым из портов антенны.
Сгенерируйте индексы отображения PCFICH путем вызова ltePCFICHIndices
функция. Эти индексы сопоставляют комплексные символы PCFICH с ресурсной сеткой подрамника.
pcfichIndices = ltePCFICHIndices(enb,'1based');
Получившаяся матрица, pcfichIndices
, имеет 4 столбца. Каждый столбец содержит индексы в линейной форме для каждого порта антенны. Эти индексы основаны на одном, поскольку MATLAB ® использует индексы на основе одного. Однако можно также сгенерировать индексы на основе 0.
Сопоставьте комплексные символы PCFICH с ресурсной сеткой подрамника с помощью соответствующих индексов отображения. Используемый стиль линейной индексации делает процесс отображения простым.
subframe(pcfichIndices) = pcfichSymbols;
Получившаяся матрица, subframe
, содержит сложные символы в pcfichSymbols
в местах, заданных pcfichIndices
.
Чтобы просмотреть использование ресурса, вызовите ltePCFICHInfo
функция. Эта функция возвращает количество ресурсных элементов, NRE
, и количество групп ресурсных элементов, NREG
, используемый PCFICH в структуре, info
.
info = ltePCFICHInfo;
Получившаяся структура, info
, содержит поля NRE
, количество ресурсных элементов и NREG
, количество групп ресурсных элементов, используемых PHICH.
lteCFI
| lteDLDeprecode
| lteDLPrecode
| lteDLResourceGrid
| lteLayerDemap
| lteLayerMap
| ltePCFICH
| ltePCFICHIndices
| ltePCFICHInfo
| ltePCFICHPRBS
| lteSymbolDemodulate
| lteSymbolModulate