前言
这是CRC码原理与实现系列的第三篇文章。第两篇为:
(1)CRC码简介及其与汉明码的区别
(2)CRC校验码的原理
4. CRC校验码的生成多项式表示
CRC校验码的生成多项式的最高次幂的系数必须为1,也就是说CRC8的生成多项式中x8的系数为1,CRC16的生成多项式中x16的系数为1。
CRC校验码的生成多项式的最高次幂,决定了CRC校验码的长度,如CRC8生成的校验码长度为8比特,CRC16生成的校验码长度为16比特。
生成多项式也经常使用十六进制数表示,而且由于生成多项式的最高次幂固定为1,所以在十六进制表示时经常将最高位省略,例如对于CRC8的生成多项式x^8 + x^2 + x + 1,其十六进制数表示为0x07。
5. 常用的生成多项式
工程中,一般使用一些标准的CRC校验码,列表如下:
CRC校验码的长度越长,其检错能力越强。
另外,常见的CRC3的生成多项式为 x^3 + x + 1。
也可以根据具体情况自定义所需的CRC校验码长度和生成多项式。
后续
关于CRC校验码这个主题,后续将给出以下内容:
(4)MATLAB生成CRC校验码