lteCRCDecode

Декодирование контроля циклическим избыточным кодом и удаление

Описание

пример

[blk,err] = lteCRCDecode(blkcrc,poly) проверяет вектор входных данных на ошибку CRC, принимающую, что вектор включает блок данных со связанными присоединенными битами CRC. Часть данных входа возвращена в векторном blk. Логическое различие (XOR) между присоединенным CRC и CRC, повторно вычисленным через часть данных входа, возвращено в uint32 скалярный err. Если err не равно 0, или ошибка произошла или вход CRC, был замаскирован. Логическая маска может также быть применена непосредственно к err. Смотрите TS 36.212 [1], Раздел 5.1.1 для связанных полиномов.

пример

[blk,err] = lteCRCDecode(blkcrc,poly,mask) проверяет вектор входных данных на ошибочный XOR-луг CRC со скалярным mask параметр, прежде чем это будет возвращено в err. mask значение применяется к битам CRC со старшим значащим битом (MSB) сначала и младшим значащим битом (LSB) в последний раз.

Примеры

свернуть все

Проверяйте эффект CRC, декодирующего блок данных с и без маски.

CRC кодирует присоединение '24A' маскированного- введите CRC к вектору все-единиц из длины 100.

rnti = 8;
blkcrc = lteCRCEncode(ones(100,1),'24A',rnti);

CRC декодирует с блоком данных, не используя маску.

[blk1,err1] = lteCRCDecode(blkcrc,'24A');
err1
err1 = uint32
    8

Логическое различие между исходным CRC и повторно вычисленным CRC равняется маске CRC. Поскольку CRC был замаскирован, декодируя, не задавая маску, возвратил err1 = 8, который является значением rnti.

CRC декодирует использование RNTI как маска.

[blk2,err2] = lteCRCDecode(blkcrc,'24A',rnti);
err2
err2 = uint32
    0

Возвращенный выходной параметр, err2, 0 потому что исходная маска, rnti, XORed с собой.

Входные параметры

свернуть все

Битовый вектор входных данных CRC в виде числового вектор-столбца. Функция проверяет входной битовый вектор на ошибку CRC, принимающую, что данные состоят из блока данных с присоединенными битами CRC.

Полином CRC в виде '8', '16', '24A', или '24B'. Смотрите TS 36.212 [1], Раздел 5.1.1 для связанных полиномов.

Маска XOR в виде скалярного целого числа. Различием в CRC является XOR-редактор с mask перед err возвращен.

Типы данных: double

Выходные аргументы

свернуть все

Вектор бита данных, возвращенный как вектор-столбец. blk часть только для данных входа blkcrc.

Типы данных: int8

Логическое различие, возвращенное как целое число. err логическое различие между CRC и CRC, повторно вычисленным через часть данных входа.

Типы данных: uint32

Ссылки

[1] 3GPP TS 36.212. “Развитый Универсальный Наземный Радио-доступ (к E-UTRA); Мультиплексирование и кодирование канала”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group. URL: https://www.3gpp.org.

Введенный в R2014a