Channel quality information channel decoding
decodes the soft input data,
blkerr] = lteCQIDecode(
in, assumed to be encoded using
the procedure defined for channel quality information (CQI) in TS 36.212, Sections
220.127.116.11 and 18.104.22.168.4  for given channel transmission
chs. The decoded output,
out, is a vector of length
number of uncoded CQI bits transmitted.
Multiple codewords can be parameterized by two different forms
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
The block decoding is performed separately on each soft input
data using a maximum likelihood (ML) approach, which assumes that
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 22.214.171.124.4 . If
OCQI is greater than 11,
the CQI bits are recovered by performing rate matching to
tail-biting Viterbi decoding, and 8-bit CRC decoding.
Decode CQI Bits
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 0 1 0 1 0 1
chs — Channel-specific transmission configuration
scalar structure | structure array
Channel-specific transmission configuration, specified as a structure that can contain the following parameter fields.
|Parameter Field||Required or Optional||Values||Description|
nonnegative scalar integer, 0 (default)
Number of uncoded channel quality information (CQI) bits
1 (default), 2, 3, 4
Number of transmission layers.
in — Encoded soft input data
Encoded soft input data, specified as a numeric vector.
out — Decoded output
logical column vector
Decoded output, returned as a logical column vector of length
blkerr — Block error
Block error, returned as a logical scalar. If the number of transmitted
bits is 22 or fewer,
blkerr is a logical value that reports if a
decoding error has occurred.
 3GPP TS 36.212. “Evolved Universal Terrestrial Radio Access (E-UTRA); Multiplexing and channel coding.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network. URL: https://www.3gpp.org.
Introduced in R2014a