Образцовый индикатор HARQ и PHICH

Этот пример показывает, как реализовать Индикатор HARQ (HI) и физический канал HI (PHICH). Вы создаете цепочку обработки кодирования гибридных значений индикатора, создаете PHICH и сопоставляете его с сеткой ресурса.

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

enb.NDLRB = 9;
enb.CyclicPrefix = 'Normal';
enb.PHICHDuration = 'Normal';
enb.Ng = 'Sixth';
enb.CellRefP = 4;
enb.NCellID = 1;
enb.NSubframe = 0;
enb.DuplexMode = 'FDD';

Многие функции, используемые в этом примере, требуют подмножества предыдущих заданных настроек.

Используйте ltePHICHInfo, чтобы сгенерировать информацию о ресурсе PHICH.

phichInfo = ltePHICHInfo(enb);

Функция возвращает phichInfo, структуру, содержащую соответствующие данные, требуемые задавать наборы PHICH. Элементы и значения структуры:

StructureElementDescriptionValueNREGNumberofresourceelementgroupsusedtomapthePHICHs.3NRENumberofresourceelementsusedtomapthePHICHs.12NPHICHMaximumnumberofPHICHthatcanbeused.8NGroupsMaximumnumberofPHICHgroupsthatcanbeused.1NMappingUnitsNumberofPHICHmappingunitsusedtomapthemaximumnumberofPHICHgroups.1NSequencesMaximumnumberoforthogonalsequencesthatcanbeusedwithineachgroup.8PHICHDurationNumberofOFDMsymbolsusedtomapthePHICH.1

Сгенерируйте набор Индикатора HARQ (HI). Набор HI состоит из значения индикатора HARQ, 1 для ACK и 0 для NACK и индексной пары PHICH, которая содержит индекс группы PHICH, (nPHICHgroup), и ортогональный индекс последовательности, (nPHICHseq), для PHICH, содержащего HI. Значения (nPHICHgroup) и (nPHICHseq) может быть определен с помощью информации о размерности ресурса PHICH, возвращенной ltePHICHInfo. Количество групп определяет приемлемые значения индекса группы PHICH, и количество последовательностей определяет приемлемые значения индексов последовательности.

HISet = [ [0 0 1]; [0 1 0]; [0 4 0]; [0 7 1]; ];

В этом примере вы создаете одну группу PHICH, содержащую четыре PHICHs с индексами:

PHICHGroupIndexPHICHSequenceIndexHARQIndicatorValue001-ACK010-NACK040-NACK071-ACK

В LTE Toolbox™ матрица набора HI используется, чтобы задать HI и индексную пару PHICH для каждого HI в подкадре. Матрица набора HI задает один PHICH с точки зрения (nPHICHgroupnPHICHgroupHARQIndicator).

Сгенерируйте символы комплекса PHICH. Вы генерируете их от eNodeB настройки и матрицы индикатора HARQ. Вызовите функцию ltePHICH, чтобы выполнить кодирование канала, модуляцию, скремблирование, отображение слоя, предварительное кодирование и объединение групп PHICH.

phichSymbols = ltePHICH(enb,HISet);
size(phichSymbols)
ans = 1×2

    12     4

Итоговый вектор, phichSymbols, имеет 12 строк и 4 столбца. Каждый столбец содержит комплексные символы, которые будут сопоставлены с сетками ресурса для каждого из четырех портов антенны.

Используйте ltePHICHIndices, чтобы сгенерировать PHICH отображение индексов. Эти индексы отображения требуются, чтобы сопоставлять комплексные символы PHICH с сеткой ресурса подкадра.

phichIndices = ltePHICHIndices(enb)
phichIndices = 12x4 uint32 matrix

     13   1525   3037   4549
     15   1527   3039   4551
     16   1528   3040   4552
     18   1530   3042   4554
     43   1555   3067   4579
     45   1557   3069   4581
     46   1558   3070   4582
     48   1560   3072   4584
     79   1591   3103   4615
     81   1593   3105   4617
      ⋮

size(phichIndices)
ans = 1×2

    12     4

Эта функция возвращает матрицу с 4 столбцами, одним столбцом для каждого порта антенны. Строки содержат индексы в линейной форме для отображения символов PHICH к сетке ресурса подкадра.

Используйте lteDLResourceGrid, чтобы сгенерировать сетку ресурса подкадра. Эта функция создает пустую сетку ресурса для одного подкадра.

subframe = lteDLResourceGrid(enb);
size(subframe)
ans = 1×3

   108    14     4

Сопоставьте комплексные символы PHICH с сеткой ресурса путем присвоения phichSymbols местоположениям phichIndices в subframe.

subframe(phichIndices) = phichSymbols;

Смотрите также

| | | | | | | | | | | |

Похожие темы