Decoding of BCH Codes
The code polynomial, the error polynomial and the received polynomial are related by the following expression:
r (X) = c(X) + e(X) (16)
Syndrome decoding can be used with BCH codes, as they are linear cyclic block codes. Recall that, for a given code polynomial c(X), c(αi ) = 0, and that this is equivalent to
c ◦ HT = 0
Combining this expression with that used to calculate the syndrome vector,
S = (s0, s1, . . . , s2t ) = r ◦ HT
and the following set of equations is obtained:
si = r (αi ) = e(αi ) = r0 + r1(αi ) + •• •+rn−1(αi )n−1
with 1 ≤ i ≤ 2t.
These equations allow us to calculate the ith component of the syndrome vector by replacing the variable X with the root αi in the received polynomial r(X). The syndrome vector consists of elements of the Galois field GF(2m). Another method of evaluating these elements proceeds in the following way: The received polynomial is first divided by Φi (X), which is the minimal polynomial corresponding to the root αi , so that Φi (αi ) = 0, and then
r (X) = ai (X) Φi (X) + bi (X)
which gives, when substituting αi ,
r (αi ) = bi (αi )