CRC编码(计算并附加循环冗余校验)

1.语法

(1)blkcrc = nrCRCEncode(blk,poly)

blkcrc = nrCRCEncode(blk,poly)计算多项式poly为输入数据blk定义的CRC。该函数返回CRC编码的数据,该数据是输入数据的副本,其中附加了CRC奇偶校验位。有关相关多项式的详细信息,请参见TS 38.212第5.1节[1]

(2)blkcrc = nrCRCEncode(blk,poly,mask)

blkcrc = nrCRCEncode(blk,poly,mask)使用掩码的整数值对附加的CRC位应用逻辑差(XOR)掩码。将blkcrc中附加的CRC比特与最高有效位(MSB)首先到最低有效位(LSB)进行XOR屏蔽。掩码的CRC格式为(p0 xor m0),(p1 xor m1),…,(pL-1 xor mL-1),其中L是奇偶校验位的数量,p0和m0是二进制文件中的MSB。分别表示CRC和掩码。如果掩码值大于(2^L)-1,则将L、LSB用于掩码。

例:(1)计算并附加CRC

计算CRC奇偶校验位并将其附加到两个数据块的全零矩阵中。结果是大小为124 x 2的全零矩阵。

blkcrc = nrCRCEncode(zeros(100,2),‘24C’);
any(blkcrc(:,1:2));

(2)计算并附加掩码的CRC

计算掩码的CRC奇偶校验位并将其附加到两个数据块的全零矩阵中。附加的CRC位用指定的掩码进行XOR掩码,从MSB首到LSB末,结果是除最后位置的元素以外的全零矩阵。

mask = 1;
blkcrc = nrCRCEncode(zeros(100,2),‘24C’,mask);
blkcrc(end-5:end,1:2)

2.输入参数

(1)blk-输入数据

输入数据,指定为实数矩阵。矩阵的每一列都被视为一个单独的数据块。

数据类型:双精度/8位整数/逻辑型

(2)poly — CRC多项式

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

数据类型:字符/字符串

(3)mask-XOR掩码

XOR掩码,指定为非负整数。该掩码通常是无线电网络临时标识符(RNTI)

数据类型:双精度

3.输出参数

(1)blkcrc — CRC编码的数据

CRC编码数据,以实数矩阵形式返回。 blkcrc是输入blk的副本,其中附加了CRC奇偶校验位。每列对应一个单独的CRC编码代码块。 blkcrc从输入blk继承其数据类型。

数据类型:双精度/8位整数/逻辑型

4.参考文献

[1] 3GPP TS 38.212. “NR; Multiplexing and channel coding.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值