A Surey on Binary Message LDPC decoder Emmanuel Boutillon *, Chris Winstead * Uniersité de Bretagne Sud Utah State Uniersity Noember the 4 th, 204
Outline Classifications of BM LDPC decoder State of the art Recent results Conclusions
Outline Classifications of BM LDPC decoder State of the art Recent results Conclusions
Binary message LDPC decoder LLR from channel y Q y bits HARD DECISION Q y = SOFT DECISION Q y = Q M = Gallager A,B Binary message + Q M bits Q M FAID BP, Min-Sum Q y bits Performance Complexity
Notations for BM LDPC decoder We assume a BPSK modulation: mi c j t j y j t j + w j Encoder BPSK decoder w j = x j Bit c = 0 is associated to t = + Bit c = is associated to t = - x j is the estimated decoded alue of t j. The first estimate of x is the sign of y: x (0) = sign(y).
LDPC representation y y2 y3 y4 Variable node = 2 3 4 = = = Check node c c2 + + x c S c C() set of check nodes connected to ariable. V (c) set of ariable node connected to check node c. x c Binary message (- or ) from ariable node to check node c S c = x ' V ( c) ' c Note: since message are binary: syndrome of check node c ( if 0K, - if NOK) x c = x csc = x ' c ' V ( c) /
Memoryless State ariable In a memoryless node, the output messages depend only on the current input messages. In a State-ariable node, the output message depend also from an internal state State (memory effect). For example, Self Corrected Min-Sum is an algorithm where the check node posses an internal ariable (the sign of the messages of the preious iteration).
Extrinsic/Broadcast messages Check->ariable y = S c0 S c + + + S c 2 x Extrinsic messages y = c 0 x c c 2 + + + x Broadcast message y = x + + + x x c0 = c = c = x 2 f ( y, S f ( y, S c c f ( y, S 0 c, S 0, S c c, S 2 2 c, State), State), State) x = f ( y, S c 0, S c, S c 2, State) Note: check node can send syndrome (broadcast) or Both are equialent (implementation detail). xc messages.
Deterministic/ Non-Deterministic Deterministic: the decoded output is only function of the receied message. Non-Deterministic: some randomness is introduced in the decoding process: the decoded output become a random process.
Classification of BM-LDPC decoder Density eolution is feasable Memoryless State ariable Extrinsic Broadcast Non-D Deterministic Non-D We can construct a grid to classify the algorithms => may gie some ideas.
Outline Classifications of BM LDPC decoder State of the art Recent results Conclusions
Stochastic decoder Memoryless State ariable Extrinsic BP STOCH. Broadcast Non-D Deterministic Non-D
Stochastic decoder Based on the Beliee Propagation algorithm with probability encoded by a random binary stream. Principle: P(x=) the probability of a random ariable x to be is represented by a random binary stream, where the probability to hae one is exactly P(x=). For example X= 0000000000000000000000000000 is an alternatie (an redundant) representation of P(x=)=0.2. Arithmetic is triial with this representation. P(x 0 =) P(x =) P(x 2 =) X 0 X X 2
Check node stochastic architecture Check node equation in probability domain (BP) P( x 0 c P( x = ) c = ) P( x = c 2 ) P( x c 2 + = ) = P( x c = ) P( x c = 0) + P( x c = 0) P( x 0 0 c = ) Check node computation in stochastic domain: a simple XOR. X 0 c X c X c = X c X 2 0 c
Variable node stochastic architecture Variable node equation in probability domain (BP) P0 = P( x c = ) 0 P P( = = x c = P2 = P( x c = ) ) 2 P 2 = ( P 0 P 0 P )( P ) + P 0 P Variable node computation in stochastic domain: X c X c0 0 0 X P 2 P2 = P0 P + (( P0 ) P + P0 ( P )) P2 P2 = P0 P + ( P0 P ( P0 )( P )) P 0 = P0 P ( P0 P + ( P0 )( P )) P2 c 2 2 P 2
Variable node stochastic architecture To aoid deadlock cycle in the graph X c X c0 0 0 P 2 X P 2 c 2 Is replaced by (edge memory) X c X c0 WE 0 FIFO (6-32 bits) X P 2 c 2 Random read
References on Stochastic LDPC dec. [] Rapley, A.; Gaudet, V.; Winstead, C., "On the simulation of stochastic iteratie decoder architectures," Canadian Conference on ECE, 2005., ol., no., pp.868,87, -4 May 2005 [2] Tehrani, S.S.; Gross, W.J.; Mannor, S., "Stochastic decoding of LDPC codes," Communications Letters, IEEE, ol.0, no.0, pp.76,78, Oct. 2006 [3] Djordjeic, I.B et al., "LDPC codes and stochastic decoding for beyond 00 Gb/s optical transmission," Optical Communication, 2008. ECOC 2008. 34th European Conference on, ol., no., pp.,2, 2-25 Sept. 2008 [4] Tehrani, S.S. et al., "Majority-Based Tracking Forecast Memories for Stochastic LDPC Decoding," Signal Processing, IEEE Transactions on, ol.58, no.9, pp.4883,4896, Sept. 200 [6] Onizawa, N. et al., "Clockless Stochastic Decoding of Low-Density Parity-Check Codes," Signal Processing Systems (SiPS), 202 IEEE Workshop on, ol., no., pp.43,48, 7-9 Oct. 202 [7] Leduc-Primeau, Francois; Hemati, Saied; Mannor, Shie; Gross, Warren J., "Relaxed Half-Stochastic Belief Propagation," Communications, IEEE Transactions on, ol.6, no.5, pp.648,659, May 203 [8] Lee, X.-R. et al., "A 7.92 Gb/s 437.2 mw Stochastic LDPC Decoder Chip for IEEE 802.5.3c Applications," IEEE Trans. On Circuits and Systems I: Regular Papers, ol.pp, no.99, pp.,0, 204.
Bit flipping algorithm (BFA) Memoryless State ariable Extrinsic STOCH. Broadcast BPA Non-D Deterministic Non-D
Principle of Bit-Flipping algorithm First step: initialize local decision x (0) with sign(y). While there are still syndromes equal to -, or while not reaching the maximum number of iteration it max do ) Variable nodes broadcast their alues to the check nodes 2) Check node broadcast their syndrome alues. Then, ariable nodes decide to flip (or not) the local decision. Output the estimated alue x. y ( i) x 0 = + (i) x ( i) x BFA differs by the decision rules 2 ( i) S c 0 = + y (i) x ( i) S c ( i) S c 2 ( i+ ) ( i) x x = x ( i+ ) ( i) = x
Gradient Bit Flipping Algorithm Maximum Likelihood decoding N = arg max x j= If X belongs to the code C, then, all syndromes are +, thus: X j y j, x C X N M = arg max x + j y j S j= i= i, x C Decoding method: when x is not a codeword, try to flip bits of x to maximize objectie function O. O = N x y + M j j j= i= S i
Gradient Bit Flipping Algorithm The dependence of the objectie function on ariable x is: If then, it worth flipping bit x j to increase O. + = ) ( ' ' C c c S y x dx do < 0 = dx do E 0 ) ( ' ) ( ' ) ( ) ( < + = C c i c i i S y x E ) ( ' ) ( ' ) ( c V i i S x = 0 ) ( ' ) ( ' ) ( ) ( > + = + + + C c i c i i S y x E ) ( ) ( ' ) ( ' ) ( i c V i i S x S = = + + ) ( ) ( i i x x = + ) ( ) ( i i x x = +
Gradient Bit Flipping Algorithm Seeral update rules Single bit flipping: at each iteration, flip the bit with the smallest score E. Multiple bit flipping: at each iteration, flip the bit if E < threshold. Possibility to adapt the threshold with the iterations In terms of implementation, GBDA gies ery low complexity hardware. Possibility of parallel implementation with tenth of Gbit/s throughput. Drawback: GBDA is easily stuck in trapping sets, giing medium performance.
References on BFA [] Miladinoic, N.; Fossorier, M.P.C., "Improed bit flipping decoding of low-density parity check codes," ISIT 2002, ol., no., pp.229, 2002 [2] Miladinoic, N.; Fossorier, M.P.C., "Improed bit-flipping decoding of low-density parity-check codes," Information Theory, IEEE Transactions on, ol.5, no.4, pp.594,606, April 2005 [3] Xiaofu Wu; Chunming Zhao; Xiaohu You, "Parallel Weighted Bit-Flipping Decoding," Communications Letters, IEEE, ol., no.8, pp.67,673, August 2007 [4] Xiaofu Wu; Cong Ling; Ming Jiang; Enyang Xu; Chunming Zhao; Xiaohu You, "New insights into weighted bit-flipping decoding," IEEE Trans. On Communication, ol.57, no.8, pp.277,280, Aug. 2009 [5] Junho Cho; Wonyong Sung, "Adaptie Threshold Technique for Bit-Flipping Decoding of Low- Density Parity-Check Codes," Communications Letters, IEEE, ol.4, no.9, pp.857,859, September 200 [6] Catala-Perez, Joan-Marc et al., "Reliability-based iteratie decoding algorithm for LDPC codes with low ariable-node degree," Communications Letters, IEEE, ol.pp, no.99, pp.,, 204
Differential Decoding with Binary Message Passing Memoryless State ariable Extrinsic DD-BMP STOCH. Broadcast BPA Non-D Deterministic Non-D [] Janulewicz, E.; Banihashemi, A.H., "Performance Analysis of Iteratie Decoding Algorithms with Memory oer Memoryless Channels," IEEE. Trans. On Com., ol.60, no.2, pp.3556,3566, December 202 [2] Cushon, K.; Hemati, S.; Leroux, C.; Mannor, S.; Gross, W.J., "High-Throughput Energy-Efficient LDPC Decoders Using Differential Binary Message Passing," Signal Processing, IEEE Transactions on, ol.62, no.3, pp.69,63, Feb., 204
Differential Decoding with Binary Message Passing Use extrinsic principle ; track the long term tendency. sign( y ) Maj. ( i+) x ( i) xc sign ( i+ ) x c ( i) xc 2 sign ( i+ ) x c 2 ( i) xc 3 ( i) x c ' c' V ( c)\ E ( i+ ) c' sign ( i) = Ec' ( i) + xc' c' V ( c)\ ( i+ ) x c (0) c' 3 E = [] Mobini, N.; Banihashemi, A.H.; Hemati, S., "A Differential Binary Message-Passing LDPC Decoder," Global Telecommunications Conference, 2007. GLOBECOM '07. IEEE, ol., no., pp.56,565, 26-30 No. 2007 [2] Cushon, K.; Hemati, S.; Leroux, C.; Mannor, S.; Gross, W.J., "High-Throughput Energy- Efficient LDPC Decoders Using Differential Binary Message Passing," Signal Processing, IEEE Transactions on, ol.62, no.3, pp.69,63, Feb., 204. y
Outline Classifications of BM LDPC decoder State of the art Recent results Conclusions
Noisy Gradient Decent Bit Flipping Decoder Memoryless State ariable Extrinsic DD-BMP STOCH. Broadcast BFA NGDBFD Non-D Deterministic Non-D [] Sundararajan, G.; Winstead, C.; Boutillon, E., "Noisy Gradient Descent Bit-Flip Decoding for LDPC Codes," Communications, IEEE Transactions on, ol.62, no.0, pp.3385,3400, Oct. 204
GBFA with noise to escape local minima.
Optimal injection of noise w j t j y + j = t j w j x j decoder w ( ) j ω j t j y j ( j ) ω ( j ) y It n Injected noise samples are independant ( j ) ω ( j 2) y (i) y j It n 2 It n i x j Variance of channel noise and ariance of «injected» noise are equal to obtain best performance.
Very efficient hardware implementation
Repeated decoding NGDBF is non-deterministic: improe performance by repeatedly decoding failed frames until success (up to a maximum of Φ phases).
Application to 0GBaseT standard [] Zhang, Z. et al. An Efficient 0GBASE-T Ethernet LDPC Decoder Design With Low Error Floors. In: IEEE J. Solid-State Circ. 45, pp. 843 855.
Comparison in aerage clock cycles For low BER, NGDBF becomes more competitie than OMS
Locally Maximum-Likelihood Binary Message Memoryless State ariable Extrinsic LMLBM DD-BMP STOCH. Broadcast BFA NGDBFD Non-D Deterministic Non-D [] Winstead, C.; Boutillon, E., "Decoding LDPC Codes with Locally Maximum-Likelihood Binary Messages," Communications Letters, IEEE, ol.pp, no.99, pp.,
Principle of Density Eolution of LMLBM Knowing the quantization rule and the ariance of the noise, we can compute the probabilities P ( y / x = + ) and P( y / x = ) Knowing the input error probability node degree, we can compute (0) P c (0) Pc of first message and the check From P we can compute P ( S = a / x = + ) and P( S = a / x = ) With (0) c (0) c ( 0) = c' and a { d c, d c 2, K, d c } S c x ' V ( c)\ c (0) c Thus, knowing the obsered a and y alues, the Local Maximum Likelihood decision is: () x = arg max c { P( a / x) + P( y / x), x {, + } We can deduce () P c and iterate the process.
Density eolution result
Simulation results N=4000, (4,8), it max =30 (+0 Gallager A iterations), N=4376, (4,62), it max =50
Natural future extension Add some «noise» in LMLBM, generalizing the idea of [] Memoryless State ariable Extrinsic NLMLBM LMLBM DD-BMP STOCH. Broadcast BFA NGDBFD Non-D Deterministic Non-D [] Miladinoic N., Fossorier M., Improed Bit-Flipping Decoding of Low-Density Parity-Check Codes, IEEE Trans. On Inf. Theory, ol. 5, n. 4, APRIL 2005
Outline Classifications of BM LDPC decoder State of the art Recent results Conclusions
Conclusion Far from exhaustie surey of the state of the art There is still «terra incognita» in the table, possible mixt of algorithm Memoryless State ariable Extrinsic? LMLBM DD-BMP STOCH. Broadcast?? BFA NGDBFD Non-D Deterministic Non-D Already some hardware for seeral tenth of Giga bit decoders.
Questions?