This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


PUCCH format 3 transmission UCI encoding


cw = lteUCI3Encode(ucibits)



cw = lteUCI3Encode(ucibits) returns a column vector of coded UCI bits, cw, resulting from processing of control information, ucibits for PUCCH format 3. The ucibits is a vector of concatenated HARQ-ACK bits and any appended periodic CSI bits and/or scheduling request (SR) bits.

The UCI processing is defined in TS 36.212 [1], Section, and consists of a (32,O) block code, where O is the number of bits in ucibits. The coded bit vector, cw, is 48 bits long.


collapse all

Encode and decode HARQ-ACK feedback for PUCCH format 3.

Create a Tx ACK vector. Encode the vector using PUCCH format 3. Turn logical bits into 'LLR' data.

txAck = [1;0;0;1];
cw = lteUCI3Encode(txAck);
cw(cw == 0) = -1;

Decode the received data using the PUCCH format 3 UCI decoder. Verify that the Rx ACK vector matches the Tx ACK vector.

rxAck = lteUCI3Decode(cw,length(txAck))
rxAck = 4x1 logical array


Input Arguments

collapse all

Concatenated HARQ-ACK bits, periodic CSI bits, and Scheduling Request (SR) bit, specified as a logical vector containing from 1 to 22 bits. ucibits represents the [a0, a1, ... aN-1] bit sequence as described in TS 36.212 [1], Section

Data Types: logical | double

Output Arguments

collapse all

Coded UCI bits, returned as a 48-by-1 integer column vector. This coded bit vector is 48 bits long.

Data Types: int8


[1] 3GPP TS 36.212. “Multiplexing and channel coding.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal Terrestrial Radio Access (E-UTRA). URL:

Introduced in R2014a