
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
- 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
- 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