Error-Correction Coding and Decoding


Book Description

This book discusses both the theory and practical applications of self-correcting data, commonly known as error-correcting codes. The applications included demonstrate the importance of these codes in a wide range of everyday technologies, from smartphones to secure communications and transactions. Written in a readily understandable style, the book presents the authors’ twenty-five years of research organized into five parts: Part I is concerned with the theoretical performance attainable by using error correcting codes to achieve communications efficiency in digital communications systems. Part II explores the construction of error-correcting codes and explains the different families of codes and how they are designed. Techniques are described for producing the very best codes. Part III addresses the analysis of low-density parity-check (LDPC) codes, primarily to calculate their stopping sets and low-weight codeword spectrum which determines the performance of th ese codes. Part IV deals with decoders designed to realize optimum performance. Part V describes applications which include combined error correction and detection, public key cryptography using Goppa codes, correcting errors in passwords and watermarking. This book is a valuable resource for anyone interested in error-correcting codes and their applications, ranging from non-experts to professionals at the forefront of research in their field. This book is open access under a CC BY 4.0 license.




Codes for Error Detection


Book Description

There are two basic methods of error control for communication, both involving coding of the messages. With forward error correction, the codes are used to detect and correct errors. In a repeat request system, the codes are used to detect errors and, if there are errors, request a retransmission. Error detection is usually much simpler to implement than error correction and is widely used. However, it is given a very cursory treatment in almost all textbooks on coding theory. Only a few older books are devoted to error detecting codes. This book begins with a short introduction to the theory of block codes with emphasis on the parts important for error detection. The weight distribution is particularly important for this application and is treated in more detail than in most books on error correction. A detailed account of the known results on the probability of undetected error on the q-ary symmetric channel is also given.




Error Correction Coding


Book Description

An unparalleled learning tool and guide to error correction coding Error correction coding techniques allow the detection and correction of errors occurring during the transmission of data in digital communication systems. These techniques are nearly universally employed in modern communication systems, and are thus an important component of the modern information economy. Error Correction Coding: Mathematical Methods and Algorithms provides a comprehensive introduction to both the theoretical and practical aspects of error correction coding, with a presentation suitable for a wide variety of audiences, including graduate students in electrical engineering, mathematics, or computer science. The pedagogy is arranged so that the mathematical concepts are presented incrementally, followed immediately by applications to coding. A large number of exercises expand and deepen students' understanding. A unique feature of the book is a set of programming laboratories, supplemented with over 250 programs and functions on an associated Web site, which provides hands-on experience and a better understanding of the material. These laboratories lead students through the implementation and evaluation of Hamming codes, CRC codes, BCH and R-S codes, convolutional codes, turbo codes, and LDPC codes. This text offers both "classical" coding theory-such as Hamming, BCH, Reed-Solomon, Reed-Muller, and convolutional codes-as well as modern codes and decoding methods, including turbo codes, LDPC codes, repeat-accumulate codes, space time codes, factor graphs, soft-decision decoding, Guruswami-Sudan decoding, EXIT charts, and iterative decoding. Theoretical complements on performance and bounds are presented. Coding is also put into its communications and information theoretic context and connections are drawn to public key cryptosystems. Ideal as a classroom resource and a professional reference, this thorough guide will benefit electrical and computer engineers, mathematicians, students, researchers, and scientists.




Error Detecting Codes


Book Description

Error detecting codes are very popular for error control in practical systems for two reasons. First, such codes can be used to provide any desired reliability of communication over any noisy channel. Second, implementation is usually much simpler than for a system using error correcting codes. To consider a particular code for use in such a system, it is very important to be able to calculate or estimate the probability of undetected error. For the binary symmetric channel, the probability of undetected error can be expressed in terms of the weight distribution of the code. The first part of the book gives a detailed description of all known methods to calculate or estimate the probability of undetected error, for the binary symmetric channel in particular, but a number of other channel models are also considered. The second part of the book describes a number of protocols for feedback communication systems (ARQ systems), with methods for optimal choice of error detecting codes for the protocols. Results have been collected from many sources and given a unified presentation. The results are presented in a form which make them accessible to the telecommunication system designer as well as the coding theory researcher and student. The system designer may find the presentation of CRC codes as well as the system performance analysis techniques particularly useful. The coding theorist will find a detailed account of a part of coding theory which is usually just mentioned in most text books and which contains a number of interesting and useful results as well as many challenging open problems. Audience: Essential for students, practitioners and researchers working in communications and coding theory. An excellent text for an advanced course on the subject.




Error-Correction Coding for Digital Communications


Book Description

