Main Content

lteRateRecoverConvolutional

Convolutional rate matching recovery

Description

example

out = lteRateRecoverConvolutional(in,outlen) performs rate recovery of the input data vector, in, to create an output vector, out, of length outlen. This function is the inverse of the rate matching operation for convolutionally encoded data. For more information, see lteRateMatchConvolutional. This function includes the inverses of the subblock interleaving, bit collection and bit selection, and pruning stages. This function also implements additive soft combining of the input data elements in the case where repetition occurred during the original rate matching.

Examples

collapse all

Perform rate recovery after rate matching. The returned vector has the same length as the input to rate matching.

codedBlklen = 132;
rateMatched = lteRateMatchConvolutional(ones(codedBlklen,1),50);
txSymbols = lteSymbolModulate(rateMatched,'QPSK');
rxSymbols = lteSymbolDemodulate(txSymbols,'QPSK');
rateRecovered = lteRateRecoverConvolutional(rxSymbols,codedBlklen);
size(rateRecovered)
ans = 1×2

   132     1

The output variable, rateRecovered, is a vector of the same length as the input to rate matching.

Input Arguments

collapse all

Input data, specified as a numeric column vector.

Data Types: double | uint8 | uint16 | uint32 | uint64 | int8 | int16 | int32 | int64

Output vector length, specified as a nonnegative scalar integer.

Example: 50

Data Types: double

Output Arguments

collapse all

Rate recovered output, returned as a numeric column vector.

Data Types: double | uint8 | uint16 | uint32 | uint64 | int8 | int16 | int32 | int64

Version History

Introduced in R2014a