我正在经历一些与基于 CRC 生成器的单位错误检测相关的问题,并试图分析哪个生成器检测到单位错误,哪些没有。
假设,如果我有一个 CRC 生成多项式为 x 4 + x 2。现在我想知道它是否保证检测到单位错误?
1) 如果 k=1,2,3 用于误差多项式 x k,则余数将分别为 x,x 2 ,x 3在由生成多项式 x 4 + x 2进行多项式除法的情况下,并且根据参考资料,如果生成有多个项且 x 0的系数为 1,则可以捕获所有单比特错误。但它并没有说如果 x 的系数0的系数不为 1 则不能检测到单位错误。这就是说“在循环代码中,那些可被 g(x) 整除的 e(x) 错误不会被捕获。”
2) 我必须检查 E(x)/g(x) 的余数,其中 E(x)(假设是 x k)其中 k=1,2,3,... 是误差多项式,g( x) 是生成多项式。如果余数为零,则我无法检测到错误,当它为非零时,我可以检测到它。
所以,根据我的说法,生成多项式x 4 +x 2保证了基于以上2点的单比特错误检测。请确认我是否正确。