algdeintrlv
Restore ordering of symbols using algebraically derived permutation table
Syntax
deintrlvd = algdeintrlv(data,num,
'takeshita-costello'
,k,h)
deintrlvd = algdeintrlv(data,num,'welch-costas'
,alph)
Description
deintrlvd = algdeintrlv(data,num,
restores the original ordering of the elements in 'takeshita-costello'
,k,h)data
using a
permutation table that is algebraically derived using the Takeshita-Costello method.
num
is the number of elements in data
if
data
is a vector, or the number of rows of
data
if data
is a matrix with multiple
columns. In the Takeshita-Costello method, num
must be a power of 2.
The multiplicative factor, k
, must be an odd integer less than
num
, and the cyclic shift, h
, must be a
nonnegative integer less than num
. If data
is a
matrix with multiple rows and columns, the function processes the columns
independently.
deintrlvd = algdeintrlv(data,num,
uses the Welch-Costas method. In the Welch-Costas method, 'welch-costas'
,alph)num+1
must
be a prime number. alph
is an integer between 1 and
num
that represents a primitive element of the finite field
GF(num+1
).
To use this function as an inverse of the algintrlv
function, use the same inputs in both functions, except for
the data
input. In that case, the two functions are inverses in the
sense that applying algintrlv
followed by
algdeintrlv
leaves data unchanged.
Examples
References
[1] Heegard, Chris, and Stephen B. Wicker, Turbo Coding, Boston, Kluwer Academic Publishers, 1999.
[2] Takeshita, O. Y., and D. J. Costello, Jr., “New Classes Of Algebraic Interleavers for Turbo-Codes,” Proc. 1998 IEEE International Symposium on Information Theory, Boston, Aug. 16–21, 1998. p. 419.
Extended Capabilities
Version History
Introduced before R2006a