Information-Dispersion-Entropy-Based Blind Recognition of Binary BCH Codes in Soft Decision Situations

A method of blind recognition of the coding parameters for binary Bose-Chaudhuri-Hocquenghem (BCH) codes is proposed in this paper. We consider an intelligent communication receiver which can blindly recognize the coding parameters of the received data stream. The only knowledge is that the stream is encoded using binary BCH codes, while the coding parameters are unknown. The problem can be addressed on the context of the non-cooperative communications or adaptive coding and modulations (ACM) for cognitive radio networks. The recognition processing includes two major procedures: code length estimation and generator polynomial reconstruction. A hard decision method has been proposed in a previous literature. In this paper we propose the recognition approach in soft decision situations with Binary-Phase-Shift-Key modulations and Additive-White-Gaussian-Noise (AWGN) channels. The code length is estimated by maximizing the root information dispersion entropy function. And then we search for the code roots to reconstruct the primitive and generator polynomials. By utilizing the soft output of the channel, the recognition performance is improved and the simulations show the efficiency of the proposed algorithm.


Introduction
Channel coding, applied to reduce the errors in transmissions, is an important part in digital communications [1].The binary Bose-Chaudhuri-Hocquenghem (BCH) codes are widely used for their powerful error-correcting capability [2], convenient design of encoders [3], and efficiency of decoding algorithms [4,5].In traditional communication systems, the coding parameters are known by both the transmitters and receivers, but with the development of cognitive radios and intelligent techniques, blind recognition of the channel coding parameters is becoming available and realizable.Cognitive radio (CR) was introduced in [6] as a smart spectrum sharing technology, and it is becoming a hot research topic [7][8][9][10].The adaptive coding and modulations (ACM) technique [11][12][13][14] is an important section of the CR to adapt the channel.In an ACM system, the transmitter chooses optimized coding and modulation parameters according to the channel quality.Thus at the reception, the receiver need to recognize those parameters before demodulation and decoding.Another application field of the blind recognition technique is non-cooperative communications [15,16].In this case, a non-cooperative receiver does not known the modulation and coding parameters before recognizing them.In the future communications, the terminals are required to be as intelligent as possible to adapt themselves to a specific context and to blindly estimate the transmitter parameters for self-reconfiguration purpose, only with knowledge of the received data stream [17].
To the best of our knowledge, most of the blind recognition algorithms proposed in the literature are focused on convolutional codes.In [18], a Euclidean-algorithm-based method was proposed to identify a 1/2 rate convolutional encoder in noiseless cases.However, it is not suitable for noisy channels.In [19], another approach was presented to identify a 1/n rate convolutional encoder in noisy cases based on the Expectation Maximization algorithm.The authors of [20,21] developed methods for blind recovery of convolutional encoders in turbo code configuration.In [13] and [17], dual code methods for blind identification of k/n rate convolutional codes ware proposed for cognitive radio receivers.
In this paper we consider the problem of blind recognition of the coding parameters for a cognitive receiver.The main focus is on the widely used BCH codes.Some previous literature reports [22][23][24] proposed and developed recognition algorithms for BCH codes in hard decision situations.In [22] and [23], the authors proposed a blind recognition algorithm for BCH codes based on Root Information Dispersion Entropy and Root Statistic (RIDERS).This algorithm can achieve correct recognition with a bit error rate (BER) of 10 −2 , but it is computationally intensive, especially when the code length is large.The authors of [24] improved that algorithm proposed in [22,23] to reduce the computational complexity, which made the recognition procedure faster.
However, the previous works on blind recognition of BCH codes are all in hard decision situations, and are based on utilizing the algebraic properties of the codes in Galois Fields (GF).To achieve available recognition results, large amounts of training data are always required.With the development of sampling and signal processing techniques, the soft output of the channel has become available.Many soft-decision-based decoding algorithms have been applied to the error-correcting codes [25][26][27][28][29][30] and yield better decoding performances than hard decision algorithms.Some blind frame synchronization techniques for error correcting codes also utilize the soft output of the channel to improve the synchronization performances [31][32][33][34].Inspired by the soft decision decoding algorithms, we develop the RIDERS algorithm introduced by [22][23][24] in the soft decision situations in this paper.As an example we mainly discuss the problem of the soft decisions of BPSK modulation on AWGN channels.
The remaining of this paper is organized as follows: Section 2 presents the code length and coding starting positions estimation approach.Section 3 gives the code roots recognition method.Section 4 discusses the recognition of the primitive polynomial.In Section 5, we compare the computational complexity between hard decision and soft decision situations.Finally, the simulation results and conclusions are given in Section 6 and Section 7.

