CIC Decimation
Децимация сигнала с помощью каскадного интегрально-гребенчатого фильтра.
Описание
Блок CIC Decimation выполняет уменьшение частоты дискретизации (децимацию) входного сигнала на целочисленный коэффициент. Каскадные CIC-фильтры представляют собой класс КИХ-фильтров с линейной фазой, состоящих из каскадно включенных гребенчатых фильтров и интеграторов.
Блок поддерживает вещественные и комплексные входные сигналы с фиксированной точкой. В нормальном режиме работы блока CIC Decimation при переполнении сумматоров, выполняется циклический перенос, при котором отсчет продолжается с минимального значения при переполнении сверху и максимального при переполнении снизу. Подробнее см. в 1 и 3. Переполнение не влияет на дальнейшие процессы обработки сигнала.
Порты
Выход
#
OUT_1
—
децимированный выходной сигнал
вектор
| матрица
Details
Децимированный CIC-фильтром выходной сигнал, возвращаемый в виде вектора или матрицы. Тип данных на выходе определяется настройками параметров блока. Комплексность выходных данных соответствует комплексности входных.
Количество строк вывода равно , где – коэффициент децимации, а – количество строк ввода.
Типы данных |
|
Поддержка комплексных чисел |
Да |
Вход
#
IN_1
—
входной сигнал
вектор
| матрица
Details
Входной сигнал, заданный в виде вектора или матрицы. Количество строк входного сигнала должно быть кратно коэффициенту децимации.
Типы данных |
|
Поддержка комплексных чисел |
Да |
Параметры
Main
#
Coefficient source —
источник информации о фильтре
Dialog parameters
Details
-
Dialog parameters
– ввод информации о фильтре в диалоговом окне блока. Например, через параметры Decimation factor (R), Differential delay (M) и Number of sections (N).
Значение по умолчанию |
|
Имя для программного использования |
|
Настраиваемый |
Нет |
# Decimation factor (R) — коэффициент децимации
Details
Коэффициент децимации фильтра, заданный как целое число, большее 1
.
Значение по умолчанию |
|
Имя для программного использования |
|
Настраиваемый |
Нет |
# Differential delay (M) — дифференциальная задержка
Details
Задайте дифференциальную задержку гребенчатого фильтра, , как целое положительное число.
Значение по умолчанию |
|
Имя для программного использования |
|
Настраиваемый |
Нет |
# Number of sections (N) — количество секций фильтра
Details
Укажите количество секций фильтра. Указанное число определяет как количество секций в гребенчатом фильтре, так и количество интеграторов, но не эти значения вместе взятые.
Значение по умолчанию |
|
Имя для программного использования |
|
Настраиваемый |
Нет |
#
Data type specification mode —
метод задания длины слова и длины дробной части чисел с фиксированной точкой для секций фильтра и выходного сигнала
Full precision
Details
Способ задания длины слова и длины дробной части чисел с фиксированной точкой для секций фильтра и/или выхода, указанный как:
-
Full precision
– длины слова и длины дробной части чисел с фиксированной точкой для секций фильтра и выхода выбираются автоматически. Длины слов выходного сигнала/выхода и последней секции ( ) устанавливаются как:
где
-
– длина слова входного сигнала;
-
– дифференциальная задержка;
-
– количество секций;
-
– коэффициент интерполяции.
Длины слов других секций устанавливаются с учетом роста битов, как описано в работе Хогенауэра. Длины всех дробных частей устанавливаются равными дробной части входного сигнала.
Значение по умолчанию |
|
Имя для программного использования |
|
Настраиваемый |
Нет |
#
Rate options —
режим обработки сигнала
Enforce single-rate processing
Details
Режим обработки входного сигнала, указанный как:
-
Enforce single-rate processing
– блок сохраняет частоту дискретизации входного сигнала.
Значение по умолчанию |
|
Имя для программного использования |
|
Настраиваемый |
Нет |
Дополнительно
CIC-фильтр
CIC-фильтры – это оптимизированный класс КИХ-фильтров с линейной фазой, состоящих из каскадно включенных гребенчатых фильтров и интеграторов.
Концептуально децимационный CIC-фильтр представляет собой CIC-фильтр, , который является реконструкционным фильтром низких частот и выполняет фильтрацию без изменения частоты дискретизации, затем следует элемент понижения частоты дискретизации. Блок CIC Decimation уменьшает частоту дискретизации входного сигнала на целочисленный коэффициент с помощью каскадного интегрально-гребенчатого фильтра (CIC).
В более эффективной реализации CIC-фильтр, работающий без изменения частоты дискретизации, разлагается на множители таким образом:
где
-
– передаточная функция каскада из интеграторов;
-
– передаточная функция секций каскада гребенчатых фильтров, каждый из которых имеет ширину ;
-
– количество секций. Количество секций в CIC-фильтре определяется как количество секций либо в гребенчатой части, либо в интегрирующей части фильтра. Это значение не отражает общее количество секций во всем фильтре;
-
– коэффициент децимации;
-
– дифференциальная задержка.
В алгоритме, обеспечивающем полную многоскоростную фильтрацию, учитываются два замечательных тождества для интерполяции, которые позволяют переместить операцию изменения частоты дискретизации ® за каскад из N гребенчатых фильтров без искажения результата операции.
Передаточная функция результирующего фильтра задается следующим уравнением:
Блок-схему, показывающую многоскоростную реализацию, смотрите в разделе Алгоритмы.
Алгоритмы
Децимационный CIC-фильтр
Децимационный CIC-фильтр реализован в виде каскада из интеграторов, за которым следует элемент понижения частоты дискретизации сигнала в R раз, а затем каскад из N гребенчатых фильтров.
На схеме показан каскад интеграторов с двумя секциями и каскад гребенчатых фильтров, также состоящих из двух секций. Единичная задержка в интеграторах CIC-фильтра может быть расположена как в цепи прямой, так и обратной связи. Эти две конфигурации дают идентичные частотные характеристики фильтра. Однако фактические числовые последовательности на выходе для этих двух вариантов конфигурации будут различными из-за влияния задержки. В этом алгоритме единичная задержка размещается в тракте прямой линии интегратора, поскольку такая конфигурация препочтительна для HDL-реализации.
Ссылки
-
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.
-
Meyer-Baese, U. "Digital Signal Processing with Field Programmable Gate Arrays." New York: Springer Verlag, 2001.
-
Harris, Fredric J., "Multirate Signal Processing for Communication Systems." Upper Saddle River, NJ: Prentice Hall PTR, 2004.