A Study of Linear Error Correcting Codes
Total Page:16
File Type:pdf, Size:1020Kb
University of Plymouth PEARL https://pearl.plymouth.ac.uk 04 University of Plymouth Research Theses 01 Research Theses Main Collection 2007 A STUDY OF LINEAR ERROR CORRECTING CODES TJHAI, CEN JUNG http://hdl.handle.net/10026.1/1624 University of Plymouth All content in PEARL is protected by copyright law. Author manuscripts are made available in accordance with publisher policies. Please cite only the published version using the details provided on the item record or document. In the absence of an open licence (e.g. Creative Commons), permissions for further reuse of content should be sought from the publisher or author. A STUDY OF LINEAR ERROR CORRECTING CODES C. J., Tjhai Ph.D. September 2007 - Un-.vers.ty^o^H.y...ou-m Copyright © 2007 Cen Jung Tjhai This copy of the thesis has been supplied on condition that anyone who consults it is understood to recognise that its copyright rests with its author and that no quotation from the thesis and no information derived from it may be pubHshed without author's prior consent. A STUDY OF LINEAR ERROR CORRECTING CODES A thesis submitted to the University of Plymouth in partial fulfillment of the requirements for the degree of Doctor of Philosophy Cen Jung Tjhai September 2007 School of Computing, Communications and Electronics " *^ * Faculty of Technology University of Plymouth, UK A Study of Linear Error Correcting Codes Cen Jung Tjhai Abstract Since Shannon's ground-breaking work in 1948, there have been two main development streams of channel coding in approaching the limit of communication channels, namely classical coding theory which aims at designing codes with large minimum Hamming distance and probabilistic coding which places the emphasis on low complexity probabilistic decoding using long codes built from simple constituent codes. This work presents some further investigations in these two channel coding development streams. Low-density parity-check (LDPC) codes form a class of capacity-approaching codes with sparse parity-check matrix and low-complexity decoder Two novel methods of constructing algebraic bi• nary LDPC codes are presented. These methods are based on the theory of cyclotomic cosets, idem- potents and Mattson-Solomon polynomials, and are complementary to each other. The two methods generate in addition to some new cyclic iteratively decodable codes, the well-known Euclidean and projective geometry codes. Their extension to non binary fields is shown to be straightforward. These algebraic cyclic LDPC codes, for short block lengths, converge considerably well under itera• tive decoding. It is also shown that for some of these codes, maximum likelihood performance may be achieved by a modified belief propagation decoder which uses a different subset of 7^ codewords of the dual code for each iteration. Following a property of the revolving-door combination generator, multi-threaded minimum Hamming distance computation algorithms are developed. Using these algorithms, the previously unknown, minimum Hamming distance of the quadratic residue code for prime 199 has been eval• uated. In addition, the highest minimum Hamming distance attainable by all binary cyclic codes of odd lengths from 129 to 189 has been determined, and as many as 901 new binary linear codes which have higher minimum Hamming distance than the previously considered best known linear code have been found. It is shown that by exploiting the structure of circulant matrices, the number of codewords required, to compute the minimum Hamming distance and the number of codewords of a given Hamming weight of binary double-circulant codes based on primes, may be reduced. A means of independently verifying the exhaustively computed number of codewords of a given Hamming weight of these double-circulant codes is developed and in coiyunction with this, it is proved that some published results are incorrect and the correct weight spectra are presented. Moreover, it is shown that it is possible to estimate the minimum Hamming distance of this family of prime-based double-circulant codes. It is shown that linear codes may be efficiently decoded using the incremental correlation Dorsch algorithm. By extending this algorithm, a list decoder is derived and a novel, CRC-less error detec• tion mechanism that offers much better throughput and performance than the conventional ORG scheme is described. Using the same method it is shown that the performance of conventional CRC scheme may be considerably enhanced. Error detection is an integral part of an incremental re• dundancy communications system and it is shown that sequences of good error correction codes, suitable for use in incremental redundancy communications systems may be obtained using the Constructions X and XX. Examples are given and their performances presented in comparison to conventional CRC schemes. Table of Contents Page I Introduction and Background 1 1 Introduction 3 1.1 Channel Coding and Reliable Communications 3 1.2 Definition and Notation 8 1.3 Historical Development of Channel Coding 10 1.4 A Note on the Performance Bound of Binary Codes of Finite Block Length 17 1.5 Thesis Aim, Objectives and Organisation 21 1.6 Contributions to Knowledge 23 II Probabilistic Coding 27 2 LDPC Code Constructions 29 2.1 Background and Notation 29 2.1.1 Random Constructions 32 2.1.2 Algebraic Constructions 34 2.1.3 Non-Binary Constructions 35 2.2 Algebraic LDPC Codes 35 2.2.1 Binary Cyclic LDPC Codes Derived from Cyclotomic Cosets 35 2.2.2 Mattson-Solomon Domain Construction of Binary Cyclic LDPC Codes 41 2.2.3 Non Binary Extension of the Cyclotomic Coset-based LDPC Codes 46 2.3 Irregular LDPC Codes from Progressive-Edge-Growth Construction 50 2.4 Summary . 56 3 Improvements to Iterative Decoder 59 3.1 Preliminaries 59 3.2 Investigation on the Hartmann-Rudolph Decoding Algorithm 61 3.3 Codeword-Substitution Belief Propagation Algorithm 66 3.4 Other Approaches to Improve the Convergence of Iterative Decoder 69 3.4.1 Grouping of the Parity-Check Equations 69 3.4.2 The Received Vector Coordinate Modification Algorithm 70 3.5 Summary 70 III Classical Coding 71 4 Good Binary Linear Codes 73 4.1 Introduction 73 4.2 Algorithms to Compute the Minimum Distance of Binary Linear Codes 74 4.2.1 The First Approach to Minimum Distance Evaluation 74 4.2.2 Brouwer's Algorithm for Linear Codes 74 4.2.3 Zimmermann's Algorithm for Linear Codes and Some Improvements 76 4.2.4 Chen's Algorithm for Cyclic Codes 78 TABLE OF CONTENTS 4.2.5 Codeword Enumeration Algorithm 81 4.3 Binary Cyclic Codes of Lengths 129 </I < 189 84 4.4 Some New Binary Cyclic Codes of Large Minimum Distance 85 4.5 Constructing New Codes from Existing Ones 88 4.5.1 New Binary Codes from Cyclic Codes of Length 151 90 4.5.2 New Binary Codes from Cyclic Codes of Length > 199 93 4.6 Summary 93 5 Double Circulant Codes based on Primes 97 5.1 Introduction 97 5.2 Background and Notation 98 5.3 Code Construction 100 5.3.1 Double-Circulant Codes from Extended Quadratic Residue Codes 104 5.3.2 Pure Double-Circulant Codes for Primes ± 3 Modulo 8 106 5.3.3 Quadratic Double-Circulant Codes 107 5.4 Evaluation of the Number of Codewords of Given Weight and the Minimum Distance: A More Efficient Approach 112 5.5 Weight Distributions 115 5.5.1 The Number of Codewords of a Given Weight in Quadratic Double-Circulant Codes 116 5.5.2 The Number of Codewords of a Given Weight in Extended Quadratic Residue Codes 124 5.6 Minimum Distance Evaluation: A Probabilistic Approach 128 5.7 Summary 130 6 Decoding of Linear Block Codes 133 6.1 Introduction 133 6.2 Dorsch Decoding Algorithm 134 6.3 Incremental Correlation Approach to Dorsch Decoding 135 6.4 The Number of Codewords Required to Achieve Maximum-Likelihood Solution .... 140 6.5 Numerical Results ofSome Binary Codes with Large Minimum Distance 142 6.5.1 [136, 68, 24] Quadratic Double-Circulant Codes ; . 142 6.5.2 [154, 77, 23] Best Known Linear Code 145 6.5.3 [255,175,17] Cyclotomic Idempotent LDPC Code 146 6.5.4 BCH and Goppa Codes 148 6.6 Summary 150 IV Application of Coding 151 7 Incremental Redundancy Communications 153 7.1 Overview of Incremental Redundancy Codes 154 7.2 Juxtaposition Codes: Chain of Cyclic Codes with Constructions X and XX 154 7.3 IR-ARQ Protocols, Error Detection Mechanisms and their Performance Analysis . 159 7.3.1 Error Detection based on Cyclic-Redundancy-Check 159 7.3.2 Error Detection based on Two Successive FEC Decoding 160 7.3.3 Error Detection based on the Confidence of FEC Output 163 7.4 Numerical Results 169 7.5 Adding CRC to CRC-less Error Detection Approach 169 7.6 Summary 171 V Conclusions 175 8 Conclusions and Future Research Directions . 177 VI Appendices 183 A Quasi-Cyclic LDPC Codes and Protograph 185 A.1 Quasi-Cyclic LDPC Codes 186 A.2 Construction of Quasi-Cyclic Codes using Protograph 187 B Binary Cyclic Codes ofOdd Lengths from 129 to 189 193 C Improved Lower-Bounds of the Minimum Hamming Distance of Binary Linear Codes 205 D Weight Distributions of Quadratic Double-Circulant Codes and their Modulo Con• gruence 211 D.l Primes+3 Modulo 8 211 D,l.l Prime 11 211 D.1.2 Prime 19 212 D.1.3 Prime 43 212 D.1.4 Prime 59 214 D.1.5 Prime 67 216 D.1.6 Prime 83 218 D.2 Primes-3 Modulo 8 221 D.2.1 Prime 13 221 D.2.2 Prime 29 221 D.2.3 Prime 53 223 D.2.4 Prime 61 224 E Weight Distributions of Quadratic Residue Codes of Primes 151 and 167 229 Vn References 231 VIII PubUcations 245 111 List of Tables Table Page 2.1 Examples of 2-cyclotomic coset-based LDPC codes 41 2.2 Several good cyclic LDPC codes with girth of 4 45 2.3 Examples of (/i, k, rfja- cyclic LDPC codes 50 2.4 Variable degree sequences for codes in Figure 2.7.