Вычислите и добавьте контроль циклическим избыточным кодом (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.