Вычислите и добавьте контроль циклическим избыточным кодом (CRC)
blkcrc = nrCRCEncode(blk,poly)blkcrc = nrCRCEncode(blk,poly,mask) вычисляет CRC, заданный полиномиальным blkcrc = nrCRCEncode(blk,poly)poly для входных данных blk. Функция возвращается, CRC закодировал данные, которые являются копией входных данных с добавленными битами четности CRC. Для получения дополнительной информации на связанных полиномах, смотрите Раздел TS 38.212 5.1 [1].
применяет логическое различие (XOR) маска на добавленных битах CRC с интегральным значением blkcrc = nrCRCEncode(blk,poly,mask)mask. Добавленные биты CRC в blkcrc XOR-маскируются со старшим значащим битом (MSB) сначала к младшему значащему биту (LSB) в последний раз. CRC маскированный имеет форму (p0 xor m0), (p1 xor m1), …, (pL-1 xor mL-1), где L является количеством битов четности, и p0 и m0 являются MSBs в бинарном представлении CRC и mask, соответственно. Если значение маски больше, чем 2L - 1, LSBs L рассматриваются для маски.
[1] 3GPP TS 38.212. “NR; Мультиплексирование и кодирование канала”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.