Documentation

This is machine translation

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

To view all translated materials including this page, select Japan from the country navigator on the bottom of this page.

lteCRCEncode

Cyclic redundancy check calculation and appending

Syntax

``blkcrc = lteCRCEncode(blk,poly)``
``blkcrc = lteCRCEncode(blk,poly,mask)``

Description

example

````blkcrc = lteCRCEncode(blk,poly)` calculates a cyclic redundancy check (CRC) for the input data vector and returns a copy of the vector with the CRC attached. To support the correct processing of filler bits, negative input bit values are interpreted as logical 0 for the purposes of the CRC calculation. A value of –1 is used to represent filler bits. `lteCRCEncode` calculates the CRC defined by `poly` for the input bit vector `blk` and returns a copy of the input with the CRC appended in vector `blkcrc`. Valid options for the CRC polynomial are `'8'`, `'16'`, `'24A'`, or `'24B'`. See TS 36.212 [1], Section 5.1.1 for the associated polynomials. ```

example

````blkcrc = lteCRCEncode(blk,poly,mask)` XOR masks the appended CRC bits with the integral value of `mask`. The `mask` value is applied to the CRC bits with the most significant bit (MSB) first and the least significant bit (LSB) last.```

Examples

collapse all

Calculate and append the CRC associated with an all zero vector, which is also zero.

```crc1 = lteCRCEncode(zeros(100,1),'24A'); crc1(1:10)```
```ans = 10x1 int8 column vector 0 0 0 0 0 0 0 0 0 0 ```

The result is an all-zeros vector of length 124.

Mask the CRC bits in an MSB-first order.

Set the XOR mask to 1 to make the appended CRC bits XOR masked from the most significant to least significant bit.

```mask = 1; crc2 = lteCRCEncode(zeros(100,1),'24A',mask); crc2(end-10:end)```
```ans = 11x1 int8 column vector 0 0 0 0 0 0 0 0 0 0 ```

The result is all zeros, except for a single one in last element position.

Input Arguments

collapse all

Data bit vector, specified as a numeric column vector.

CRC polynomial, specified as `'8'`, `'16'`, `'24A'`, or `'24B'`. See TS 36.212 [1], Section 5.1.1 for the associated polynomials.

XOR mask, specified as an integer. The appended CRC bits are XOR masked from the most significant to least significant bit.

Output Arguments

collapse all

Bit vector with CRC, returned as a column vector.

Data Types: `int8`

References

[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.