Iterative Decoding of Non-Binary Cyclic Codes Using Minimum- Weight Dual Codewords Jiongyue Xing , Li Chen n School of EIT, Sun Yat-sen University , Guangzhou, China Martin Bossert, Sebastian Bitzer n Institute of CE, Ulm University , Ulm, Germany IEEE International Symposium on Information Theory n 21st – 26th, June, 2020, Los Angeles, California, USA
Outline n Introduction n Shift-Sum Decoding n Iterative Shift-Sum Decoding Algorithms q Hard-decision ISS algorithm q Soft-decision ISS algorithm n Simulation Results n Conclusions 1
I. Introduction n Applications of cyclic codes Eg. Reed-Solomon (RS) and BCH codes q 2
I. Introduction n Cyclic codes Finite field: F q = { σ 0 , σ 1 , …, σ ! " #$ }, its primitive element is α q 𝒟 (2 p ; n , k , d ), p ≤ s q p = 1: 𝒟 is a binary BCH code p = s : 𝒟 is an RS code 1 < p < s : 𝒟 is a non-binary BCH (NB-BCH) code Dual code: 𝒟 ⊥ (2 p ; n , n – k , d ⊥ ) q Let c ( x ) = c 0 + c 1 x + ∙ ∙ ∙ + c n -1 x n -1 ∊ 𝒟 , q sup( c ( x )) = { j | c j ≠ 0, ∀ j } n Cyclically different codewords Let c 1 ( x ), c 2 ( x ) ∊ 𝒟 , if q c 2 ( x ) ≠ α j c 1 ( x ) x - h mod ( x n – 1), ∀ j and ∀ h ∊ sup( c 1 ( x )), they are cyclically different. 3
� I. Introduction n Encoding of cyclic codes Message poly.: f ( x ) = f 0 + f 1 x + ∙ ∙ ∙ + f k -1 x k -1 q Generator poly.: g ( x ) q Codeword: c ( x ) = f ( x ) g ( x ) q RS encoding n 𝒟 (2 s ; n , k , d RS ), d RS = n – k + 1 q , -. #$ ( x − α * ) g RS ( x ) = ∏ */$ n NB-BCH encoding Cyclotomic cosets q K j = { j ・ (2 p ) i mod n , i = 0, 1, …, s p – 1} Let K = ⋃ K j q ( x − α 2 ) g BCH ( x ) = ∏ 2∈5 𝒟 (2 p ; n , k , d BCH ), k = n – deg g BCH ( x ), d BCH is the number of the q consecutive roots over F ! 6 in g BCH ( x ) 4
I. Introduction n Bounded minimum-distance decoding Berlekamp-Massey (BM) algorithm, Euclidean algorithm, etc. q Algebraic list decoding n Guruswami-Sudan (GS) algorithm, Koetter-Vardy (KV) algorithm, q Wu’s decoding, etc. n Reliability based decoding Generalized minimum-distance decoding, Chase decoding, ordered q statistics decoding, etc. n Belief-propagation based decoding Adaptive BP algorithm, multiple-bases BP algorithm, etc. q n Decoding with minimum-weight dual codewords Reed-Muller codes [Santi_ISIT2018] q BCH codes [Bossert_SCC2019] q 5
II. Shift-Sum Decoding n Cyclic convolution For all c ( x ) ∊ 𝒟 and all b ( x ) ∊ 𝒟 ⊥ q c ( x ) b ( x ) = 0 mod ( x n – 1) n Minimum-weight dual codeword (MWDC) b ( x ) = β 1 x b 1 + β 2 x b 2 + ∙ ∙ ∙ + β d ⊥ x b d ⊥ n Channel Error poly.: e ( x ) = ε 1 x e 1 + ε 2 x e 2 + ∙ ∙ ∙ + ε τ x e τ q Received poly.: r ( x ) = c ( x ) + e ( x ) q Check poly.: w ( x ) = r ( x ) b ( x ) = c ( x ) b ( x ) + e ( x ) b ( x ) q = e ( x ) b ( x ) mod ( x n – 1) 6
II. Shift-Sum Decoding With the choice of b 1 = 0, β 1 = 1 n w ( x ) = e ( x ) b ( x ) mod ( x n – 1) ⊥ x b d ⊥ e ( x ) mod ( x n – 1) = e ( x ) + β 2 x b 2 e ( x ) + ⋯ + β d = ε 1 x e 1 + ε 2 x e 2 + ⋯ + ε τ x e τ + β 2 ε 1 x e 1 + b 2 + β 2 ε 2 x e 2 + b 2 + ⋯ + β 2 ε τ x e τ + b 2 + ⋮ ⊥ ε 1 x e 1 + b d ⊥ + β d ⊥ ε 2 x e 2 + b d ⊥ + ⋯ + β d β d ⊥ ε τ x e τ + b d ⊥ !! All nonzero coefficients of w ( x ) are errors or shifted scalar errors !! Eg., shift w ( x ) by q w ( x ) = e ( x ) + β 7 β d x -b 1 x b d ⊥ – b 1 e ( x ) mod ( x n – 1) ⊥ β 8 x b 2 – b 1 e ( x ) + ⋯ + β 1 β 1 Use d ⊥ shifts q x -b h w ( x ) mod ( x n – 1), where h ∊ {1, 2, …, d ⊥ } β h 7
� � II. Shift-Sum Decoding Use L cyclically different MWDC q (:) x b 1 + β ! (:) x b 2 + ⋯ + β (:) x b d ⊥ , 𝑚 = 1, 2, …, L b ( 𝑚 ) ( x )= β $ d ⊥ Calculate w ( 𝑚 ) ( x ) = r ( x ) b ( 𝑚 ) ( x ) mod ( x n – 1) q (:) ( x ), where ℎ ∊ {1, 2, …, d ⊥ } Use d ⊥ cyclic shifts of w ; q (:) ( x ) Coefficients of w ; q (:) = $ (:) 𝑠 *D;#B EFG I (@) ∑ w ;,* β B B∈JKL(M @ (N)) β ? Indicator function q (:) = 𝜏 2 𝑈 𝑚, 𝑗, 𝑘, ℎ = R 1, if w ;,* 0, otherwise Reliability measure q ` 𝜚 2,* = ∑ ∑ 𝑈(𝑚, 𝑗, 𝑘, ℎ) ;∈JKL(M @ (N)) :/$ 8
II. Shift-Sum Decoding Example: (7, 3) RS code defined over F 8 n Codeword c ( x ) = 5 + 6 x + 6 x 2 + 3 x 3 + 5 x 5 + 3 x 6 Received r ( x ) = 5 + 7 x + 6 x 2 + 3 x 3 + 3 x 6 Cyclically different minimum-weight dual codewords b (1) ( x ) = 1 + 2 x + 7 x 2 + 4 x 6 0 1 b (2) ( x ) = 1 + x + x 3 + x 6 (:) ( x ) = x b? 2 w ; (@) r ( x ) b ( 𝑚 ) ( x ) β ? 3 b (3) ( x ) = 1 + 4 x 2 + 7 x 3 + 2 x 6 4 b (4) ( x ) = 1 + 4 x + 6 x 2 + 3 x 5 5 6 b (5) ( x ) = 1 + 3 x 2 + 7 x 4 + 5 x 6 7 Error poly. e ( x ) = x + 5 x 5 a ( x ) = r ( x ) – e ( x ) = 5 + 6 x + 6 x 2 + 3 x 3 + 5 x 5 + 3 x 6 Update c F 8 is an extension field of F 2 , defined by p ( x ) = x 3 + x + 1 • 9 • In F 8 , { σ 0 , σ 1 , σ 2 , σ 3 , σ 4 , σ 5 , σ 6 , σ 7 } = {0, 1, 2, 4, 3, 6, 7, 5}
� III. Iterative Shift-Sum Decoding Algorithms n Hard-decision iterative shift-sum (HISS) algorithm Sort 𝜚 c,* in an ascending order as q 𝜚 c,* d (8) < 𝜚 c,* 8 (8) < ⋯ < 𝜚 c,* gb8 (8) ($) } Let 𝒦 ($) = {𝑘 c ($) , 𝑘 $ ($) , … , 𝑘 k#$ Let 𝜔 * = max{𝜚 2,* |𝑗 ≠ 0} and 𝑓̂ * is the corresponding field elements. q Sort 𝜔 * in a descending order as 𝜔 * d (7) < 𝜔 * 8 (7) < ⋯ < 𝜔 * gb8 (7) (!) } Let 𝒦 (!) = {𝑘 c (!) , 𝑘 $ (!) , … , 𝑘 k#$ Updated positions set 𝒦 = 𝒦 ($) ∩ 𝒦 (!) q x * Updated polynomial 𝑓̂ x = ∑ 𝑓̂ * q *∈𝒦 Refine polynomial r ( x ) ← r ( x ) – 𝑓̂ x q If r ( x ) ∊ 𝒟 (2 p ; n , k , d ), output r ( x ). Otherwise, recalculate 𝜚 2,* q 10
III. Iterative Shift-Sum Decoding Algorithms n Reliability matrix r 0 r 1 r 2 r 3 r 4 r 5 r 6 0.02 0.00 0.01 0.01 0.71 0.56 0.01 0 0.02 0.10 0.02 0.11 0.05 0.02 0.08 1 0.01 0.05 0.01 0.05 0.03 0.01 0.29 2 0.00 0.03 0.11 0.68 0.09 0.00 0.46 3 Π = 0.12 0.02 0.02 0.00 0.00 0.38 0.11 4 0.80 0.01 0.00 0.10 0.10 0.00 0.01 5 0.00 0.05 0.83 0.03 0.00 0.02 0.01 6 0.30 0.74 0.00 0.02 0.02 0.01 0.03 7 Hard-decision 5 7 6 3 0 0 3 Reliability 4.00 2.85 4.88 2.13 2.45 1.27 0.85 n Reliability of received symbol r j max{𝜌 2,* |∀𝑗} 𝛿 * = 1 − max{𝜌 2,* |∀𝑗} 11
� � � III. Iterative Shift-Sum Decoding Algorithms n Soft-decision iterative shift-sum (SISS) algorithm (:) = $ (:) 𝑠 *D;#B EFG I (@) ∑ Coefficient w ;,* β B q B∈JKL(M @ (N)) β ? (:) Reliability measure for w ;,* q (:) = min{𝛿 *D;#B EFG I |𝑤 ∈ sup 𝑐 𝑦 𝜊 ;,* and 𝑤 ≠ ℎ} Indicator function q (:) = 𝜏 2 (:) , if w ;,* 𝑈 𝑚, 𝑗, 𝑘, ℎ = R𝜊 ;,* 0 , otherwise Reliability measure q ` 𝜚 2,* = ∑ ∑ 𝑈(𝑚, 𝑗, 𝑘, ℎ) ;∈JKL(M @ (N)) :/$ Determine 𝒦 = 𝒦 ($) ∩ 𝒦 (!) and 𝑓̂ 𝑦 = ∑ 𝑦 * 𝑓̂ * q *∈𝒦 Refine r ( x ) = r ( x ) – 𝑓̂ 𝑦 . If r ( x ) is not a valid codeword, continue the q decoding 12
III. Iterative Shift-Sum Decoding Algorithms Example: (7, 3) RS code defined over F 8 n Codeword c ( x ) = 5 + 6 x + 6 x 2 + 3 x 3 + 5 x 5 + 3 x 6 Received r ( x ) = 5 + 7 x + 6 x 2 + 3 x 3 + 3 x 6 Symbols reliability: 4.00, 2.85, 4.88, 2.13, 2.45, 1.27, 0.85 0 5.95 1.27 4.68 5.00 5.95 2.45 8.84 1 3.39 13.94 1.70 2.12 0.85 0.85 8.39 2 2.12 1.27 3.83 2.12 3.40 0.85 1.27 3 4.25 0.85 1.27 0.85 2.98 3.30 3.40 4 1.27 2.54 6.26 6.26 2.97 4.98 4.12 5 1.70 2.12 2.12 3.70 3.70 13.94 2.54 6 2.13 2.12 4.25 1.70 3.39 2.13 3.72 7 4.15 0.85 0.85 4.57 2.12 2.98 3.40 Error poly. e ( x ) = x + 5 x 5 a ( x ) = r ( x ) – e ( x ) = 5 + 6 x + 6 x 2 + 3 x 3 + 5 x 5 + 3 x 6 Update c 13
IV. Simulation Results n 𝒟 (16; 15, 5, 11) RS code, QSC, L = 335, d ⊥ = 6 € • • 𝜍 • 1 − 𝜍 I#• I I WER( 𝜍 ) = ∑ •/$ ‚ • 1.E-2 1.E-3 1.E-4 1.E-5 WER 1.E-6 1.E-7 BM 1.E-8 GS HISS (10) 1.E-9 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 ρ 14
IV. Simulation Results n 𝒟 (4; 63, 27, 21) NB-BCH code, QSC, L = 183, d ⊥ = 14 € • • 𝜍 • 1 − 𝜍 I#• I I WER( 𝜍 ) = ∑ •/$ ‚ • 1.E-1 1.E-2 1.E-3 1.E-4 WER 1.E-5 1.E-6 1.E-7 BM 1.E-8 HISS (10) 1.E-9 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 ρ 15
IV. Simulation Results n 𝒟 (16; 15, 5, 11) RS code, AWGN, L = 335, d ⊥ = 6 1.E+00 BM KV ( 𝑚 = 4) KV ( 𝑚 = 8) MBBP (10) 1.E-01 HISS (3) HISS (5) HISS (10) SISS (3) SISS (5) SISS (10) 1.E-02 MLLB MLUB WER 1.E-03 1.E-04 1.E-05 2 3 4 5 6 7 8 9 10 SNR (dB) 16
IV. Simulation Results n 𝒟 (16; 15, 9, 7) RS code, AWGN, L = 201, d ⊥ = 10 1.E+00 BM / GS KV ( 𝑚 = 4) 1.E-01 KV ( 𝑚 = 8) HISS (3) 1.E-02 SISS (3) WER MLLB 1.E-03 MLUB 1.E-04 1.E-05 3 4 5 6 7 8 SNR (dB) 17
IV. Simulation Results n 𝒟 (4; 63, 27, 21) NB-BCH code, AWGN, L = 183, d ⊥ = 14 1.E+00 BM HISS (5) 1.E-01 HISS (10) HISS (20) SISS (5) 1.E-02 SISS (10) WER SISS (20) MBBP (10) 1.E-03 1.E-04 1.E-05 2 3 4 5 6 7 8 SNR (dB) 18
Recommend
More recommend