CRC计算和BCH编码[理论]

CRC calculating and BCH encoding [THEORY]

我对 BCH 编码有疑问。 BCH Encoding和CRC余数计算是一样的操作吗? M(x) mod G(x) = R(x) 和 R(x) 是我的 BCH 代码?

你说得很对。准确地说,如果你的生成多项式是 g(x) 并且你的块大小是 n,那么有效码字是 g(x) with degree < n.

假设您有 m(x) 的消息 degree < k,并且 g(x) degree n-k:您可以通过不同的方式将您的消息转换为唯一的有效代码字。例如,m(x)*g(x) 工作正常......但我们通常希望代码字以我们的实际消息开头,然后是一些校验位。在那种情况下,代码字是:

m(x)*x^(n-k) - ( m(x)*x^(n-k) mod g(x) )

大多数 CRC 校验也是以这种方式计算的,因为 CRC 代码和 BCH 代码都是多项式代码 (https://en.wikipedia.org/wiki/Polynomial_code)。他们只是有不同的生成多项式。