Block Codes (mBnB)
Redundant codes like 1b/2b or 3b/4b used in fiber optics to ensure DC balance and synchronization.
Introduction to Redundant Codes (mBnB)
Redundant codes, often referred to as block codes or mBnB codes, are a special type of line code where a block of information bits is mapped to a block of code bits, where is always greater than . These codes are fundamental in high-speed data transmission, especially in fiber optic systems.
The primary goal of these codes is not data compression (as they add bits), but rather to imbue the data stream with desirable properties for reliable transmission. Fiber optic systems, being mostly synchronous and using unipolar signals (light ON/OFF), cannot tolerate long strings of zeros (no signal). Block codes solve this by ensuring good synchronization and eliminating harmful signal characteristics.
The Concept of Redundancy
Redundant codes work by adding extra bits to the original data. This added information isn't part of the user's message but allows the system to function more reliably. This comes at a cost, however, which can be precisely quantified.
Measuring Redundancy
- Bit Redundancy (): This is the number of extra bits added for each -bit block of information.
- Percentage Redundancy (): This expresses the overhead as a percentage of the original data size.
The Cost of Redundancy: Increased Baud Rate
Adding extra bits means that to send the same amount of user information per second, we must send symbols on the line faster. The of the coded signal () becomes higher than the bit rate of the original information ().
- Output Frequency:
- Output Bit Duration: Consequently, the duration of each code bit on the line () is shorter:
This means that the output signal will require a wider channel bandwidth than the original binary data stream.
Example 1: The 1b/2b Code
The 1b/2b code is a simple example where one information bit () is encoded into a two-bit code word (). While there are different mapping schemes, a common one used to guarantee DC balance is:
| Information Word | Coded Word |
|---|---|
| 0 | 01 |
| 1 | 10 |
Analysis
This code guarantees that every code word has one '0' and one '1', which ensures perfect . The redundancy is bit, resulting in a percentage redundancy of . This doubles the required symbol rate on the transmission line.
Example 2: The 3b/4b Code
A more efficient example is the 3b/4b code, where a block of three information bits () is mapped to a four-bit code word (). Since there are possible input words, we only need to select 8 out of the possible output words. The words are chosen to have good properties, such as a limited number of consecutive zeros or ones.
Analysis
The bit redundancy is bit. However, the percentage redundancy is significantly lower: . The output frequency (symbol rate) will be times the input bit rate, making it much more spectrally efficient than the 1b/2b code.
Interactive Block Codes (mBnB)
Enter binary sequence (0s and 1s only)