Error Control Coding Lecture Notes


To accomplish error detection and correction at the receiver, error control coding approaches entail the systematic insertion of redundant bits to the transmitted information. As a result, the message's controlled redundancy minimizes the likelihood of mistakes at the recipient.

• Check bits are the unnecessary bits that are appended to the message. With the use of these bits, errors may be recognized and repaired.

• The data rate via the channel is reduced by the check bits.

• It is impossible to detect and repair every inaccuracy in a message received. Errors may only be noticed and repaired up to a certain point.

• When it comes to error control coding, there are two primary approaches. They are namely:

1) Error correction that occurs in the future (FEC)

A hybrid system combining FEC and ARQ is sometimes employed.

Forward Error Correction (FEC) Method

As illustrated in Figure 1, the Forward Error Correction (FEC) approach comprises a channel encoder at the transmitter and a channel decoder at the receiver. If the channel decoder identifies an issue, it uses error correction codes to correct it. 

Figure 1: System Employing FEC

In a controlled manner, the channel encoder will add unnecessary bits (check bits). As a result, the encoded data is generated at a faster rate. The channel decoder uses the check bits to detect and repair mistakes. The amount of check bits in the broadcast message determines the receiver's capacity to identify and correct errors.

Advantages of using FEC

• There is no requirement for a feedback channel or a return path.

• The overall delay is kept constant. As a result, the system is more efficient.

• In FEC systems, the information throughput efficiency is constant.

Disadvantages of using FEC

• Because certain faults are uncorrectable, the total chance of errors is increased.

• Choosing an effective error-correcting code and implementing its decoding algorithm might be difficult when extremely high dependability is required.

• Only a moderate amount of data is sent via the system.

Codes used in FEC method

• There are several error-correcting codes available. They are classified into two parts: 1) Block Codes and 2) Convolutional Codes.

• The FEC approach commonly employs cyclic codes, a subtype of linear block codes. BCH codes, Hamming codes, Golay codes, and Reed Solomon codes are examples of cyclic codes.

Error detection with retransmission or Automatic Repeat Request(ARQ)

If the channel decoder discovers an error in this manner, it discards that portion of the data sequence and demands retransmission from the transmitter. Figure 2 is a block diagram of a basic ARQ system.

Figure 2: Block Diagram of basic ARQ System

For each message signal at its input, the channel encoder generates codewords. Each codeword is momentarily held in the buffer before being sent over the forward transmission channel. The channel decoder decodes the codewords and checks for mistakes at the receiver.

• If there are no errors, the decoder transmits an affirmative acknowledgment (ACK) via the return transmission channel.

• If a decoder detects an error, it sends a negative acknowledgment (NAK). The transmitter next broadcasts the portion of the codeword sequence where the fault was detected once again.

The decoder does not rectify the faults in this case. It just identifies the mistakes and requests a resend from the transmitter. As a result, this procedure is referred to as Automatic Repeat Request (ARQ).

Types of ARQ System

ARQ is divided into two categories. 1) Stop-and-wait ARQ 2)  Continuous ARQ

1) Stop-and-wait ARQ

The transmitter transmits a codeword and then waits in this technique. The decoder checks for errors in the received codeword. The receiver sends an acknowledgment (ACK) signal along the return path if no error is detected. The transmitter broadcasts the next codeword after receiving the (ACK) signal.

The decoder sends a Negative Acknowledgement (NAK) to the transmitter if any error is discovered in the received codeword. The transmitter retransmits the same codeword after receiving the (NAK) signal. This approach is depicted in Figure 3.

                                 Figure 3: Automatic Repeat Request (ARQ) Procedures

2. Continuous ARQ

There are two types of continuous ARQ systems.

a) Go back–N ARQ Systems.

b) Selective repeat ARQ systems.

a) Go back-N ARQ System

The transmitter sends the message continuously without waiting for an ACK signal from the receiver in this procedure. Assume the decoder detects a mistake in the kth codeword. The transmitter receives a NAK signal, indicating that the kth codeword is incorrect.

When the transmitter receives the NAK signal, it returns to the kth code word and begins sending all subsequent codewords. This process is depicted in Figure 3(b).

b) Selective repeat ARQ

The transmitter sends the messages one after the other without waiting for an ACK in this technique. Assume the decoder notices a mistake in the kth codeword. The transmitter receives a NAK signal, indicating that the kth codeword is incorrect.

When the transmitter receives a NAK signal, it just retransmits the kth codeword. The transmission of messages is then resumed sequentially, beginning where the sequence was broken. This process is depicted in Figure 3(c).

Advantages of using ARQ

• This strategy has a lower probability of error.

• Stop-and-wait ARQ systems are straightforward. Because the round-trip latency is so tiny, they are employed on terrestrial microwave lines.

• Return N ARQ is beneficial in satellite communications with a long round trip delay.

• The main benefit of ARQ over FEC is that error detection requires considerably simpler decoding equipment and much less redundancy.

• ARQ is an adaptive approach since information is only retransmitted when there are errors.

Disadvantages of using ARQ

• Because of the huge overall latency, the ARQ system is sluggish, necessitating the employment of expensive input and output buffers.

• The cost of implementation is high.

Codes used in the ARQ method

A code is required just for error detection in the ARQ mechanism. Error detection is well-suited to the Cyclic Redundancy Check (CRC) codes. Error detection is also done with simple parity-check codes.

Sreejith Hrishikesan

Sreejith Hrishikesan is a ME post graduate and has been worked as an Assistant Professor in Electronics Department in KMP College of Engineering, Ernakulam. For Assignments and Projects, Whatsapp on 8289838099.

Post a Comment

Previous Post Next Post