Этот пример показывает, как смоделировать область управления, используемую в подкадре восходящего канала LTE и его структуре канала. Это демонстрирует, как вы создаете физический восходящий канал управления (PUCCH) структуры формата 2 и сопоставляете сгенерированные символы с сеткой ресурса.
Настройки оборудования пользователя (UE) Setup. Задайте настройки UE в структуре.
ue.NCellID = 10; ue.CyclicPrefixUL = 'Normal'; ue.NSubframe = 0; ue.Hopping = 'Off'; ue.NULRB = 9; ue.RNTI = 77;
Многие функции, используемые в этом примере, требуют подмножества предыдущих заданных настроек.
Сконфигурируйте Формат 2 PUCCH. В дополнение к настройкам UE, заданным в ue
, необходимо задать параметры, связанные с физическим каналом, чтобы сгенерировать Формат 2 PUCCH.
pucch2.ResourceIdx = 36; pucch2.ResourceSize = 3; pucch2.CyclicShifts = 6;
Сгенерируйте сообщение UCI от битов CQI.
cqi = [0 1 1 0 0 1]; codedcqi = lteUCIEncode(cqi);
Сгенерируйте символы Формата 2 PUCCH. Для этого вызовите функцию ltePUCCH2
, обеспечив UE и конфигурационные структуры PUCCH, ue
и pucch2
, как входные параметры.
pucch2Sym = ltePUCCH2(ue,pucch2,codedcqi);
Сгенерируйте индексы Формата 2 PUCCH. Для этого вызовите функцию ltePUCCH2Indices
. Можно использовать эти сгенерированные индексы, чтобы сопоставить символы комплекса PUCCH с сеткой ресурса подкадра. Эта функция требует тех же структур входного параметра как ltePUCCH2
.
pucch2Indices = ltePUCCH2Indices(ue,pucch2);
Сгенерируйте сигналы ссылки демодуляции (DRS) Формата 2 PUCCH. Для этого вызовите функцию ltePUCCH2DRS
. Эта функция требует тех же структур входного параметра как ltePUCCH2
и ltePUCCH2Indices
. Поскольку 0 битов HARQ передаются, передают пустой вектор в 3-й входной параметр функции.
pucch2DRSSym = ltePUCCH2DRS(ue,pucch2,[]);
Сгенерируйте индексы Формата 2 DRS PUCCH. Для этого вызовите функцию ltePUCCH2DRSIndices
. Можно использовать эти индексы, чтобы сопоставить DRS с сеткой ресурса подкадра.
pucch2DRSIndices = ltePUCCH2DRSIndices(ue,pucch2);
Сгенерируйте сетку ресурса подкадра. Для этого вызовите функцию lteULResourceGrid
. Эта функция создает пустую сетку ресурса для одного подкадра.
subframe = lteULResourceGrid(ue);
Сопоставьте символы Формата 2 PUCCH и DRS к сетке ресурса, с помощью сгенерированных индексов.
subframe(pucch2Indices) = pucch2Sym; subframe(pucch2DRSIndices) = pucch2DRSSym;
ltePUCCH2
| ltePUCCH2DRS
| ltePUCCH2DRSIndices
| ltePUCCH2Indices
| lteULResourceGrid