Forward Error Correction
In telecommunication, information theory, and coding theory, forward error correction (FEC) or channel coding is a technique used for controlling errors in data transmission over unreliable or noisy communication channels. The central idea is the sender encodes their message in a redundant way by using an error-correcting code (ECC). 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.
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. FEC gives the receiver the ability to correct errors without needing a reverse channel to request retransmission of data, but at the cost of a fixed, higher forward channel bandwidth. FEC is therefore applied in situations where retransmissions are costly or impossible, such as one-way communication links and when broadcasting to multiple receivers in multicast. FEC information is usually added to mass storage devices to enable recovery of corrupted data, and is widely used in modems.
FEC processing in a receiver may be applied to a digital bit stream or in the demodulation of a digitally modulated carrier. For the latter, FEC 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 FEC coders 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 is determined by the design of the FEC code, so different forward error correcting codes are suitable for different conditions.
Read more about Forward Error Correction: How It Works, Averaging Noise To Reduce Errors, Types of FEC, Concatenated FEC Codes For Improved Performance, Low-density Parity-check (LDPC), Turbo Codes, Local Decoding and Testing of Codes, List of Error-correcting Codes
Famous quotes containing the words error and/or correction:
“If the individual, or heretic, gets hold of some essential truth, or sees some error in the system being practised, he commits so many marginal errors himself that he is worn out before he can establish his point.”
—Ezra Pound (18851972)
“Shakespeare, with an improved education and in a more enlightened age, might easily have attained the purity and correction of Racine; but nothing leads one to suppose that Racine in a barbarous age would have attained the grandeur, force and nature of Shakespeare.”
—Horace Walpole (17171797)