2011-11-01 80 views
3

我正在研究设计低级无线电通信协议,并试图决定使用何种校验和/ crc。硬件提供了一个CRC-8;除数据有效载荷外,每个数据包还有6个字节的开销。其中一个设计目标是尽量减少传输开销。对于某些类型的数据,CRC-8应该是足够的,对于其他类型的数据,有必要对其进行补充以避免接受错误的数据。CRC8保护数据包的最佳8位补充校验和

如果我带一个单字节的补充说明,使用带硬件CRC-8的不同多项式的CRC8与算术校验和对比的其他优点和缺点是什么?怎么样一个两字节的补充?如果CRC-16是一个好选择,或者考虑到CRC-8的存在,是否会更好?

回答

2

在2004年从CMU菲利普·考夫曼在选择最适当的CRC发表了一篇论文,http://www.ece.cmu.edu/~koopman/crc/index.html

本文介绍了一种多项式选择流程嵌入式 网络应用,并提出了一套良好的通用 多项式。一组35个新的多项式除了之前的13个以前的 已公布的多项式,对于长达2048位的数据字长度,可为3至16位CRC 提供良好的性能。

该论文应该帮助您分析8位CRC实际上的有效性,以及从另一个8位获得的保护程度。一段时间后,它帮助我在FPGA之间的定制协议中决定使用4位CRC和4位数据包头。