Документация Engee

CIC Interpolation

Интерполяция сигнала с помощью каскадного интегрально-гребенчатого фильтра.

cic Interpolation

Описание

Блок CIC Interpolation выполняет увеличение частоты дискретизации (интерполяцию) входного сигнала на целочисленный коэффициент. Каскадные интеграторно-гребенчатые КИХ-фильтры – это класс КИХ-фильтров с линейной фазой, состоящих из каскадно включенных гребенчатых фильтров и интеграторов.

Порты

Выход

# OUT_1 — интерполированный выходной сигнал
вектор | матрица

Details

Интерполированный CIC-фильтром выходной сигнал, возвращаемый в виде вектора или матрицы. Тип данных на выходе определяется настройками параметров блока. Комплексность выходных данных соответствует комплексности входных.

Количество строк вывода равно , где – коэффициент интерполяции, а – количество строк ввода.

Типы данных

Int8 | Int16 | Int32 | Int64 | Fixed-point

Поддержка комплексных чисел

Да

Вход

# IN_1 — входной сигнал
вектор | матрица

Details

Входной сигнал, заданный в виде вектора или матрицы.

Типы данных

Int8 | Int16 | Int32 | Int64 | Fixed-point

Поддержка комплексных чисел

Да

Параметры

Main

# Coefficient source — источник информации о фильтре
Dialog parameters

Details

Источник информации о фильтре, указанный как:

  • Dialog parameters – ввод информации о фильтре в диалоговом окне блока через параметры Interpolation factor (R), Differential delay (M) и Number of sections (N).

Значение по умолчанию

Dialog parameters

Имя для программного использования

CoefficientSource

Настраиваемый

Нет

# Interpolation factor (R) — коэффициент интерполяции

Details

Коэффициент интерполяции фильтра, заданный в виде целого числа больше 1.

Значение по умолчанию

2

Имя для программного использования

InterpolationFactor

Настраиваемый

Нет

# Differential delay (M) — дифференциальная задержка

Details

Дифференциальная задержка гребенчатых фильтров CIC-фильтра, , указанная как целое положительное число.

Значение по умолчанию

1

Имя для программного использования

DifferentialDelay

Настраиваемый

Нет

# Number of sections (N) — количество секций фильтра

Details

Укажите количество секций фильтра. Указанное число определяет как количество секций в гребенчатом фильтре, так и количество интеграторов, но не эти значения вместе взятые.

Значение по умолчанию

1

Имя для программного использования

NumberOfSections

Настраиваемый

Нет

# Data type specification mode — метод задания длины слова и длины дробной части чисел с фиксированной точкой для секций фильтра и входного сигнала
Full precision

Details

Способ задания длины слова и длины дробной части чисел с фиксированной точкой для секций фильтра и/или выхода, указанный как:

  • Full precision – длины слов и дробей секций фильтра и выхода выбираются автоматически. Длины слов выходного сигнала и последней секции (WL) устанавливаются как:

где

  • – длина слова входного сигнала;

  • – дифференциальная задержка;

  • – количество секций;

  • – коэффициент интерполяции.

Длины слов других секций устанавливаются с учетом роста битов, как описано в работе Хогенауэра. Длины всех дробный частей устанавливаются равной длине входной дроби.

Значение по умолчанию

Full precision

Имя для программного использования

SpecificationMode

Настраиваемый

Нет

# Input processing — метод обработки входных данных
Columns as channels (frame based)

Details

Метод обработки входных данных, указанный как:

  • Columns as channels (frame based) – блок рассматривает каждый столбец входного сигнала как отдельный канал. В этом режиме блок всегда выполняет односкоростную обработку.

Значение по умолчанию

Columns as channels (frame based)

Имя для программного использования

InputProcessing

Настраиваемый

Нет

# Rate options — режим обработки сигнала
Enforce single-rate processing

Details

Режим обработки входного сигнала, указанный как:

  • Enforce single-rate processing – блок сохраняет частоту дискретизации входного сигнала.

Значение по умолчанию

Enforce single-rate processing

Имя для программного использования

RateOptionsFrameBased

Настраиваемый

Нет

Дополнительно

CIC-фильтр

CIC-фильтры – это оптимизированный класс КИХ-фильтров с линейной фазой, состоящих из каскадно включенных гребенчатых фильтров и интеграторов.

Концептуально интерполяционный CIC-фильтр представляет собой элемент повышения частоты дискретизации, за которым следует CIC-фильтр, , который представляет собой реконструкционный фильтр низких частот и выполняет фильтрацию без изменения частоты дискретизации. Интерполяционный CIC-фильтр увеличивает частоту дискретизации входного сигнала на целочисленный коэффициент с помощью каскадного интеграторно-гребенчатого фильтра (CIC).

cic interpolation 1

В более эффективной реализации CIC-фильтр, работающий без изменения частоты дискретизации , разлагается на множители таким образом:

где

  • – передаточная функция секций каскада гребенчатых фильтров, каждый из которых имеет ширину ;

  • – передаточная функция каскада из интеграторов;

  • – количество секций. Количество секций в CIC-фильтре определяется как количество секций в гребенчатом фильтре, так и количество интеграторов, но не эти значения вместе взятые. Это значение не отражает общее количество секций во всем фильтре;

  • – коэффициент интерполяции;

  • – дифференциальная задержка.

В алгоритме, обеспечивающем полную многоскоростную фильтрацию, учитываются два замечательных тождества для интерполяции, которые позволяют переместить операцию изменения частоты дискретизации R за каскад из N гребенчатых фильтров без искажения результата операции.

Передаточная функция результирующего фильтра задается следующим уравнением:

Блок-схему, показывающую многоскоростную реализацию, смотрите в разделе Алгоритмы.

Алгоритмы

Интерполяционный CIC-фильтр

Интерполяционный CIC-фильтр реализован в виде каскада из гребенчатых фильтров, за которыми следует элемент повышения частоты дискретизации сигнала в R раз, а затем каскад из N интеграторов.

cic interpolation 2

На этой схеме показан каскад гребенчатых фильтров с двумя секциями и каскад интеграторов с двумя секциями. Единичная задержка в интеграторах CIC-фильтра может быть расположена как в цепи прямой, так и обратной связи. Эти две конфигурации обеспечивают идентичные частотные характеристики фильтра. Однако фактические числовые последовательности на выходе для этих двух вариантов конфигурации будут различными из-за влияния задержки. В этом алгоритме единичная задержка размещается в тракте прямой линии интегратора, поскольку такая конфигурация предпочтительна для HDL-реализации.

Ссылки

  1. Hogenauer, E.B. "An Economical Class of Digital Filters for Decimation and Interpolation" IEEE Transactions on Acoustics, Speech and Signal Processing. Vol. 29, Number 2, 1981, pp. 155–162, 1981.

  2. Meyer-Baese, U. "Digital Signal Processing with Field Programmable Gate Arrays." New York: Springer Verlag, 2001.

  3. Harris, Fredric J., "Multirate Signal Processing for Communication Systems." Upper Saddle River, NJ: Prentice Hall PTR, 2004.

Смотрите также