![Page 1: Adaptive Threshold Technique for Bit-Flipping Decoding of Low-Density Parity-Check Codes](https://reader035.vdocuments.us/reader035/viewer/2022073016/575086901a28abf34fc323bc/html5/thumbnails/1.jpg)
IEEE COMMUNICATIONS LETTERS, VOL. 14, NO. 9, SEPTEMBER 2010 857
Adaptive Threshold Technique forBit-Flipping Decoding of Low-Density Parity-Check Codes
Junho Cho, Member, IEEE, and Wonyong Sung, Senior Member, IEEE
AbstractβThe bit-flipping (BF) algorithm for decoding of low-density parity-check (LDPC) codes requires less complex hard-ware than other decoding algorithms, but its error correctingperformance needs to be improved. In this letter, a thresholdadaptation scheme is applied to BF algorithm based decoding ofLDPC codes. Our experiments show that the optimal thresholdvalue for BF depends on the error conditions, and thresholdadjustment during decoding helps to prevent meaningless no-flipping iterations. Based on these statistical observations, theadaptive threshold technique is proposed to pursue both themaximum error correcting capability and the fastest decodingconvergence.
Index TermsβBit-flipping (BF) algorithm, low-density parity-check (LDPC) codes, adaptive threshold.
I. INTRODUCTION
THE bit-flipping (BF) algorithm requires the smallestcomputational complexity among various decoding al-
gorithms for low-density parity-check (LDPC) codes [1], [2].Although the soft-decision decoding schemes such as the sum-product and the min-sum algorithms show much better errorperformance than the BF algorithm, they need soft-decisioninput data as well as much higher decoding complexity toachieve the best error performance [3], [4]. This letter isfocused on maximizing error correcting capability of thesimple BF decoding when hard-decision input data are onlyavailable. Empirical results are presented to show how aflipping threshold affects the error performance of the BF al-gorithm, which then suggest the need of threshold adjustmentduring decoding iterations. We also demonstrate that the slowconvergence problem of a conservative threshold adaptationcan be relieved by finding the optimal initial threshold fromthe empirical data.
II. FLIPPING THRESHOLD OF THE BF ALGORITHM
In the Gallagerβs hard-decision decoding algorithms, a vari-able is flipped whenever π or more parity-check constraintsorthogonal on the variable are violated, where π is a positiveinteger [2]. We thus call π the flipping threshold. Denotingππ£ and ππ the column and row degrees of an LDPC code,respectively, the threshold π can either be fixed at ππ£ β 1(algorithm A) or vary with βππ£
2 β β€ π β€ ππ£ β 1 duringdecoding iterations (algorithm B). In his original work, the
Manuscript received April 13, 2010. The associate editor coordinating thereview of this letter and approving it for publication was M. Lentmaier.
This work was supported in part by the Ministry of Education, Science andTechnology (MEST), Republic of Korea, under the Brain Korea 21 Project,and in part by the National Research Foundation(NRF) grant funded by MEST(No. 20090075770).
The authors are with the School of Electrical Engineering and ComputerScience, Seoul National University, 599 Gwanangno, Gwanak-gu, Seoul, 151-744, Korea (e-mail: [email protected]; [email protected]).
Digital Object Identifier 10.1109/LCOMM.2010.072310.100599
0 10 20 30 40 50 600
1
2
3
4
5x 10
β3
En
p(E
n)
(a) Number of errors = 32
0 10 20 30 40 50 600
1
2
3
4
5x 10
β3
En
p(E
n)
(b) Number of errors = 52
Fig. 1. Pmf of πΈπ for correct (dashed line) and erroneous (solid line)variables when decoding the (4161, 3431) PG-LDPC code.
optimal choice of π at iteration β is obtained by the smallestinteger that satisfies
1β π0π0
β€[1 + (1 β 2πβ)
ππβ1
1β (1 β 2πβ)ππβ1
]2πβππ£+1
, (1)
where π0 and πβ denote the crossover probability of a binarysymmetric channel (BSC) and the bit error probability after theβ-th decoding iteration, respectively. The optimal π is derivedby assuming that the variable and check nodes are independenteach other. This assumption, however, does not hold for the BFalgorithm since the marginalization process of the Gallagerβsalgorithm B, which excludes the messages once generated bya node and then passed back to itself [5], is not generallyemployed in the BF algorithm for simplifying computations.Therefore, (1) is not optimal for the BF algorithm. Finitelengths of the underlying LDPC codes also introduce correla-tion between nodes and break the independence assumption.Another problem is that the choice of π for each iterationβ varies depending on the channel parameter π0. Regardingthe BF decoding, Kou et al. mentioned in [6] that its errorperformance might be improved by using an adaptive choiceof π, but the details were not addressed.
In order to find a good threshold, π, for the BF algorithmregardless of the channel parameter, we first investigate howthe threshold affects the error performance in an empiricalway. A known number of errors are injected into a legitimatecodeword and the number of unsatisfied parity-checks πΈπ
for each variable π is assessed, where correct and erroneousvariables are observed separately. For a non-negative integerπ₯, we make all variables in an π -bit received word areequally likely to be erroneous with the probability π0 = π₯/π .After generating the uniformly-distributed random errors, thereceived word is included in the observation data if the numberof erroneous variables is equal to π₯, but it is abandonedotherwise. In this way, 10,000 sample error patterns areobserved for each π₯. Figure 1 depicts the resulting probabilitymass function (pmf) of πΈπ at the first BF decoding iteration for
1089-7798/10$25.00 cβ 2010 IEEE
![Page 2: Adaptive Threshold Technique for Bit-Flipping Decoding of Low-Density Parity-Check Codes](https://reader035.vdocuments.us/reader035/viewer/2022073016/575086901a28abf34fc323bc/html5/thumbnails/2.jpg)
858 IEEE COMMUNICATIONS LETTERS, VOL. 14, NO. 9, SEPTEMBER 2010
30 40 50 60 7025
35
45
55
Number of errors
Thr
esho
ld
Fig. 2. Range of π with πΊ(π) β₯ 1 (solid line) and the optimal π having thelargest πΊ(π) (circle).
the (65, 65)-regular (4161, 3431) projective geometry (PG)-LDPC code with different numbers of injected errors. The pmfof πΈπ is therefore estimated based on 10,000π β 4.2 Γ 107
variables. Distinguishing the correct and erroneous variablesbased on πΈπ becomes increasingly difficult as the number oferrors increases (compare Fig. 1(a) and (b) for example). Thisindicates that LDPC codes with a large ππ£ may lead to goodBF decoding performance, since πΈπ β [0, ππ£]. It has been alsostated in [7] that the existence of many redundant parity-checkequations (i.e., a large ππ£) can lead to good performance ofBF-based decoding. In this work, therefore, geometric LDPCcodes are used for performance simulations.
III. BF DECODING WITH THRESHOLD ADAPTATION
Let π©π and π©π denote the sets of correct and erroneousvariables, respectively. Then, we can define the flipping gainof a flipping threshold π by
πΊ(π) = β£{π : πΈπ β₯ π and π β π©π}β£β β£{π : πΈπ β₯ π and π β π©π}β£ , (2)
where the first term stands for the gain obtained from bit-flipping of erroneous variables and the second term is the losscaused by bit-flipping of correct variables. For a given numberof errors, πΊ(π) provides an explicit metric for assessing theperformance of π. When a threshold π has πΊ(π) β₯ 1, itis expected that the probability of error decreases after bit-flipping with π. Furthermore, the π yielding the greatest πΊ(π)can be regarded as optimal in the sense that it leads tothe fastest decoding convergence. The range of π producingπΊ(π) β₯ 1 and the optimal πβs for the (4161, 3431) PG-LDPCcode are depicted in Fig. 2, which shows the choice of π shouldvary with the number of errors occurred. Suppose that thereceived word contains 32 errors and π = 41 is used (whichis optimal for the case of 72 errors), then more iterations arerequired to finish the decoding due to the small πΊ(π). On theother hand, if there are 72 errors and π = βππ£
2 β = 33 (which isoptimal for codewords with 32 errors) is used, the bit-flippingwill generate almost one thousand errors. Therefore, applyinga suitable π is greatly important for achieving fast convergenceand good error performance with the BF decoding.
The intermediate bit-flipping behaviors of the BF decodingcan be categorized into two; one results in either increase ordecrease of the number of errors, and the other produces nochange since every πΈπ incidently becomes smaller than π.
Encountering the latter condition, the BF decoding repeatsmeaningless operations until the assigned time is exhausted.A remedy to this situation is lowering π correspondingly.Therefore, the BF decoding can be carried out with theadaptive threshold as follows:Initialization) Set π as the largest value of all optimal πβs.Step 1) Compute the parity-check for every check node.
Step 2) If all parity-checks are zero, stop decoding with theoutput of current decoded word; else if the given iterationlimit is reached, declare a decoding failure and stopdecoding with the output of the initially received word.
Step 3) Compute πΈπ for every variable node by simplycounting the unsatisfied parity-checks associated with π.Record the maximum number πΈmax = maxπ πΈπ.
Step 4) Flip all variables satisfying πΈπ β₯ π. If no flippingoccurs, reduce π to πΈmax and repeat Step 4. Otherwise,repeat from Step 1. If the iteration limit is reached, stopdecoding.
The adaptive threshold scheme maximizes the probabilityof decoding success by maintaining π near πΈmax. It alsoenables fast decoding convergence by setting the initial π asthe optimal value of the correctable worst error conditionrather than the most conservative value ππ£ β 1 used inthe Gallagerβs algorithm A. Such an aggressive initializationbrings a negligible negative effect on the achievable errorperformance as will be shown in Section IV. Meanwhile, incase of the decoding failures, the decoder outputs the initiallyreceived word instead of the decoded word. It is becausethe inappropriate bit-flipping attempts which have lead tothe decoding failure generally cause a disastrous increase oferrors as mentioned before. Note that repeating Step 4 withoutconducting Step 1βΌ3 is also considered as one iteration in ourexperiments.
For LDPC codes with a small ππ£, where there is not enoughroom to adapt π, we conjecture that the probabilistic BF [8]improves the decoding performance with a similar approach.When ππ£ = 3, for example, π = 2 may yield too muchincorrect flips while π = 3 results in too small correct flips;however, since a fractional π such as π = 2.5 is not allowed,the probabilistic BF algorithm flips variables using π = 1, 2,and 3 with the probabilities π1, π2, and π3, respectively, whereπ1 < π2 < π3 β€ 1.
IV. SIMULATION RESULTS
All simulations are performed assuming codewords aretransmitted over an additive white Gaussian noise (AWGN)channel with zero mean and variance π0/2 via binary phase-shift keying (BPSK) signaling. This is equivalent to transmit-ting the codewords over a BSC with π0 = π(
β2/π0).
Figure 3 shows the error performance of the (4161, 3431)PG-LDPC code with the BF decoding as a function of theiteration number. The optimal π fixed for whole decodingiterations is 39 and shows much better performance thanπ = βππ£
2 β = 33. The two adaptive threshold schemes, onestarting at π = ππ£ β 1 = 64 and the other at π = 41(which produces the largest flipping gain at the worst errorcondition), achieve better error performance than the fixedthreshold schemes. Regarding the decoding time, the fixed
![Page 3: Adaptive Threshold Technique for Bit-Flipping Decoding of Low-Density Parity-Check Codes](https://reader035.vdocuments.us/reader035/viewer/2022073016/575086901a28abf34fc323bc/html5/thumbnails/3.jpg)
CHO and SUNG: ADAPTIVE THRESHOLD TECHNIQUE FOR BIT-FLIPPING DECODING OF LOW-DENSITY PARITY-CHECK CODES 859
0 5 10 15 20 25 3010
β6
10β5
10β4
10β3
10β2
10β1
100
Iteration
Fram
e er
ror
rate
b = β‘ dv/2β€ = 33, fixed
b = 39, fixed b = d
v β 1 = 64, adapting
b = 41, adapting
Fig. 3. Evolution of the frame error rate through iterations when πΈπ/π0 =5dB (dashed line) and 5.25dB (solid line).
4 4.25 4.5 4.75 5 5.25 5.510
β9
10β8
10β7
10β6
10β5
10β4
10β3
10β2
10β1
100
Eb/N
0 (dB)
Err
or r
ates
Uncoded BPSK b = β‘ d
v/2β€ = 33, fixed
b = 39, fixed b = 41, adaptingBCH(4095,3375,60)
Fig. 4. Frame (solid line) and bit (dashed line) error rates of the (4161,3431) PG-LDPC code under the various BF decoding schemes. The iterationlimit is set to 20.
πβs of 33 and 39 converge very fast within 10 iterations,whereas the adaptive πβs require more than 20 iterations.By setting the initial π as the optimal value for the worsterror condition, the slow convergence problem of the adaptivescheme can be quite alleviated and as a result the iteration limitcan be determined to a small number with little performanceloss; e.g., to attain the frame error rate (FER) of 10β4 withπΈπ/π0 = 5.25dB, the initial π = 64 and π = 41 require 21 and11 iterations, respectively. The average number of iterationsto reach the decoding success is also much smaller when theinitial π = 41; e.g., when a sufficient iteration limit is givenwith πΈπ/π0 = 5.25dB, the initial π = 64 and π = 41 consume10.3 and 2.1 iterations in average, respectively.
Figure 4 shows the frame and bit error rates (BERs) ofthe (4161, 3431) PG-LDPC code under the BF decoding withvarious flipping thresholds. Also shown are those of the (4095,3375, 60) BCH code under the syndrome decoding, whichhas the comparable codeword length and code rate. All theBF decoding schemes are assigned 20 iterations. The adaptivethreshold scheme achieves approximately 0.11dB signal-to-noise ratio (SNR) gain over the best fixed threshold scheme
3 3.5 4 4.5 5 5.5 610
β9
10β8
10β7
10β6
10β5
10β4
10β3
10β2
10β1
100
Eb/N
0 (dB)
Err
or r
ates
Uncoded BPSK b = β‘ d
v/2β€ = 17, fixed
b = 20, fixed b = 24, adaptingBCH(1023,783,24)
Fig. 5. Frame (solid line) and bit (dashed line) error rates of the (1057, 813)PG-LDPC code under the various BF decoding schemes. The iteration limitis set to 20.
and 0.18dB gain over the syndrome decoding of the equivalentBCH code at the BER of 10β6. Another simulation results forthe (1057, 813) PG-LDPC code are shown in Fig. 5, where theadaptive threshold BF decoding obtains 0.23dB and 0.34dBSNR gains over the fixed threshold scheme and the syndromedecoding of the BCH (1023, 783, 24) code, respectively.
V. CONCLUDING REMARKS
The proposed adaptive threshold technique tries to maxi-mize the number of corrected errors at each decoding iterationby changing the threshold. The simulation results for decodingof geometric LDPC codes show that the proposed methodoutperforms the best fixed threshold BF decoding, and attainsSNR gains of 0.11 βΌ 0.23 dB over the standard BF algorithmwhen the iteration limit is 20. The complexity overhead toimplement the proposed adaptive threshold technique is almostnegligible when compared to the standard BF decoding.
REFERENCES
[1] R. G. Gallager, βLow-density parity-check codes,β IRE Trans. Inf. Theory,vol. IT-8, pp. 2128, Jan. 1962.
[2] ββ, Low-Density Parity-Check Codes. Cambridge, MA: MIT Press,1963.
[3] F. R. Kschischang, B. J. Frey, and H.-A. Loeliger, βFactor graphs andthe sum-product algorithm,β IEEE Trans. Inf. Theory, vol. 47, no. 2, pp.498519, Feb. 2001.
[4] J. Chen, A. Dholakia, E. Eleftheriou, M. P. C. Fossorier, and X.-Y. Hu,βReduced-complexity decoding of LDPC codes,β IEEE Trans. Commun.,vol. 53, no. 8, pp. 12881299, Aug. 2005.
[5] T. J. Richardson and R. L. Urbanke, βThe capacity of low-density parity-check codes under message-passing decoding,β IEEE Trans. Inf. Theory,vol. 47, no. 2, pp. 599618, Feb. 2001.
[6] Y. Kou, S. Lin, and M. P. C. Fossorier, βLow-density parity-check codesbased on finite geometries: a rediscovery and new results,β IEEE Trans.Inf. Theory, vol. 47, no. 7, pp. 27112736, Nov. 2001.
[7] M. P. C. F. R. Palanki and J. S. Yedidia, βIterative decoding of multiple-step majority logic decodable codes,β IEEE Trans. Commun., vol. 55, no.6, pp. 10991102, June 2007.
[8] N. Miladinovic and M. P. C. Fossorier, βImproved bit-flipping decodingof low-density parity-check codes,β IEEE Trans. Inf. Theory, vol. 51, no.4, pp. 15941606, Apr. 2005.