2019-07-12
2019-07-12 本文已影响0人
国宝级初学者
PDCCH编码过程

CRC Attachment
CRC是通过多项式除法生成的,除法之后得到的余数即为校验字段。在硬件实现中,不需要一步一步计算多项式余数来进行CRC的计算,只需要查表的方法即行。下图说明了CRC校验值是如何通过查表得方法计算的,此处举例的是16位CRC的生成示意图,24位的CRC生成的原理相同。

0到F表示的是CRC的位数从低到高排列,LSB到MSB表示需要计算CRC的信息字节的位数比特从低到高排列。首先初始状态是16个移位寄存器里面的值都是1,上面的数据即需要校验的数据,从把数据移位开始计算,将数据的最低位开始逐位移入反相耦合移位寄存器,中间并进行异或计算。当一个字节的数据位都这样操作之后,此时16位寄存器里面的值就是CRC的值。
这是一个字节的CRC,如果需要一组数据,则计算CRC的时候就将其分成多个字节,按照每个字节的方法计算CRC,最后得到的寄存器里面的结果就是整个序列的CRC。
在接收端的校验中,使用相同的CRC生成多项式进行校验,同样使用二进制除法计算CRC。如果计算结果余数为0,则表明接受校验正确。这也就意味着在接收端使用与发送端同样的程序对接收的数据做CRC的计算就可以检验接收数据的正确与否。



最终抑或的操作只在CRC校验比特的最后16位进行