Different BCH code between encoder and decoder

442 Views Asked by At

I am searching for the mathematical properties of the BCH codes that could explain that if I encode a message with a BCH defined by $(m=6,n=63,k=24,t=7)$, I can decode that message correctly with another BCH defined by $(m=6,n=63,k=30,t=6)$.

I have some linear algebra knowledge, but not enough to quickly catch up on the BCH Wikipedia page. Is the above property normal or not (I'm programming so it could be a bug), and if yes why?

Thanks

1

There are 1 best solutions below

0
On BEST ANSWER

It's impossible to tell without further information about the actual generating and parity check polynomials. However, Magma tells me that $X^{63}+1$ factorizes as below:

$$(X + 1)(X^2 + X + 1)(X^3 + X + 1)(X^3 + X^2 + 1)(X^6 + X + 1)(X^6 + X^3 + 1)$$ $$\times(X^6 + X^4 + X^2 + X + 1)(X^6 + X^4 + X^3 + X + 1)(X^6 + X^5 + 1)$$ $$\times (X^6 + X^5 +X^2 + X + 1)(X^6 + X^5 + X^3 + X^2 + 1)$$ $$\times (X^6 + X^5 + X^4 + X + 1)(X^6 + X^5 + X^4 + X^2 + 1)$$

Thus, provided you pick the generator polynomial of the dimension 30 BCH as a multiple of (by multiplying by another degree 6 irreducible) the one of dimension 24 (which is a product of 4 degree 6 irreducibles), and provided the two codes have consecutive null spectrum frequencies of length 2t=12 (for t=6) and 14 (for t=7) starting at m=7, things should work out, by guaranteeing codewords in the smaller code are also codewords of the larger code. By the way, the Wikipedia page Cyclic Code seems quite helpful, but of course don't rely on it 100%. Books by Blahut or Lin & Costello or online notes by Hall [google coding theory Hall] at Michigan State are also recommended.