CRC8保护数据包的最佳8位补充校验和

时间:2011-11-01 23:16:24

标签: checksum crc

我正在设计一种低级无线电通信协议,我正在尝试决定使用哪种校验和/ crc。硬件提供CRC-8;除数据有效载荷外,每个数据包还有6个字节的开销。设计目标之一是最小化传输开销。对于某些类型的数据,CRC-8应该是足够的,对于其他类型,有必要补充它以避免接受错误的数据。

如果我使用单字节补充,那么使用与硬件CRC-8不同的多项式的CRC8与算术校验和相比,有什么优点和缺点?两个字节的补充怎么样?如果CRC-16是一个不错的选择,或者鉴于CRC-8的存在,那会更好吗?

1 个答案:

答案 0 :(得分:2)

2004年,CMU的Phillip Koopman发表了一篇关于选择最合适的CRC的论文,http://www.ece.cmu.edu/~koopman/crc/index.html

  

本文描述了嵌入式的多项式选择过程   网络应用并提出了一套很好的通用性   多项式。一组35个新的多项式以及之前的13个   已发布的多项式为3到16位CRC提供了良好的性能   数据字长度最多为2048位。

该论文应该可以帮助您分析8位CRC的实际效果,以及您从另外8位获得的保护程度。不久前,它帮助我决定FPGA之间自定义协议中的4位CRC和4位数据包头。