Appendix G

Forward Error Correction

Forward error correction has become ubiquitous in modern communication systems of all kinds. In the following, we discuss the basics of forward error correction. How does it work? How much performance do we gain?

SNR Requirements

In Section 4.2, we found that we need an SNR of about c0G-math-001 to receive an NRZ signal at a BER of c0G-math-002. Can we do better than that? Yes we can, if we use error-correcting codes! A simple (but impractical) example of such a code is to send each bit three times. At the receiver, we can analyze the (corrupted) 3-bit codewords and correct single-bit errors. For example, if we receive the code word “101,” we know that an error occurred and that the correct code word most likely is “111.” This method of adding redundancy at the transmitter and correcting errors at the receiver is known as FEC. In practice, sophisticated codes such as the Reed–Solomon (RS) codes and the Bose–Chaudhuri–Hocquenghem (BCH) codes are used. (The alternative to FEC is to add a checksum at the transmitter and upon detection of an error at the receiver request the retransmission of the errored data block. This method is known as automatic repeat request [ARQ]. However, the high latency of long-haul optical communication links makes this method impractical.) ...

Get Analysis and Design of Transimpedance Amplifiers for Optical Receivers now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.