Forward error correction (FEC)? – 100G FEC, 400G FEC and more
Interconnections made using fiber optic cables are currently the most popular type of medium for use in telecommunications networks. The need for additional bandwidth is rising because of the growing popularity of streaming media, social networking, and cloud computing. This demand is driving networking speeds to greater horizons. When communicating at high speeds, such as 100G Ethernet and above, it is possible for transmission errors to arise because optical receivers struggle to differentiate between signal and noise as the amount of noise in the environment grows. The process of controlling errors that take place during the transmission of data through unreliable or noisy communication channels is referred to as Forward Error Correction or FEC. In this article, we will go deeper into the topic by answering questions such as “What is FEC?”, “What are the pros and cons of using FEC?” and in the “Good to Know About FEC” section, we’ll talk about what you need to pay attention to when using FEC, including whether 100G FEC is different from 400G FEC, how PAM4 FEC is different from NRZ FEC, what RS-FEC 25G is, and whether FEC processing is done on the module or in the host device. All of this should be relevant to modern optical communication links.
What is FEC?
FEC is a digital signal processing technique for correcting errors in noisy communication channels
Our world is full of noise. Noise affects everything, including data transmission and communication systems, and there is no way to escape it. The receivers of optical communication systems are directly impacted by noise, which makes it more difficult to understand the information that has been received. Technically speaking, noise has an effect on the optical intensity of the wave as it is transmitted through an optical fiber, and optical dispersion creates noticeable defects in the signal when it is transmitted over a long distance. Whenever there is an impact from noise or optical dispersion distortion, the optical pulse suffers degradation and loses its meaning as either 0 or 1. The receiver takes the optical pulse it receives and converts it to voltage. When the receiver does so with too much noise it interprets the data incorrectly, reading either 0 as 1 or 1 as 0 bit. Obviously, in a perfect system, there would be no noise, and the receiver would be able to correctly recognize bits 0 and 1 as they were transmitted. However, this is not the case in the systems that exist in the real world.
FEC, which stands for Forward Error Correction, comes into play at this point because it lessens the effect that noise has on the transmission quality of optical transmission systems. By adding overhead information to a stream of bits before transmission, this method is able to detect and correct a portion of the errors that may be present in a stream of bits. The data block is subjected to specialized functions, and the output of those functions is the generation of parity bits. Overhead consists of redundant bits, which also contain parity bits. After that, the initial data block and these new data are joined together, and the FEC codeword is produced as a result. Following that, this FEC codeword is sent along the transmission line.
The same FEC mode is configured on the equipment at the receiver end so that the receiver FEC decoder mechanism knows what kind of functions to apply to the FEC codeword. This allows the receiver FEC decoder mechanism to choose the functions to regenerate the data and remove the FEC overhead with a high degree of accuracy. As a result, an initial data bit stream is produced, which is then sent to higher network layers.
FEC codes can detect and correct a limited number of errors without having to retransmit the data stream. FEC codes are classified into two types: block codes and convolution codes. Block codes are classified as Hard-Decision FECs, whereas convolution codes are classified as Soft-Decision FECs. To correct errors, block codes employ fixed-size blocks. The most common block code type is Reed-Solomon. Hard-Decision FEC algorithm code uses a fixed length of code and determines whether each symbol corresponds to 0 or 1.
Convolutional codes are used in Soft-Decision FEC algorithms. They work with variable length symbol streams and introduce confidence factors for 0 or 1 decisions. This means that the receiver can interpret a bit as 0 or 1 based on the amplitude of the signal if it is in the 0 confidence interval or the 1 confidence interval. These codes increase the overall distance reachability of an optical transmission system by 30-40%. Thus, Soft-Decision FEC has a disadvantage: it increases overhead by 15-30%. Hard-decision block codes are three times as large. The Soft-Decision FEC algorithm branch includes Trellis error correction codes.
Reed-Solomon error correction codes are the most widely used error detection mechanism in today’s telecommunications industries. Reed-Solomon codes operate on a data block represented as a set of finite-field elements known as symbols. Reed-Solomon codes can detect and correct a variety of symbol errors. The two most common FEC schemes in today’s telecommunications links are RS-FEC (528, 514) and RS-FEC (544, 514). The RS(544,514) FEC is used on 400G PAM4 transceiver links and 100G PAM4 (CAUI-2) links; while RS-FEC (528, 514) is being used on 100G NRZ links. The following is the distinction between the two RS-FEC schemes: – RS-FEC(528,514) encoding begins with a 514-symbol data field with 10 bits per symbol and adds 14 parity symbols to form a 528-symbol encoded codeword. However, the RS-FEC (544, 514) uses 30 parity symbols to form a 544 symbol encoded codeword. Because PAM-4 signals have a tighter spacing between voltage levels, the eye amplitude is one-third that of a similar NRZ signal, it is slightly larger and uses more overhead. As a result, the SNR of the PAM-4 signal is reduced and it is more susceptible to noise. To compensate for the lower SNR, KP-FEC is designed with a higher coding gain. KP-FEC has the potential to correct up to 15 symbols per codeword, whereas KR-FEC can only correct up to seven symbols.
FEC Pros and Cons
As the weather is not always bright and sunny, using FEC (Forward Error Correction) has a couple of drawbacks to be aware of. In this section, we will look at the pros and cons of FEC-enabled links.
Let’s start with the..
- FEC is cost-effective. The techniques’ primary function is to correct transmission errors, so we can achieve better results with the same hardware components and eliminate the need for more expensive lasers and receivers.
- FEC operates in real time and can correct the code in seconds using simple algorithms.
- Increase the interconnection distances. While correcting the code, FEC helps the signal to be received at greater distances, for example up to 30-40% distance increase can be achieved on 100G links using SD-FEC.
- The technique reduces the Bit Error Rate (BER) (BER).
- FEC does not require retransmission of the entire frame if an error is detected. The technique detects and corrects only the redundant bits. As a result, it saves bandwidth that would otherwise be used for retransmission.
- An increase in latency. FEC employs an algorithm that adds overhead bytes to the payload, and as the payload is reduced, it takes longer to transfer data from point A to point B.
- Link configuration may require an extra twist because a similar type of FEC must be used on both sides of the link; thus, when interconnecting different brand equipment, keep this in mind.
Overall, the benefits of using Forward Error Correction in most of the scenarios outweigh the drawbacks, but it is not relevant for every transceiver. FEC implementation and use are typically determined by the system in which the transceivers are used, as well as the type of module itself.
Good to Know About FEC
Matching FEC on both sides of the Link
When using FEC, one simple factor to consider is that matching FEC Type must be used across switches and transceivers on both sides of the link. For example, if the transceiver supports RS-FEC, the host device into which it will be plugged must also support RS-FEC, and the other side of the link setup must follow the same principle. If, however, you have equipment on one side of the link supporting RS-FEC and equipment on the other side of the link supporting SD-FEC, the FEC functionality will not work, and the link will not work with FEC turned on. Similarly, if FEC is turned on on one side of the link but not on the other, the link will not function..
Reed-Solomon Forward Error Correction is used in many 25G SFP28 transceivers to increase the range in 25G-CSR, 25G-LR, 25G-ER, and BIDI scenarios.
NRZ 100G FEC
Except for 100GBASE-LR4 and 100GBASE-ER4, which use LAN-WDM transmitters and can achieve required distances of 10km and 40km without the need for FEC, all 100G NRZ modules to achieve maximum reach require RS(528,514) FEC enabled on the host platform.
100G PAM4 FEC
100G PAM4 modules (100GBASE-DR, 100GBASE-FR, 100GBASE-LR, and 100G-ER) have RS(544, 514) PAM4 FEC (KP1) built into the optical transceivers digital signal processor (DSP) chip internally, and when these modules are detected by the host, FEC on the host platform is disabled.
PAM4 400G FEC
To achieve best performance FEC (544,514) must be enabled on the host device for 400G QSFP-DD modules based on PAM4.
To summarize, with current events increasing system bandwidth and overall network speed, error correction must be considered when transmitting over longer distances. Forward Error Correction enables you to receive a high-quality signal without interruption from noise, which distorts the signal, and it can provide a longer transmission distance from lower-cost components. The FEC technique is already a hot topic, but we can expect it to become even more popular as speed and optical modulation techniques will advance.