2010-06-23 62 views
5

如果我有一定数量的字节串行传输,我该如何确定使用哪个CRC(CRC8,CRC16等,基本上是多少位CRC?)并仍然具有错误检测百分比高?有这个公式吗?如何确定使用哪种CRC?

回答

5

要回答这个问题,您需要知道您的频道的bit error rate,该频道只能凭经验确定。然后,一旦你有了测量的误码率,你必须决定什么检测率足够“高”足够你的目的。发送每条消息,例如5次,即使在非常嘈杂的通道上,也能给你非常好的检测,但它确实会压缩你的吞吐量。但是,如果您将命令发送到深空探测器,则可能需要这种冗余。

6

从CRC长度的观点来看,正常的统计数据适用。对于CRC的位宽,您有可能产生误报。所以对于一个8位的CRC,你有1/255的机会等等。

但是,选择的多项式也会产生很大的影响。数学高度依赖于正在传输的数据,并不是一个简单的答案。

根据您的通信机制,您应该评估的不仅仅是CRC(与系统相关的FEC等Turbo码非常有用和常见)。

相关问题