Error-correction coding is being used on an almost routine basis in most new communication systems. Not only is coding equipment being used to increase the energy efficiency of communication links, but coding ideas are also providing innovative solutions to many related communication problems. Among these are the elimination of intersymbol interference caused by filtering and multipath and the improved demodulation of certain frequency modulated signals by taking advantage of the "natural" coding provided by a continuous phase. Although several books and nu merous articles have been written on coding theory, there are still noticeable deficiencies. First, the practical aspects of translating a specific decoding algorithm into actual hardware have been largely ignored. The information that is available is sketchy and is widely dispersed. Second, the information required to evaluate a particular technique under situations that are en countered in practice is available for the most part only in private company reports. This book is aimed at correcting both of these problems. It is written for the design engineer who must build the coding and decoding equipment and for the communication system engineer who must incorporate this equipment into a system. It is also suitable as a senior-level or first-year graduate text for an introductory one-semester course in coding theory. The book U"Ses a minimum of mathematics and entirely avoids the classical theorem/proof approach that is often seen in coding texts.




Error Correction Codes for Non-Volatile Memories


Book Description

Nowadays it is hard to find an electronic device which does not use codes: for example, we listen to music via heavily encoded audio CD's and we watch movies via encoded DVD's. There is at least one area where the use of encoding/decoding is not so developed, yet: Flash non-volatile memories. Flash memory high-density, low power, cost effectiveness, and scalable design make it an ideal choice to fuel the explosion of multimedia products, like USB keys, MP3 players, digital cameras and solid-state disk. In ECC for Non-Volatile Memories the authors expose the basics of coding theory needed to understand the application to memories, as well as the relevant design topics, with reference to both NOR and NAND Flash architectures. A collection of software routines is also included for better understanding. The authors form a research group (now at Qimonda) which is the typical example of a fruitful collaboration between mathematicians and engineers.




Iterative Error Correction


Book Description

Presents all of the key ideas needed to understand, design, implement and analyse iterative-based error correction schemes.




Error Correcting Codes


Book Description

Assuming little previous mathematical knowledge, Error Correcting Codes provides a sound introduction to key areas of the subject. Topics have been chosen for their importance and practical significance, which Baylis demonstrates in a rigorous but gentle mathematical style.Coverage includes optimal codes; linear and non-linear codes; general techniques of decoding errors and erasures; error detection; syndrome decoding, and much more. Error Correcting Codes contains not only straight maths, but also exercises on more investigational problem solving. Chapters on number theory and polynomial algebra are included to support linear codes and cyclic codes, and an extensive reminder of relevant topics in linear algebra is given. Exercises are placed within the main body of the text to encourage active participation by the reader, with comprehensive solutions provided.Error Correcting Codes will appeal to undergraduate students in pure and applied mathematical fields, software engineering, communications engineering, computer science and information technology, and to organizations with substantial research and development in those areas.




An Introduction to Error Correcting Codes with Applications


Book Description

5. 2 Rings and Ideals 148 5. 3 Ideals and Cyclic Subspaces 152 5. 4 Generator Matrices and Parity-Check Matrices 159 5. 5 Encoding Cyclic Codest 163 5. 6 Syndromes and Simple Decoding Procedures 168 5. 7 Burst Error Correcting 175 5. 8 Finite Fields and Factoring xn-l over GF(q) 181 5. 9 Another Method for Factoring xn-l over GF(q)t 187 5. 10 Exercises 193 Chapter 6 BCH Codes and Bounds for Cyclic Codes 6. 1 Introduction 201 6. 2 BCH Codes and the BCH Bound 205 6. 3 Bounds for Cyclic Codest 210 6. 4 Decoding BCH Codes 215 6. 5 Linearized Polynomials and Finding Roots of Polynomialst 224 6. 6 Exercises 231 Chapter 7 Error Correction Techniques and Digital Audio Recording 7. 1 Introduction 237 7. 2 Reed-Solomon Codes 237 7. 3 Channel Erasures 240 7. 4 BCH Decoding with Erasures 244 7. 5 Interleaving 250 7. 6 Error Correction and Digital Audio Recording 256 7.




Handbook of Data Communications and Networks


Book Description

The object of this book is to cover most of the currently relevant areas of data communications and networks. These include: Communications protocols (especially TCP/IP) Networking (especially in Ethernet, Fast Ethernet, FDDI and ATM) Networking operating systems (especially in Windows NT, Novell NetWare and UNIX) Communications programs (especially in serial communications, parallel communications and TCP/IP) Computer hardware (especially in PC hardware, serial communications and parallel communication) The book thus splits into 15 different areas, these are: General data compression (Chapters 2 and 3) Video, images and sound (Chapters 4-11 ) Error coding and encryption (Chapters 12-17) TCP/IP, WWW, Internets and Intranets (Chapters 18-20 and 23) Electronic Mail (Chapter 21 ) HTML (Chapters 25 and 26) Java (Chapters 27-29) Communication Programs (Chapters 20, 29 and 49) Network Operating Systems (Chapters 31-34) LANs/WANs (Chapters 35, 38-46) Serial Communications (Chapters 47 and 48) Parallel Communications (Chapters 50-52) Local Communications (Chapters 53-57) Routing and Protocols (Chapters 36 and 37) Cables and connectors (Chapters 58--60) Many handbooks and reference guides on the market contain endless tables and mathematics, or are dry to read and contain very little insight in their subject area. I have tried to make this book readable, but also contain key information which can be used by professionals.