Системный объект: comm.ViterbiDecoder
Пакет: comm
Декодировать сверточно закодированные данные с помощью алгоритма Витерби
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, используя алгоритм Витерби и возвращая Y. X, должен быть вектором столбца с типом данных и значениями, зависящими от способа установки InputFormat собственность. Если сверточный код использует алфавит из 2N возможных символов, длина входного вектора, X, должно быть L × N для некоторого положительного целого L. Аналогично, если декодированные данные используют алфавит из 2K возможных выходных символов, длина выходного вектора,Y, является L × K.
Y = step(H,X,ERASURES) использует двоичный вектор ввода столбца, ERASURESдля стирания символов входных кодовых слов. Элементы в ERASURES должен иметь тип данных double или logical. Значения 1 в ERASURES вектор соответствует стертым символам и значениям 0 соответствуют нестираемым символам. Длины X и ERASURES входные данные должны быть одинаковыми. Этот синтаксис применяется при установке ErasuresInputPort свойство имеет значение true.
Y = step(H,X,R) сбрасывает внутреннее состояние декодера при вводе ненулевого сигнала сброса, R. R должен быть двойной точностью или логическим скаляром. Этот синтаксис применяется при установке TerminationMethod свойство для Continuous и ResetInputPort свойство для true.
Примечание
obj указывает системный объект, на котором будет выполняться step способ.
Объект выполняет инициализацию в первый раз step выполняют способ. Эта инициализация блокирует неперестраиваемые свойства и входные спецификации. Дополнительные сведения об изменении значений свойств см. в разделе Проектирование системы в MATLAB с использованием системных объектов.