| Communications Toolbox | ![]() |
A block interleaver accepts a set of symbols and rearranges them, without repeating or omitting any of the symbols in the set. The number of symbols in each set is fixed for a given interleaver.
The set of block interleavers in this toolbox includes a general block interleaver as well as several special cases. Each special-case interleaver function uses the same computational code that the general block interleaver function uses, but provides a syntax that is more suitable for the special case. The interleaver functions are described below.
| Type of Interleaver | Interleaver Function | Description |
|---|---|---|
| General block interleaver | intrlv | Uses the permutation table given explicitly as an input argument. |
| Algebraic interleaver | algintrlv | Derives a permutation table algebraically, using the Takeshita-Costello or Welch-Costas method. These methods are described in [4]. |
| Helical scan interleaver | helscanintrlv | Fills a matrix with data row by row and then sends the matrix contents to the output in a helical fashion. |
| Matrix interleaver | matintrlv | Fills a matrix with data elements row by row and then sends the matrix contents to the output column by column. |
| Random interleaver | randintrlv | Chooses a permutation table randomly using the initial state input that you provide. |
| Interleaving | Example: Block Interleavers | ![]() |
© 1994-2005 The MathWorks, Inc.