Полиномиальный преобразователь частоты дискретизации с произвольным коэффициентом преобразования
dsp.FarrowRateConverter Система object™ реализует фильтр преобразования частоты дискретизации полиномиальной подгонки с использованием структуры Фэрроу. Этот объект можно использовать для преобразования частоты дискретизации сигнала вверх или вниз на произвольный коэффициент. Этот объект поддерживает операции с фиксированной точкой.
Для преобразования частоты дискретизации сигнала:
Создать dsp.FarrowRateConverter и задайте его свойства.
Вызовите объект с аргументами, как если бы это была функция.
Дополнительные сведения о работе системных объектов см. в разделе Что такое системные объекты?.
создает объект System преобразователя частоты дискретизации на основе полиномиального фильтра, frc = dsp.FarrowRateConverterfrc. Для каждого канала входного сигнала, frc преобразует входную частоту дискретизации в выходную частоту дискретизации.
задает свойства, используя одну или несколько пар имя-значение. Заключите каждое имя свойства в отдельные кавычки. frc = dsp.FarrowRateConverter(Name,Value)
frc = dsp.FarrowRateConverter('Specification','Coefficients','Coefficients',[1 2; 3 4]) возвращает фильтр, преобразующий от 44,1 кГц до 48 кГц с использованием пользовательских коэффициентов, реализующих полиномиальный фильтр 2-го порядка. возвращает объект System преобразователя частоты дискретизации, frc = dsp.FarrowRateConverter(fsIn,fsOut,tol,np)frc, со свойством InputSampleRate, равным fsIn, свойство OutputSampleRate имеет значение fsOut, свойство OutputRateTolerance имеет значение tolи для свойства PolynomicalOrder установлено значение np.
Чтобы использовать функцию объекта, укажите объект System в качестве первого входного аргумента. Например, для освобождения системных ресурсов объекта System с именем obj, используйте следующий синтаксис:
release(obj)
Фильтры Farrow реализуют кусочно-полиномиальную интерполяцию, используя правило Хорнера для вычисления выборок из полинома. Полиномиальные коэффициенты, используемые для подгонки входных выборок, соответствуют коэффициентам интерполяции Лагранжа.
Как только полином подогнан к входным данным, значение полинома может быть вычислено в любой точке. Следовательно, полиномиальный фильтр обеспечивает интерполяцию в произвольных местоположениях между входными выборками.
Для соответствия существующим образцам можно использовать многочлен любого порядка. Однако, поскольку многочлены большого порядка часто колеблются, многочлены порядка 1, 2, 3 или 4 используются на практике.
Блок вычисляет интерполированные значения в требуемых местоположениях, изменяя только дробную задержку Это значение представляет собой интервал между предыдущей входной выборкой и текущей выходной выборкой. Все коэффициенты фильтра остаются постоянными.
Входные выборки фильтруются с помощью M + 1 КИХ-фильтров, где M - полиномиальный порядок.
Выходные сигналы этих фильтров умножаются на дробную задержку, λ.
Выходные данные представляют собой сумму результатов умножения.
[1] Hentschel, T. и Г. Феттвейс. «Цифровые фильтры непрерывного времени для преобразования частоты дискретизации в реконфигурируемых радиотерминалах». Чаченц. Том 55, номер 5-6, 2001, стр. 185-188.
cost | freqz | fvtool | generatehdl | getActualOutputRate | getPolynomialCoefficients | getRateChangeFactors | info