1089-7798 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/LCOMM.2017.2720165, IEEE Communications Letters IEEE COMMUNICATIONS LETTERS 1 Two-Side State-Aided Bit-Flipping Decoding of Generalized Low Density Parity Check Codes Sherif Elsanadily, Osama Elghandour , and Ashraf Mahran Abstract—In this paper, a modified Bit-Flipping (BF) decoding algorithm is proposed for Hard-Decoding of Generalized Low- Density Parity-Check (GLDPC) codes over binary channels. This approach introduces an extra bit between the variable nodes (VNs) and constraint nodes (CNs) representing the decision reliability of each node. The local decoding failure is also analyzed to provide a reasonable treatment for the most of its causes. The approach is not in the direction of constructing codes with minimum trapping sets but to reduce their effect in the decoder at a cost of little increase in the resources. The algorithm, which is called Two-Side State-Aided Bit-Flipping (TSSA-BF), is shown by simulations to outperform previous BF algorithms in terms of error performance. Index Terms—Bit-flipping, Generalized LDPC codes, iterative decoding. I. I NTRODUCTION G ENERALIZED LDPC (GLDPC) codes were first in- troduced by Tanner [1] in 1981 as a generalization of Gallager LDPC codes [2]. The long LDPC codes are shown to outperform the Turbo codes [3] at rates close to capacity on various channels by using a large random and sparse parity check matrix H. The H matrix is represented by a bipartite graph which contains two groups of nodes, the symbol nodes (variable nodes) and constraint single parity check nodes (SPC). Tanner generalized the LDPC codes by replacing the SPC constraint nodes with error-correcting block codes (subcodes) [1]. The GLDPC codes were found to compare well with different capacity-approach codes. GLDPC codes with Hamming subcodes were investigated in [4], [5]. They showed that Hamming-based GLDPC codes have very large minimum Hamming distance and good performance that is close to Shannons limit. The selection of code length and rate of constituent codes (such as extended-Hamming) gives the GLDPC an additional advantage as a length-compatible code with flexible rates. Therefore it can be used in many applications such as digital audio and TV broadcasting, high speed transmission and deep space communications. Although applying the Soft-Decision Decoding (SDD) to GLDPC, such as Belief Propagation (BP) algorithms, provides very good performance, the amount of real calculations can result in improper implementation complexity. In contrast, the Hard-Decision Decoding (HDD), such as Bit Flipping (BF) algorithm, has a lower complexity but poorer performance. The BF algorithm is first introduced by Gallager for LDPC S. Elsanadily and O. Elghandour are with Department of Communications Engineering, Helwan University, Cairo, Egypt. A.Mahran is with the Avionics Department, Military Technical College, Cairo, Egypt (e-mail: a.mahran@ieee.org). codes [2], then modified and hybrid versions were proposed over AWGN channel based on exploiting the soft input in- formation which exhibits a little increase in implementation complexity [6], [7], [8]. These algorithms have lacked the fast convergence where only a single bit flipping occurs in each iteration. The Parallel WBF [9] was presented which enabled multiple bits flipping in the same iteration. Another research approach for improving the performance of LDPC using the BF algorithm is by introducing an ad- ditional bit that represents the state of the check nodes and passes this information to the variable node [10]. In [11], a multi-threshold BF algorithm was proposed as it classifies the received symbols, based on their reliabilities, into multiple groups by using multiple thresholds. The literature reveals that while the concept of using addi- tional information in BF algorithms has been used extensively for LDPC decoding; only limited number of researches has applied it in GLDPC. Among these researches was the Weighted BF Voting (WBFV) algorithm that finds the maximum vote (weight) at each iteration [12]. Although the simple Hamming subcodes are employed, searching the maximum weight in a long received codeword can result in considerable latency for large number of iterations. In [13], the BCH-based GLDPC was decoded by a simple and compact rule which allows multiplebit flipping in the same iteration. The algorithm exhibits a good performance with lesser number of iterations but at the cost of added algebraic decoding complexity of BCH subcodes. In this work, a novel HDD algorithm based on BF algo- rithm is proposed. The principle idea is based on exploiting the various decoding states of the subcode. As a result, an additional information, that interprets the decoding state into a reliability to be used for further iterations, is calculated. The additional information, represented by an extra bit, is added in both sides (variable nodes and check nodes). II. WBF DECODING OF GLDPC Consider the GLDPC with 1B-construction [12], let us define the (N, J, n) GLDPC code constructed from M by N sparse matrix with row weight n and column weight J. Using the ext-Hamming subcode (n,k,4), the GLDPC is represented by bipartite graph with N symbol nodes (VNs) and M Hamming generalized check nodes (GCNs) as M = N·J n as illustrated in Fig. 1. The code overall rate R is calculated by R ≥ 1 - J (1 - r c ) where r c = k n is the subcode rate where J must be small to have higher overall code rates.