Error correction code

Error correction code

In computing, telecommunication, information theory, and coding theory, an error correction code, sometimes error correcting code, (ECC) is used for controlling errors in data over unreliable or noisy communication channels. The central idea is the sender encodes the message with redundant information in the form of an ECC. The redundancy allows the receiver to detect a limited number of errors that may occur anywhere in the message, and often to correct these errors without retransmission. The American mathematician Richard Hamming pioneered this field in the 1940s and invented the first error-correcting code in 1950: the Hamming (7,4) code.

Comment
enIn computing, telecommunication, information theory, and coding theory, an error correction code, sometimes error correcting code, (ECC) is used for controlling errors in data over unreliable or noisy communication channels. The central idea is the sender encodes the message with redundant information in the form of an ECC. The redundancy allows the receiver to detect a limited number of errors that may occur anywhere in the message, and often to correct these errors without retransmission. The American mathematician Richard Hamming pioneered this field in the 1940s and invented the first error-correcting code in 1950: the Hamming (7,4) code.
Depiction
BlockCont.png
Interleaving1.png
Has abstract
enIn computing, telecommunication, information theory, and coding theory, an error correction code, sometimes error correcting code, (ECC) is used for controlling errors in data over unreliable or noisy communication channels. The central idea is the sender encodes the message with redundant information in the form of an ECC. The redundancy allows the receiver to detect a limited number of errors that may occur anywhere in the message, and often to correct these errors without retransmission. The American mathematician Richard Hamming pioneered this field in the 1940s and invented the first error-correcting code in 1950: the Hamming (7,4) code. ECC contrasts with error detection in that errors that are encountered can be corrected, not simply detected. The advantage is that a system using ECC does not require a reverse channel to request retransmission of data when an error occurs. The downside is that there is a fixed overhead that is added to the message, thereby requiring a higher forward-channel bandwidth. ECC is therefore applied in situations where retransmissions are costly or impossible, such as one-way communication links and when transmitting to multiple receivers in multicast. Long-latency connections also benefit; in the case of a satellite orbiting around Uranus, retransmission due to errors can create a delay of five hours. ECC information is usually added to mass storage devices to enable recovery of corrupted data, is widely used in modems, and is used on systems where the primary memory is ECC memory. ECC processing in a receiver may be applied to a digital bitstream or in the demodulation of a digitally modulated carrier. For the latter, ECC is an integral part of the initial analog-to-digital conversion in the receiver. The Viterbi decoder implements a soft-decision algorithm to demodulate digital data from an analog signal corrupted by noise. Many ECC encoders/decoders can also generate a bit-error rate (BER) signal, which can be used as feedback to fine-tune the analog receiving electronics. The maximum fractions of errors or of missing bits that can be corrected are determined by the design of the ECC code, so different error correcting codes are suitable for different conditions. In general, a stronger code induces more redundancy that needs to be transmitted using the available bandwidth, which reduces the effective bit-rate while improving the received effective signal-to-noise ratio. The noisy-channel coding theorem of Claude Shannon can be used to compute the maximum achievable communication bandwidth for a given maximum acceptable error probability. This establishes bounds on the theoretical maximum information transfer rate of a channel with some given base noise level. However, the proof is not constructive, and hence gives no insight of how to build a capacity achieving code. After years of research, some advanced ECC systems as of 2016 come very close to the theoretical maximum.
Is primary topic of
Error correction code
Label
enError correction code
Link from a Wikipage to an external page
web.archive.org/web/20070519161253/http:/www.st.com/stonline/products/literature/an/10123.htm
web.archive.org/web/20160304050018/http:/www.eetasia.com/ARTICLES/2004NOV/A/2004NOV29_MEM_AN10.PDF%3FSOURCES=DOWNLOAD
perspectives.mvdirona.com/2012/02/observations-on-errors-corrections-trust-of-dependent-systems/
www.eccpage.com/
aff3ct.github.io/
github.com/supermihi/lpdec
gitlab.eurecom.fr/oai/openair-cn
Link from a Wikipage to another Wikipage
3GPP
3GPP Long Term Evolution
802.3an
Adaptive modulation and coding
Analog-to-digital converter
AN codes
Automatic Repeat Request
Barker code
BCH code
BCJR algorithm
Berger code
Binary Golay code
Bit error rate
Bit-error rate
Block code
Burst error
Burst error-correcting code
Carrier signal
Category:Error detection and correction
CDMA2000
Channel code
Claude Shannon
Cliff effect
Code rate
Code word
Coding theory
Communication channel
Compact disc
Computational complexity theory
Computing
Constant-weight code
Convolutional code
C-RAN
Cyclic redundancy check
Data transmission
Diversity scheme
DVB-S2
DVD
ECC memory
Elsevier BV
Erasure code
Error control
Error-correcting codes with feedback
Error correction code
Error detection
Error detection and correction
Evolution-Data Optimized
Expander code
Exponential time
Factor graph
Falsing
File:BlockCont.png
File:Interleaving1.png
Finite field
Forward error correction
Fountain code
Frequency-selective fading
G.hn
Galileo (spacecraft)
Gallager code
Golay code (disambiguation)
Goppa code
Group code
Hadamard code
Hagelbarger code
Hamming(7,4)
Hamming (7,4) code
Hamming code
Hamming distance
Hard disk drive
Hybrid automatic repeat-request
IEEE 802.11n
IEEE 802.16e
Information theory
IT++
Latin square
LDPC code
LDPC codes
Levenshtein distance
Lexicographic code
Linear network coding
Locally decodable code
Locally testable code
Long code (mathematics)
Low-density parity-check code
LT code
Massachusetts Institute of Technology
Mass storage
Mathematics of cyclic redundancy checks
MBMS
McEliece cryptosystem
MIT Press
Modem
M of n codes
Multicast
Multidimensional parity-check code
Multi-level cell
NAND flash
Neural network
Noisy-channel coding theorem
Nordstrom-Robinson code
North-Holland Publishing Company
Online code
Permutation polynomial
Plenum Press
Polar code (coding theory)
Polynomial time
Prentice-Hall
Probabilistically checkable proof
Qualcomm
Raptor code
Redundancy (information theory)
Reed–Muller code
Reed–Solomon
Reed–Solomon error correction
Repeat-accumulate code
Repetition code
Reverse channel
Richard Hamming
Robert G. Gallager
SECDED
Shannon limit
Signal-to-noise ratio
Single-level cell
Soft-decision decoder
Software-defined radio
Sparse graph code
Springer Science & Business Media
Sprint Nextel
Systematic code
Telecommunication
Tornado code
Triple modular redundancy
Turbo code
Uniform distribution (continuous)
Uranus
Verizon Wireless
Viterbi algorithm
Viterbi decoder
Voyager program
Walsh–Hadamard code
WiMAX
SameAs
6Vimn
Codi de correcció d'errors
Código de corrección de errores
Q55611017
Virheenkorjauskoodi
Корректирующий код
קוד תיקון שגיאות
纠错码
SeeAlso
Bit rate
Subject
Category:Error detection and correction
Thumbnail
BlockCont.png?width=300
WasDerivedFrom
Error correction code?oldid=1111887791&ns=0
WikiPageLength
40304
Wikipage page ID
4237207
Wikipage revision ID
1111887791
WikiPageUsesTemplate
Template:Citation needed
Template:Cite book
Template:Cite web
Template:Main
Template:Not a typo
Template:Redirect
Template:Reflist
Template:See also
Template:Short description
Template:Use dmy dates