This example shows how to model the control region used in an LTE uplink subframe and its channel structure. It demonstrates how you create the physical uplink control channel (PUCCH) format 1 structures and map the generated symbols to a resource grid.
Specify the user-equipment (UE) settings in the structure
ue1.NCellID = 10; ue1.CyclicPrefixUL = 'Normal'; ue1.NSubframe = 0; ue1.Hopping = 'Off'; ue1.NULRB = 9; ue1.Shortened = 0;
Many of the functions used in this example require a subset of the preceding settings specified.
Configure the PUCCH. In addition to the UE settings specified in
ue, you must define parameters related to the physical channel to generate the PUCCH Format 1.
pucch1.ResourceIdx = 0; pucch1.DeltaShift = 1; pucch1.CyclicShifts = 6;
Generate the PUCCH Format 1 symbols by calling the
ltePUCCH1 function, providing the UE and PUCCH configuration structures as input arguments.
hi = [0 0]; pucch1symbols = ltePUCCH1(ue1,pucch1,hi);
hi specifies the HARQ Indicator bits.
Generate the PUCCH Format 1 indices by calling the
ltePUCCH1Indices function. You can use these generated indices to map the PUCCH complex symbols to the subframe resource grid. This function requires the same input argument structures as the
pucch1indices = ltePUCCH1Indices(ue1,pucch1);
Generate the PUCCH Format 1 demodulation reference signals (DRS) by calling the
ltePUCCH1DRS function. This function requires the same input argument structures as the
drs1 = ltePUCCH1DRS(ue1,pucch1);
Generate the PUCCH Format 1 DRS indices by calling the
ltePUCCH1DRSIndices function. These indices map the DRS to the subframe resource grid.
drs1indices = ltePUCCH1DRSIndices(ue1,pucch1);
Generate the subframe resource grid by calling the
lteULResourceGrid function. This function creates an empty resource grid for one subframe.
subframe = lteULResourceGrid(ue1);
Map the PUCCH Format 1 symbols and DRS to the resource grid using the generated indices.
subframe(pucch1indices) = pucch1symbols; subframe(drs1indices) = drs1;