Model PUCCH Format 1

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.

Setup user-equipment (UE) settings. Define UE settings in a 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. To do so, call the function ltePUCCH1, providing the UE and PUCCH configuration structures, ue and pucch1, as input arguments.

hi = [0 0];
pucch1symbols = ltePUCCH1(ue1,pucch1,hi);

The variable hi specifies the HARQ Indicator bits.

Generate the PUCCH Format 1 indices. To do so, call the function ltePUCCH1Indices. 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 ltePUCCH1.

pucch1indices = ltePUCCH1Indices(ue1,pucch1);

Generate the PUCCH Format 1 demodulation reference signals (DRS). To do so, call the function ltePUCCH1DRS. This function requires the same input argument structures as ltePUCCH1 and ltePUCCH1Indices.

drs1 = ltePUCCH1DRS(ue1,pucch1);

Generate the PUCCH Format 1 DRS indices. To do so, call the function ltePUCCH1DRSIndices. These indices map the DRS to the subframe resource grid.

drs1indices = ltePUCCH1DRSIndices(ue1,pucch1);

Generate the subframe resource grid. To do so, call the function lteULResourceGrid. 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;

See Also

| | | |

Related Topics