Introduction of the Recognition Algorithm in Hard Decision Situations
In cyclic coding theories, the algebraic model of the encoding operation can be expressed as follows: or in systematic form [35]: Here ( ) g x is the generator polynomial, ( ) m x is the input information polynomial and ( ) c x is the codeword polynomial, which are all defined over an extension field GF (2 m ) ( 1 m  ).In Equation (2), n and k are the length of the codeword and input information, respectively, and k/n is the code rate.Obviously in Equations ( 1) and ( 2), the roots of g(x) are also the roots of c(x).We define the code roots to be the roots of the generator polynomial g(x) in this paper.The number of the elements in an extension field GF (2 m ) is 2 m -1.We define the set of these elements as G m .For a binary BCH code defined in GF (2 m ), the possible code roots, which form a root set A, are limited and included in G m .A is a subset of G m .We consider a sequence of M valid codewords C 1 , C 2 , …, C M and let c j (x) (1 j M   ) be the codeword polynomial of C j .Initialize an integer vector [N 1 , N 2 , …, N M ] to zeros and get all the roots of each codeword polynomial c j (x) when j increases from 1 to M. If the element (1 2 1) i m i     being a code root.Note that not all the roots of a valid codeword polynomial c(x) are the code roots, but all the code roots must be the roots of c(x).The elements, which are the roots of c(x) but not the code roots, appear randomly in different codewords, because the information polynomials are not the same in different encoding operations.According to this fact, the probability of being a code root for an element in A should be larger than that in A , which is a complement of A in G m , so the values of { | } i i N   A corresponding to the elements in A are generally larger than those corresponding to the elements in A , but this property is only true when the considered data blocks are valid codewords, i.e., the code length is correct and the codewords synchronization is achieved.When the code length or the coding starting positions are not correctly estimated, the property described above does not exist and the bits in the codewords can be considered to appear randomly.In this case, the authors of [22,23] proposed the following hypothesis: Hypothesis 1: When the coding parameters are not correct, the probabilities of being codeword roots of the elements in G m can be assumed to be uniform, i.e., the values of N i is uniform no matter in A or A .
Therefore, in the correct parameters cases, the entropy of the distribution of the roots should be lower than that in the incorrect parameters cases.Based on this fact, the authors of [22,23] introduced a root information dispersion entropy function (RIDEF) to describe the imbalance degree of the N i on different i  and proposed the correct coding parameters that maximize the RIDEF.The RIDEF is defined to be the difference between the entropy of the uniform distribution and the distribution of the code roots on all the elements in G m as follows: where n = 2 m − 1 is the number of the elements in G m .p i is the probability of i  being a root of the code, it is calculated as follows: In the recognition procedure, we traverse all the possible values of code length and coding starting positions to find the ones that make H  be the largest as the estimation of code length and synchronization positions.
The RIDERS algorithm has good performance [22][23][24] in the parameter recognition of BCH codes.However, there are still some problems in the algorithm.Firstly, it is restricted to hard decision situations, which limits the recognition performance.Secondly, Hypothesis 1, as a basis of the algorithm, is not always true.In the following paragraphs we propose the recognition methods inspired by the RIDERS algorithm in soft decision situations.In the Appendix, we give the proof of the faultiness of Hypothesis 1.

