Системный объект: comm.ViterbiDecoder
Пакет: comm
Декодируйте сверточно закодированные данные с использованием алгоритма Viterbi
Y = step(H,X)
Y = step(H,X,ERASURES)
Y = step(H,X,R)
Примечание
Начиная с R2016b, вместо использования step
метод для выполнения операции, заданной Системной object™, можно вызвать объект с аргументами, как если бы это была функция. Для примера, y = step(obj,x)
и y = obj(x)
выполнять эквивалентные операции.
Y = step(H,X)
декодирует закодированные данные, X
, используя алгоритм Viterbi и возвращает Y
. X
, должен быть вектором-столбцом с типом данных и значениями, которые зависят от того, как вы устанавливаете InputFormat
свойство. Если сверточный код использует алфавит 2N возможные символы, длина входного вектора, X
, должен быть LN для некоторых положительных целочисленных L. Точно так же, если декодированные данные используют алфавит 2K возможные выходные символы, длина выходного вектора, Y
, есть LK.
Y = step(H,X,ERASURES)
использует двоичный входной вектор-столбец, ERASURES
, чтобы стереть символы входных кодовых слов. Элементы в ERASURES
должен иметь тип данных double или логический. Значения 1
в ERASURES
вектор соответствует удаленным символам и значениям 0
соответствуют неистертым символам. Длины X
и ERASURES
входы должны быть одинаковыми. Этот синтаксис применяется при установке ErasuresInputPort
свойство true.
Y = step(H,X,R)
сбрасывает внутренние состояния декодера, когда вы вводите ненулевой сигнал сброса, R
. R
должен быть двойной точностью или логическим скаляром. Этот синтаксис применяется при установке TerminationMethod
свойство к Continuous
и ResetInputPort
свойство к true
.
Примечание
obj
задает системный объект, на котором будет выполняться эта step
способ.
Объект выполняет инициализацию при первом step
выполняется метод. Эта инициализация блокирует нетронутые свойства и входные спецификации. Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Использование Системных объектов.