主要内容

nrCRCDecode

解码并消除循环冗余校验(CRC)

描述

例子

黑色犯错) = nrCRCDecode (blkcrc检查输入数据blkcrc的CRC错误。该函数假定输入数据包含与多项式相关联的CRC奇偶校验位.函数返回黑色,它是输入的数据部分blkcrc.该函数还返回犯错,这是包含在输入中的CRC与跨输入数据部分重新计算的CRC之间的逻辑差异(XOR)。如果犯错不等于0,则可能发生错误或输入CRC已被屏蔽。有关相关多项式的详细信息,请参见TS 38.212第5.1节[1]

例子

黑色犯错) = nrCRCDecode (blkcrc面具xor掩盖CRC的差异面具在返回之前犯错.的面具值应用于最高有效位(MSB)先到最低有效位(LSB)后的CRC差值。

例子

全部折叠

检查有和没有掩码的CRC解码效果。

定义一个对应于无线网络临时标识符(RNTI)等于12的掩码。添加rti屏蔽CRC校验位到一个数据块的全1矩阵。

rnti = 12;blkCrc = nrCRCEncode ((100 1),“24 c”, rnti);

在没有掩码的情况下执行CRC解码时,err1等于RNTI,因为在编码时CRC被屏蔽了。原来的CRC值和重新计算的CRC值之间的逻辑差就是CRC掩码。

(黑色,err1) = nrCRCDecode (blkCrc,“24 c”);err1
err1 =uint3212

当您使用RNTI值作为掩码执行CRC解码时,犯错等于0。

(黑色,err2) = nrCRCDecode (blkCrc,“24 c”, err1);err2
err2 =uint320

输入参数

全部折叠

CRC编码数据,指定为实数矩阵。矩阵的每一列被认为是一个单独的CRC编码数据块。

数据类型:|int8|逻辑

CRC多项式,指定为“6”“11”“16”“24”“24 b”,或“24 c”.有关相关多项式的详细信息,请参见TS 38.212第5.1节。

数据类型:字符|字符串

异或掩码,指定为非负整数。掩码通常是一个无线网络临时标识符(RNTI)。

数据类型:

输出参数

全部折叠

CRC解码数据,返回为实数矩阵。黑色数据只是输入的一部分吗blkcrc

数据类型:|int8|逻辑

逻辑CRC差异,返回为整数。犯错输入中包含的CRC之间的逻辑差异blkcrc和CRC重新计算输入的数据部分。如果指定了掩码,则函数为xor掩码犯错面具然后返回它。

数据类型:uint32

参考文献

[1]3 gpp TS 38.212。“NR;多路复用和信道编码。”第三代合作伙伴项目;技术规范无线电接入网

扩展功能

C / c++代码生成
使用MATLAB®Coder™生成C和c++代码。

介绍了R2018b