Main Content


Physical uplink control channel format 2 decoding



out = ltePUCCH2Decode(ue,chs,sym) performs decoding of the PUCCH format 2 given UE-specific settings ue and channel transmission configuration chs. out is a soft bit vector consisting of 20 bits, formed by decoding complex symbol matrix sym, performing demodulation with the PUCCH format 2 reference sequence, QPSK demodulation, and descrambling. The symbols for each antenna are in the columns of sym, and the number of columns should match the number of PUCCH Resource Indices specified in the structure, chs.


collapse all

Decode a PUCCH format 2 signal from an equalized resource array, grid.

First, create a UE configuration structure, ue, and a PUCCH configuration structure, pucch2.

ue = struct('NULRB',6,'NCellID',0,'NSubframe',0,'RNTI',1);
pucch2 = struct('ResourceIdx',0);

For the transmitter, create a PUCCH format 2 resource grid.

rgrid = lteULResourceGrid(ue);
pucch2Indices = ltePUCCH2Indices(ue,pucch2);
tx = [1;0;0;0;0;1];
encoded = lteUCIEncode(tx);
rgrid(pucch2Indices) = ltePUCCH2(ue,pucch2,encoded);

On the receiver side, decode the PUCCH format 2 signal contained in equalized resource array, grid. Also decode the UCI bits.

rx = ltePUCCH2Decode(ue,pucch2,rgrid(pucch2Indices));
decoded = lteUCIDecode(rx,length(tx))
decoded = 6x1 logical array


Input Arguments

collapse all

ue is a structure having the following fields.

Physical layer cell identity number, specified as a nonnegative scalar integer.

Example: 4

Data Types: double

Position reference signal subframe number, specified as a nonnegative scalar integer.

Example: 8

Data Types: double

Radio network temporary identifier (16-bit), specified as a scalar integer.

Data Types: double

Cyclic prefix length for uplink channels, specified as 'Normal' or 'Extended'. Optional.

Data Types: char | string

Uplink frequency hopping, specified as 'Off' or 'Group'. Optional.

Data Types: char | string

Data Types: struct

Channel transmission configuration, specified as a structure. chs contains the following fields.

PUCCH resource indices, specified as a nonnegative vector with one element for each transmission antenna. These indices determine the cyclic shift and orthogonal cover used for transmission. (n2_pucch)

Example: 78

Data Types: double

Size of resources allocated to PUCCH format 2, specified as nonnegative scalar integer. This parameter affects location of this transmission. (N2RB)

Data Types: double

Number of cyclic shifts for format 1 resource blocks, in RBs, specified as a nonnegative scalar integer. This parameter can be used in a mixture of format 1 and format 2 PUCCH. (N1cs)

Example: 7

Data Types: double

Symbols for each antenna, specified as complex numeric matrix. The number of columns should match the number of PUCCH resource indices specified in the channel transmission configuration structure, chs.

Example: 0.25881 + 0.9659i

Data Types: double
Complex Number Support: Yes

Output Arguments

collapse all

PUCCH format 2 decoded soft bit output, returned as a logical column vector. This output contains the result of decoding sym.

Data Types: logical

Version History

Introduced in R2014a