CRC8保护的数据包的最佳8位补充校验和 [英] Best 8-bit supplemental checksum for CRC8-protected packet

查看:336
本文介绍了CRC8保护的数据包的最佳8位补充校验和的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I'm looking at designing a low-level radio communications protocol, and am trying to decide what sort of checksum/crc to use. The hardware provides a CRC-8; each packet has 6 bytes of overhead in addition to the data payload. One of the design goals is to minimize transmission overhead. For some types of data, the CRC-8 should be adequate, for for other types it would be necessary to supplement that to avoid accepting erroneous data.

如果是单字节补码,那么使用多项式与硬件CRC-8不同的CRC8,算术校验和以及其他方式的优缺点是什么?两字节的补码呢? CRC-16是一个不错的选择,还是考虑到CRC-8的存在,还有其他更好的方法吗?

If I go with a single-byte supplement, what would be the pros and cons of using a CRC8 with a different polynomial from the hardware CRC-8, versus an arithmetic checksum, versus something else? What about for a two-byte supplement? Would a CRC-16 be a good choice, or given the existence of a CRC-8, would something else be better?

推荐答案

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

In 2004 Phillip Koopman from CMU published a paper on choosing the most appropriate CRC, http://www.ece.cmu.edu/~koopman/crc/index.html


本文介绍了一个多项式嵌入式
网络应用程序的选择过程,并提出了一组良好的通用
多项式。除了13个先前发布的
多项式之外,一组35个新多项式还为3至16位CRCs
提供了良好的性能,最大数据字长为2048位。

This paper describes a polynomial selection process for embedded network applications and proposes a set of good general-purpose polynomials. A set of 35 new polynomials in addition to 13 previously published polynomials provides good performance for 3- to 16-bit CRCs for data word lengths up to 2048 bits.

该论文应该帮助您分析8位CRC的实际有效性,以及从另外8位获得的更多保护。前一段时间,它帮助我确定了FPGA之间自定义协议中的4位CRC和4位数据包头。

That paper should help you analyze how effective that 8 bit CRC actually is, and how much more protection you'll get from another 8 bits. A while back it helped me to decide on a 4 bit CRC and 4 bit packet header in a custom protocol between FPGAs.

这篇关于CRC8保护的数据包的最佳8位补充校验和的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