We can, to some extent, correct errors made by the receiver with only the error-filled bit stream emerging from the digital channel available to us. The idea is for the transmitter to send not only the symbol-derived bits emerging from the source coder but also additional bits derived from the coder's bit stream. These additional bits, the error correcting bits, help the receiver determine if an error has occurred in the data bits (the important bits) or in the error-correction bits. Instead of the communication model shown previously, the transmitter inserts a channel coder before analog modulation, and the receiver the corresponding channel decoder (Figure 1). This block diagram shown there forms the Fundamental Model of Digital Communication.
Shannon's Noisy Channel Coding Theorem says that if the data aren't transmitted too quickly, that error correction codes exist that can correct all the bit errors introduced by the channel. Unfortunately, Shannon did not demonstrate an error correcting code that would achieve this remarkable feat; in fact, no one has found such a code. Shannon's result proves it exists; seems like there is always more work to do. In any case, that should not prevent us from studying commonly used error correcting codes that not only find their way into all digital communication systems, but also into CDs and bar codes used on merchandise.
This textbook is open source. Download for free at http://firstname.lastname@example.org.
Get the latest tools and tutorials, fresh from the toaster.