Correct Misalignment of Interleaved Words Due to Demodulation
In communications systems, you can use techniques such as interleaving to protect against burst errors. Interleaving is a process that rearranges the order of data bits or symbols. The effectiveness of interleaving depends on the precise alignment of data words prior to this process. This example shows how to correct for the misalignment of codewords due to delays incurred in digital demodulation, when performing deinterleaving and outer block decoding.
Open the Model The model includes the following blocks:
The Bernoulli Binary Generator block generates random binary inputs.
The Binary-Input RS Encoder and Binary-Output RS Decoder blocks use Reed-Solomon coding to encode and decode the inputs.
The Helical Interleaver block permutes the input symbols using an helical array.
The Helical Deinterleaver block restores the ordering of symbols at the output.
The GMSK Modulator Baseband block modulates the input using Gaussian minimum shift keying (GMSK).
The GMSK Demodulator Baseband block demodulates the GMSK-modulated data.
The AWGN Channel block for is channel modeling.
The Error Rate Calculation blocks compute the bit error rate.
Adjust Delays
The demodulation process causes a delay of 16 samples between the interleaver and deinterleaver. But the Helical Deinterleaver block expects an input with a frame size of 21. To make up for the delay, you need to move the word boundary from the 17th sample of the 21-sample frame to the first sample of the next frame. Moving the word boundary delays the signal by five samples. Set the Delay length parameter in the Delay block to 5 samples.
Now the combined delay between the interleaver and deinterleaver measured at the deinterleaver output is 42 samples or two complete frames of data with 21 samples each.
For the two Error Rate Calculation blocks:
Set the Channel Error Rate block to a receive delay of 16 samples. This block shows errors due to channel noise and the imperfections of the modulation and demodulation process.
Set the System Error Rate block to a receive delay of 45, indicating three frames of 15 samples each (15*3). One frame is from the GMSK Demodulator Baseband block and two frames are from the interleaver and deinterleaver pair. This block accounts for the total delay due to all the blocks in the system.
Run the Model
When you run the model, you can see:
Checking Alignment
The interleaver and deinterleaver have a combined delay of 42 samples, making the total delay two full frames between the Reed-Solomon encoder and decoder. The input data to the decoder starts on a new word. Therefore, it is not necessary to insert a Delay block between the Helical Deinterleaver block and the Binary-Output RS Decoder block.
The System Error Rate block displays low error rates, indicating an overall low error rate within the system. This outcome results from the decoder's effective error correction capabilities and the absence of alignment issues, ensuring high data integrity and system performance.
Observe Effects of Misalignment
Remove the Delay block between the demodulator and the deinterleaver. Run the model again. Analyze the values in the Channel Error block and the System Error block. The GMSK Demodulator Baseband block outputs data with a delay of 16 samples and does not align with the frame size of 21 samples expected by the Helical Deinterleaver block. The beginning of the demodulated data frame fails to align with the start of a new word expected by the Helical Deinterleaver block. This misalignment disrupts the correct sequencing in the deinterleaving process.
The System Error Rate block shows an increased overall error rate, due to the misalignment between frames and new words from the demodulator to the deinterleaver.
Conclusion
Managing delays and alignment ensures data integrity and system performance. By incorporating a delay block to compensate for the misalignment caused by the demodulation process, you can see that the model successfully aligns the codewords between the Reed-Solomon encoder and decoder and reduces the overall error rates.