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.
Specify the user-equipment (UE) settings in the structure ue
.
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);
The variable 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 ltePUCCH1
function.
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 ltePUCCH1
and ltePUCCH1Indices
functions.
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;
See Also
ltePUCCH1
| ltePUCCH1Indices
| ltePUCCH1DRS
| ltePUCCH1DRSIndices
| lteULResourceGrid