lteConvolutionalDecode

Сверточное декодирование

Описание

пример

out = lteConvolutionalDecode(softBits) возвращает out, данные восстанавливаются путем фактического декодирования softBits, вектор мягких битов.

Декодер использует мягкий входной перенос алгоритм Viterbi без любого квантования. Алгоритм создает обучающие данные, чтобы добавить к началу и концу пакета путем цикличного расширения пакета. traceback декодирование длины равняется 42.

Примеры

свернуть все

Сгенерируйте случайные биты и convolutionally закодируйте их.

txBits = randi([0 1],1000,1);
codedData = lteConvolutionalEncode(txBits);

QPSK модулирует закодированные биты и добавляет шум в полученные символы.

txSym = lteSymbolModulate(codedData,'QPSK');
noise = 0.5*complex(randn(size(txSym)),randn(size(txSym)));
rxSym = txSym + noise;

Покажите rxSymbols созвездие, установка txSymbols как ссылочное созвездие.

xylimits = [-2.5 2.5];
cdScope = comm.ConstellationDiagram('ReferenceConstellation',txSym,'XLimits',xylimits ,'YLimits',xylimits);
cdScope(rxSym)

Figure Constellation Diagram contains an axes and other objects of type uiflowcontainer, uimenu, uitoolbar. The axes contains 2 objects of type line. This object represents Channel 1.

Демодулируйте шумные символы, чтобы получить мягкие биты, convolutionally декодировать мягкие биты и отобразить количество ошибочных битов.

softBits = lteSymbolDemodulate(rxSym,'QPSK','Soft');
out = lteConvolutionalDecode(softBits);
disp(sum(out ~= int8(txBits)))
     0

Входные параметры

свернуть все

Мягкие битные данные в виде вектор-столбца. Функция принимает, что входные данные были закодированы кусающим хвост сверточным кодом с продолжительностью ограничения 7, кодируя уровень 1/3, и восьмеричные полиномы G0 = 133, G1 = 171 и G2 = 165. Функция также принимает, что вектор входных данных структурирован как три закодированных потока четности, конкатенированные мудрый блоком в форме [D0 D1 D2], где D0, D1, и D2 отдельные потоки четности, следующие из исходного кодирования отдельными полиномами G0, G1 и G2.

Типы данных: double

Выходные аргументы

свернуть все

Convolutionally декодировал данные, возвращенные как вектор-столбец. Длина этого вектора является 1/3 длины softBits входной параметр.

Типы данных: int8

Введенный в R2014a