如果我有一定数量的字节要串行传输,我如何确定使用哪个CRC(CRC8,CRC16等,基本上是多少位CRC?)并且仍然有错误检测百分比?有这个公式吗?
答案 0 :(得分:6)
从CRC的长度来看,正常的统计数据适用。对于CRC的位宽,您有1/(2^n)
出现误报的可能性。因此,对于8位CRC,您有1/255的机会,等等。
然而,选择的多项式也会产生很大的影响。数学高度依赖于传输的数据,并不是一个简单的答案。
根据您的通信机制,您应该评估的不仅仅是CRC(FEC与系统这样的turbo码非常有用和常见)。
答案 1 :(得分:5)
要回答这个问题,您需要知道您频道的bit error rate,这只能凭经验确定。然后,一旦获得了测量的BER,就必须根据自己的需要确定哪种检测率“高”。
即使在非常嘈杂的通道上发送每条消息,例如5次,也会给你非常好的检测效果,但它确实会对你的吞吐量产生影响。但是,如果要向深空探测器发送命令,则可能需要冗余。