- Trending Categories
- Data Structure
- Operating System
- C Programming
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
What is Interleaving?
Interleaving is a tool that is used to enhance existing error correcting codes so that they can be used to perform burst error corrections as well.
Most error correcting codes (ECCs) are designed to correct random errors, i.e. error caused by additive noise that is independent of each other. Burst error are the errors that occur in a sequence or as groups. They are caused due to defects in storage media or disruption in communication signals due to external factors like lightning etc. Interleaving modifies the ECC or does some processing on the data after they are encoded by ECCs.
During interleaving, the message symbols are arranged over multiple code blocks by the interleaver before sending over network channels. Due to this, long burst noise sequences are spread out among multiple blocks. When the decoder rearranges the blocks, the errors appear as independent random errors or burst errors with short lengths. The decoder is able to correct the errors using the error correcting algorithm.
The depth of interleaving required depends upon the length of the noise bursts that the ECC can recover from.
Types of Interleaving
There are two types of interleaving
Periodic Interleaving, In this case, the message is ordered in a repeating sequence of bytes. The interleaver accepts data symbols in blocks and performs identical permutations on the blocks before transmitting them. For example, the sequential blocks of code may be written to a matrix in a row-wise manner and then read out from the matrix in a column-wise manner. Block interleaving is a type of periodic interleaving.
Pseudo-random Interleaving Pseudo-random interleaving involves rearrangement of the message blocks in a pseudo-random sequence generated by specific algorithms.
Suppose that a certain error detection code has generated the four codewords 10011101, 00101100, 10100101 and 11110000. The following diagram illustrates an interleaving procedure
- Interleaving String in C++
- String Interleaving in Python
- What is Java API and what is its use?
- What is DatabaseMetaData in JDBC? What is its significance?
- What is ResultSetMetaData in JDBC? What is its significance?
- What is Account Balance and what is its significance?
- What is Scenario Analysis and what is its importance?
- What is Baseline Security? What is its Standard Framework?
- What is caching?
- What is Virtualization?
- What is Bitmap?
- What is Bootstrap?
- What is Alexa?
- What is SQL?
- What is pipelining?