Calculation of p i in Soft Decision Situations
To develop the application of this algorithm to be suitable for soft decision cases, we should modify Equation (4) to utilize the soft output of the channel.To calculate p i in Equation (4) in soft decision situations, we define the minimal parity check matrix (MPCM) min ( ) min ( ) ( ) ,( ) , ,( ) ,( ) where l is the code length.According to the coding theories, if i  is a root of a codeword ( 1) , we have: Soft outputs of the channel can provide more information about the reliability of each decision symbol.Instead of verifying whether i  is a root of a codeword polynomial c j (x), we calculate , (1 2 1,1 ) , which is the probability of i  being a root of c j (x), and calculate p i in Equation (4) as follows: To calculate , j i p , we transform the MPCM defined in Equation ( 5) to its binary form by replacing the symbol elements in min ( ) i H  with their binary column vector patterns.For example, 3 min ( ) BCH code corresponding to the element 3  in GF(2 3 ) with code length l = 7, is as follows: Based on the primitive polynomial H  and get their binary vector patterns listed in Table 1.By replacing the symbols in 3 min ( ) H  with the binary patterns, the MPCM can be written in its binary form as follows: Table 1.Symbols in 3 min ( ) H  and their binary vector patterns.

Symbols Polynomial expressions
Vector form Note that the number of rows in min ( ) i H  equals to m, which is the degree of GF(2 m ).And then the syndromes corresponding to the MPCM min ( ) i H  and codeword (1 are calculated in binary forms as follows: Let c j (x) be the codeword polynomial of C j , if the element i  corresponding to min ( ) i Hb  in Equation ( 10) is a root of c j (x), then we have , 0 j i  S . So the probability of , 0 j i  S can be considered as , j i p in Equation ( 7) and calculated by the mean probabilities of , 0 ( 1) In Equation (11) and the remainder of the paper we use ( ) r P  to depict the probability of the event  .We assume that the transmitter is sending a binary sequence of codewords and using a BPSK modulation, i.e., let +1 and −1 be the modulated symbols of 0 and 1.The modulation operation from coded bit u c to modulated symbol u s can be written as: We assume that the propagation channel is a Binary Symmetry Channel (BSC) which is corrupted by an AWGN with the variance 2 n 0 / 2 N   . For each configuration, the information symbols in the codes are randomly chosen.A soft decision symbol u r at the reception can be expressed as: , 1,2,3,...
where   , , ,... w w w is an AWGN sequence.According to [30], it is easy to prove that the probability , where n e is the number of ones in the e th row of the binary MPCM min ( )

Adaptive Processing of MPCM
Note that the matrix min ( ) i Hb  is not sparse, so a fault decision symbol has negative influences on many syndromes.Considering that the unreliable decision bits have higher probabilities of being error decisions than the reliable decision bits, the authors of [28] proposed an adaptive processing algorithm for the binary MPCM min ( ) i Hb  to reduce the influences of the unreliability decision bits when decoding the RS codes by utilizing the belief propagation (BP) algorithm.In this paper, we adopt that idea on the calculation of , ( 0) . The detailed adaptive processing steps for a given binary MPCM min ( ) i Hb  and a codeword j C with the code length l are listed below: Step ( ) , , , Step 3: Transform * ( ) i r H  by elementary operations to make the last m elements of the first column in * ( ) i r H  has only one "1" at the top, as shown in Equation (17).The first row does not join the elementary transformation.
This transformation limits the influences of the most unreliability decision bit to only one syndrome element, which is ,1 j S in Equation (10).Furthermore, we continue the elementary transformation on * ( ) i r H  to limit the numbers of "1" in the following some columns to one (except the first row), as shown in Equation ( 18): When the elementary transformation is unavailable, stop the operation.The number available operation times equal to the rank of min ( ) i Hb  .Then the last m rows in * ( ) In this case, only the first p rows are non-zeros, where in Equation (11).So we modify Equation (11) and Equation ( Now based on Equation (20), Equation ( 14) and Equation ( 7), we can calculate the RIDEF defined in Equation (3).However, there is still a problem in the algorithm.Note that the element 2 1 1 m    is a root of a codeword polynomial only if the code weight is even.This fact severely affects the assumption of uniformity of p i .As shown in Figure 1, in the case of recognition of BCH (63, 51), when we assume the code length is 31, the value of 31 p is obviously larger than other p values, although the real code length is not 31 and 31 1   is not a root of the code.To avoid that, we drop the calculation of the probability , ( 0) on the element 2 1 1 m    when recognizing the code length.So we modify Equation (3) and Equation (7) to Equation (21) and Equation ( 22) respectively as follows: Considering that not all the rows in the parity check matrix min_ ( )

Summary of the Recognition Steps
According to Equation (20), Equation (21), Equation (22) and Equation ( 23), we propose the code length estimation and blind synchronization in the following steps for the convenience of computer program automatic processing: Step 1: According to some prior information, set the searching range of the degree m, i.e., set the minimal and maximal degree m min and m max .
Step 2: Design a window W which has a length L at least 5 (2 1) max m   , i.e., 5 M  in Equation (22).
Step 3: Full fill the window W with the received soft decision bits.
Step 4: Set the initial degree m = m min .
Step 6: Set the initial synchronization position t at 0, which is the starting position of W.
Step 7: Assume the code length is l and the synchronization position is t and calculate H  .Note that the window W has more than one assumed codewords, we calculate the H  on all the codewords and compute the mean of them as ( , ) H l t  .
Step 8: If t < l, then let t = t + 1 and go back to Step 11: Compare all the calculated ( , ) H l t  , select the maximum one and get the corresponding values of l, t and m as the estimated code length, synchronization position and the degree of the GF of the being recognized codes, respectively.By traversing all the possible l and t, finally we can search out the parameters pair ˆ( , ) l t that maximizes the RIDEF H  .l and ˆ( ) t kl k   are the estimated code length and synchronization positions.

Principles of the Code Roots Recognition
As mentioned in Section 2, for a given valid codeword C j , the elements in A have higher probabilities of being the code roots of C j than the elements in A , where A is the set of the roots of the generator polynomial.So after the code length and synchronization position estimation, we can compare the Log-Likelihood Ratios (LLR) of ( 0) m   and choose the elements which make the LLR of ( 0) be obviously higher as the estimated code roots.Finally, we propose a method to judge whether the element 2 1 1 m    , be a root of the code.
In Equation ( 24), we define the LLR of ( 0) as follows, which is also written as ( ) where: But for a computer, the "previous higher" is difficult to follow.For the realization of the computer automatic recognition of the code roots, we propose the procedure includes the following steps: Step1: Let l be the estimated code length, calculate the LLRs to form a vector: ( ), ( ), , ( ) Step2: Rank the vector l L from the lowest to the highest, in order to form a new vector lR L , and record the indexes.
Step3: Calculate dL, which is the difference of lR L : ( ) Step4: Find the maximum of dL, record the corresponding value of i.
Step5: Select the (i + 1) th to the l th elements in lR L , get their positions in the vector l L and find corresponding GF elements   1 2 , , j j    as the estimated roots.
As an example, we consider a BCH (63, 51) code which is corrupted by an AWGN with SNR E s /N 0 = 5 dB, and the corresponding hard decision BER is 10 −2. 19.The recognizing procedure is shown in Figure 2. as the LLRs of the generator polynomial roots, which are 1  , 3   and their conjugate roots.Up to now, we have estimated the code roots from the set  

Discussion of the Element
, , , But obviously, we have We choose one of its first k rows and its last row to form a new matrix ' H as follows: Then we transform ' H to its binary pattern as follows: We define Step1.Then we re-rank the LLRs and estimate the code roots according to the previous steps.Finally, we can write the generator polynomial based on all of the estimated code roots as: where 1  , 2  , …, p  are the estimated code roots.In the example of the recognition of BCH (63, 51)   code referred previous as shown in Figure 2, we insert L and draw the stems of the LLRs in Figure 2(d).Re-execute the code roots recognition steps, it is easy to verify that the element 2 1 m   is not a root of the code and the case of Figure 1 does not appear in this algorithm.Thus the generator polynomial is as follows:

Primitive Polynomial Recognition
In Section 2 and Section 3, the primitive polynomial of the being recognized code is not considered.But in fact, the corresponding primitive polynomial should be given when discussing an extension field GF(2 m ), because there are more than one primitive polynomials in GF(2 m ) and the calculation rules based on different primitive polynomials are not the same.However, we propose a theorem that a binary cyclic codeword based on a primitive polynomial is also a valid binary cyclic codeword based on another primitive polynomial.According to this, we can choose any one primitive polynomial p(x) randomly and estimate the code length and code roots based on p(x).Then, we can recognize the actual primitive polynomial according to the root properties of the BCH codes.
Theorem 1: A binary cyclic codeword C r , which is encoded based on a primitive polynomial 1 ( ) p x over GF(2 m ), is also a valid binary cyclic codeword based on another primitive polynomial 2 ( ) p x over GF(2 m ) with the same number of code roots.
Proof.The coefficients of a generator polynomial ( ) g x of a binary cyclic code is in GF(2) and can be factored into the product of some minimal polynomials over GF(2): Let GF 1 (2 m ) and GF 2 (2 m ) be extension fields based on two different primitive polynomials p 1 (x) and p 2 (x), respectively, then GF 1 (2 m ) and GF 2 (2 m ) have the same structure.Each minimal polynomial ( ) i m x (1 ) i p   can be factored in the extension fields GF 1 (2 m ) and GF 2 (2 m ) both.We define and  to be the roots of 1 ( ) p x and 2 ( ) p x , respectively.According to Theorem 2.18 in [36], let e1 and e2 be the smallest integers such that Since a minimal polynomial has only one distinct root, then according to Equation (33), we have e1 = e2, i.e., each minimal polynomial has the same number of conjugate roots, even if it is based on different primitive polynomials.Consequently, a codeword, which is based on a primitive polynomial 1 ( ) p x , is also a valid codeword based on any other primitive polynomial 2 ( ) p x , and the number of code roots and error-correcting capabilities are the same.Therefore, when recognizing the parameters of a binary cyclic code, we can just randomly choose a primitive polynomial provisionally.In order to reduce the computational complexity, we recommend choosing the primitive polynomial with the smallest number of terms.
According to the basic character of the BCH codes, a generator polynomial has 2t roots with consecutive degrees (the 2t roots do not form all the code roots, but include all the distinct roots), where t is the correction capability of the codes.In other words, if is a primitive element in GF(2 m ), the generator polynomial g(x) of a BCH code for correcting t errors has  , 2  , 3 ,  …, 2t  as its roots [3]: After the estimation of code roots based on a randomly chosen primitive polynomial p(x) and the estimated degree m, we can calculate the number of roots and the correction capability t.Then, we can traverse all the primitive polynomials over GF (2 m ) and get the one that makes the code roots be in accordant with the character of BCH codes as the primitive polynomial of the being recognized code.
As an example, we still consider the BCH(63, 51) code referred in Section 3. The codewords are encoded based on the primitive polynomial  , 55  , and 47  after the recognition as shown in Figure 3.It is easy to verify that the estimated code roots also form two groups of conjugate roots, thus the error-correction capability t equals two.Now we traverse all the other primitive polynomials and find the one under which the code roots are in accordant with the characters of BCH codes.

Figure 3.
Recognizing the BCH(63, 51) codes using a primitive polynomial different from that of the encoder.

Computational Complexity
In the proposed soft decision recognition algorithm, the most complex computation is the calculation of p i .The major computational consumption appears in Equation (23), which includes the n e th root calculations, productions and tanh function in the real number field.While, the hard decision algorithm only has production and addition calculations over GF (2).However, our proposed algorithm utilizes the soft decision outputs of the channel, which can provide more information about the reliability decision bits, so require very lower calculation times of p j,i than the hard decision one, which can also reduce the total computational complexity in the recognition procedure.

Simulations
The simulation results of the proposed blind recognition algorithm are shown in this section.In the simulations, we assume that the propagation channel is a Binary Symmetry Channel (BSC) which is corrupted by an AWGN with the variance 2 n 0 / 2 N   . For each configuration, the information symbols in the codes are randomly chosen and the modulation mode is BPSK.All the simulations have the same settings of the observation window with length L = 3,000 bits and the searching range of the code length is 7-127.
When applying the algorithm to BCH(63,45) codes, the simulation results of the code length estimation are shown in Figures 4-6.The signal is corrupted by an AWGN with the SNR E s /N 0 = 5 dB.In Figure 4, we draw the stems of p i on different elements i  taken from GF(2 m ) when the code length and synchronization positions are correct.It is shown in Figure 4 that the values of p i on the code roots are obviously higher than those on the other elements.And we also draw the stems on a fault code length and synchronization position in Figure 5. Comparing with Figure 4, the values of p i in Figure 5 is uniform, so the information entropy of p i on correct coding parameters should be lower and the corresponding dispersion entropy function is higher.As shown in Figure 6, we draw the stems of RIDEF on different code length l and coding starting positions t when the start position t = 0 of the observation window is at the fortieth bit of a codeword.In the figure, the value of p i in the case of l = 63 and t = 23 is the highest, thus we consider the parameters l = 63 and t = 23k ( ) k   as the estimated code length and synchronization positions.The result is in accordance with the simulation settings.The performance of the algorithm is affected by the channel quality.In Figure 7, we draw the performance of the proposed algorithm when applied to code length and synchronization positions recognitions for several different binary BCH codes, including the shortened codes.The curves depict the false recognition probabilities (FRP) of the code length and coding starting positions estimations on different SNRs.We also compare the performance of our proposed recognition algorithm with the hard-decision-based RIDERS algorithm proposed in [22][23][24].The PFR of our proposed algorithm fall rapidly when SNR increases, and it is much lower than that of the previous hard decision algorithms on each single SNR value.
After the code length and synchronization position estimation, the generator polynomial can be recognized by searching for the code roots according to the steps proposed in Section 3. Figure 8 shows the performance of the proposed generator polynomial recognition algorithm when applied to several different binary BCH codes, which are BCH(63, 51), BCH(63, 39) and BCH (30,20).The curves show the false recognition probabilities on different noise levels.As E s /N 0 rises, the curves fall rapidly.When E s /N 0 is above 5 dB, no false recognition occurred during our 200,000 instances of simulation.We also compare our proposed algorithm with the previous hard-decision-based recognition algorithms proposed by [22][23][24] in the figure.It shows that the recognition performance is improved obviously in soft decision situations.A gap of 1-2 dB exists between the two groups of curves.

Conclusions
A soft-decision-based blind recognition method for binary BCH codes with BPSK modulations on AWGN channels is proposed aiming at the non-cooperative communications and ACM techniques.The code length estimation and block synchronization are achieved by checking the minimal parity check matrix.After that, the code rate and generator polynomials are reconstructed by searching for the code roots.To the best of our knowledge, this paper is the first publication in literature which introduces an approach for complete-blind recognition of binary BCH codes in soft decision situations.Simulations show that our proposed blind recognition algorithm yields better performance than that of the previous hard-decision-based ones.

Appendix: Proof of the faultiness of the Hypothesis 1
In this Appendix, we present that the Hypothesis 1 proposed in [22][23][24] is not always correct.The proof is shown below: Proof.We can consider a codeword C with length n and the binary pattern of one of the MPCM jl h l n   and l C be the l th element in the vector j h and C and we define the checking indexing set j S for j h and C l as follows: Obviously, when the number of nonzero elements in j S is even, we have: And when the number of nonzero elements in j S is odd, we have: When the code length and synchronization positions are not estimated correctly, the restriction among the elements in C does exist.So the elements in the codewords can be considered to appear randomly.In this case, the probabilities of the number of nonzero elements in j S being odd and even are all about 0.5.When min ( ) i Hb  is full rank, the rows of min ( ) i Hb  is linearly independent, so we can calculate Equation (36) as follows: i Hb  is not full rank, the calculation of Equation ( 36) is not correct.We define the maximum linearly independent vector group MI of the row vectors set as follows: MI is a subset of H and meets the following conditions: (1) The vectors in MI is linearly independent; (2) Any vector in H can be obtained by linear combinations of the vectors in MI.
And it is easy to prove that the number of vectors in MI is the rank of min ( ) so we find that the Hypothesis 1 is not correct.

iH
 corresponding to the element i  in GF(2 m ) as follows: x    , because the symbol is a root of p(x), Other symbols are processed similarly.Finally, we can calculate all the i r H  form a new matrix.We recovery its original column orders and call it min_ ( ) i a Hb  .Because the transformation is elementary, the relationship min_ 0 a j Hb C   , in the hard decision situations still exists if C j is a valid codeword, so we can calculate the probability ,

Figure 1 .
Figure 1.The problem of p 31.

Step 7 ; 9 :
if t = l, then jump to Step 9. Step If l < 2 m − 1, then let l = l + 1 and go back to Step 6; if l = 2 m − 1, then jump to Step 10.Step 10: If m < m max , then let m = m + 1 and go back to Step 5; if m = m max , then jump to Step 11.

Figure 2 .Figure 2a is the original LLRs calculated in Step 1 .
Figure 2. Code roots recognition of BCH (63, 51).(a) Original LLRs.(b) Rank the vector l L to form lR L (c) dL: the difference of lR L (d) Insert   2 1 m L   into l L .

1 1 m
   .The MPCM is an overall-ones vector which provides very little information for the calculation of the LLR.We propose to create a new MPCM for the element2 1

m
simply by the NOT of the minimal check matrix of one of the estimated roots.To get high reliability, we choose the root that has the highest LLR.The parity check matrix of a code, which has k + 1 roots include 2 1 m   , has a form as shown in Equation (27):

_'
bin f H to be any single row of ' bin H except the last row, and _ ' bin l H to be the last row.For each valid codeword C, we have ' 0 the last row of ' bin H are 1, the XOR and NOT operation is equivalent.Therefore, As a result, the NOT of any row in the MPCM of one of the estimated roots is still a valid MPCM when the code has a root 2 1 m   .Based on the new MPCM, we calculate the LLR on 2 1 m   , and insert it into the vector l L referred in respectively, then we have:

Figure 4 .
Figure 4. Values of p i on correct code length and synchronization positions.

Figure 5 .
Figure 5. Values of p i on incorrect code length and synchronization positions.

Figure 7 .
Figure 7. Performances of code length estimations for some binary BCH codes.

Figure 8 .
Figure 8. Performances of code roots estimations for some binary BCH codes.
 is an element in G m .We let c(x) be the codeword polynomial of C.If i is a root of c(x), then we have ( means the productions of all the rows with the codeword C equal to zeros, as shown in Equation (35): we can calculate the probability of i  being the root of c(x), i.e., the probability of min

i
Hb  .According to the condition 2 of the definition of MI, if all the vectors in   in MI, i.e., a maximum linearly independent vector group of the rows of min ( )i Hb  .According to Equation (41), Hypothesis 1 is true only if all the min rank.But unfortunately, this condition cannot always be met.For example, when considering the BCH(63, 51) codes, we have the following results:  with their absolute values to form a matrix * ( ) i Hb  in GF(2).i H . The first six ones and the last six ones are two groups of conjugate roots.Here  is a primitive root in GF(2 6) based on the primitive polynomial 1 ( ) p x , i.e., 