This is machine translation

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

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


Channel quality information channel decoding


out = lteCQIDecode(chs,in)



out = lteCQIDecode(chs,in) performs the decoding on soft input data, in, assumed to be encoded using the procedure defined for channel quality information (CQI) in TS 36.212, Sections and [1] for given channel transmission configuration, chs. The decoded output, out, is a vector of length OCQI, the number of uncoded CQI bits transmitted.

Multiple codewords can be parameterized by two different forms of the chs structure. Each codeword can be defined by separate elements of a 1-by-2 structure array, or the codeword parameters can be combined together in the fields of a single scalar, or 1-by-1, structure. Any scalar field values apply to both codewords and a scalar NLayers is the total number. See UL-SCH Parameterization for further details.

The block decoding is performed separately on each soft input data using a maximum likelihood (ML) approach, which assumes that in has been demodulated and equalized to best restore the original transmitted values. The length of CQI bits defines the decoding process.

If the number of CQI bits, OCQI, is less than or equal to 11, a block decoding is performed to invert the coding procedure defined in TS 36.212, Section [1]. If OCQI is greater than 11, the CQI bits are recovered by performing rate matching to OCQI, tail-biting Viterbi decoding, and 8-bit CRC decoding.


collapse all

Decode encoded CQI bits.

Create input stream and initialize channel settings structures for encoding and decoding. Encode CQI bits and turn logical bits into soft data. Decode the CQI bits.

cqi = [0; 1; 0; 1; 0; 1];
chsEnc.Modulation = 'QPSK';
chsEnc.QdCQI = 16;
chsEnc.NLayers = 1;
chsDec.NLayers = 1;
chsDec.OCQI = 6;
enc = lteCQIEncode(chsEnc,cqi);
enc = double(enc)-0.5;
rxCqi = lteCQIDecode(chsDec,enc)
rxCqi =

  6x1 logical array


Input Arguments

collapse all

Channel-specific transmission configuration, specified as a structure that can contain the following parameter fields.

Parameter FieldRequired or OptionalValuesDescription

nonnegative scalar integer, 0 (default)

Number of uncoded channel quality information (CQI) bits


1 (default), 2, 3, 4

Number of transmission layers.

Encoded soft input data, specified as a numeric vector.

Output Arguments

collapse all

Decoded output, returned as a logical column vector of length OCQI.

Data Types: logical


[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

Was this topic helpful?