Rank indication channel encoding

- example
`out = lteRIEncode(chs,in)`

returns
the coded rank indication (RI) bits after performing block coding,
as defined for RI in TS 36.212 [1],
Section 5.2.2.6. `out`

= lteRIEncode(`chs`

,`in`

)`in`

should be a vector or cell
array containing up to 15 RI bits. `out`

contains
the encoded bits in the same form.

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.

Since the RI bits are carried on all defined codewords, a single input will result in a cell array of encoded outputs if multiple codewords are parameterized. This allows for easy integration with the other functions.

The RI coder performs different types of block coding depending
upon the number of RI bits in vector `in`

. If `in`

consists
of one element, it uses TS 36.212 [1], Table 5.2.2.6-3. If `in`

consists
of two elements, it uses TS 36.212 [1], Table 5.2.2.6-4 for encoding. The placeholder
bits, *x* and *y* in the tables,
are represented by –1 and –2, respectively.

Similarly, for 3 to 11 bits, the RI encoding is performed as per TS 36.212 [1], Section 5.2.2.6.4. For greater than 11 bits, the encoding is performed as described in TS 36.212 [1], Section 5.2.2.6.5.

[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: http://www.3gpp.org.

`lteACKEncode`

| `lteCQIEncode`

| `lteRIDecode`

| `lteULSCH`

| `lteULSCHInterleave`

Was this topic helpful?