Biquad Filter
Биквадратный (БИХ) фильтр.
Описание
Блок Biquad Filter (Биквадратный фильтр) — это разновидность фильтра с бесконечной импульсной характеристикой (БИХ), в котором числитель и знаменатель разделены на ряд секций второго порядка, соединенных блоками усиления. Этот тип фильтра может заменить большой КИХ-фильтр, использующий нецелесообразное количество аппаратных ресурсов. В проектах часто используются биквадратные фильтры в качестве фильтров блокировки постоянного тока или для соответствия спецификации, изначально реализованной с помощью аналогового фильтра, такого как фильтр предыскажения.
Порты
Вход
data — входные данные
скаляр
Входные данные в виде скаляра.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, UInt8
, UInt16
, UInt32
, UInt64
, Bool
valid — допустимость входных данных
скаляр
Управляющий сигнал, указывающий, допустимы ли входные данные. Когда valid равен true (1)
, то блок захватывает значения из порта входных данных. Когда valid false (0)
, блок игнорирует значения из порта входных данных.
Тип данных: Bool
Параметры
Filter structure — структура фильтра
Direct form II (по умолчанию)
| Direct form II transposed
Обе архитектуры Direct form II
и Direct form II transposed
конвейерны и квантованы, чтобы вписаться в блоки FPGA. Эти архитектуры сводят к минимуму количество множителей, используемых фильтром, и имеют критический путь через петлю обратной связи, поэтому в некоторых случаях не могут обеспечить более высокие тактовые частоты.
Numerator coefficients of filter — коэффициенты для числителя
[1,2,1] (по умолчанию)
| матрица NumSections на 3
Задайте коэффициенты числителя как матрицу NumSections на 3. NumSections — количество секций фильтра второго порядка. Блок выводит количество секций фильтра из размера коэффициентов числителя и знаменателя. Матрицы коэффициентов числителя и знаменателя должны быть одинакового размера. Фильтр по умолчанию имеет один раздел.
Denominator coefficients of filter — коэффициенты для знаменателя
[1,.1,.2] (по умолчанию)
| матрица NumSections на 3
Задайте коэффициенты знаменателя как матрицу NumSections на 3. Блок предполагает, что первый коэффициент знаменателя каждой секции равен 1.0
. NumSections — количество секций фильтра второго порядка. Блок выводит количество разделов из размера коэффициентов числителя и знаменателя. Матрицы коэффициентов числителя и знаменателя должны быть одинакового размера. Фильтр по умолчанию имеет один раздел.
Scale values of filter — масштабировать значения фильтра
[1] (по умолчанию)
| вектор от 1 до NumSections +1
Задайте значения усиления как вектор от 1 до NumSections +1. NumSections — количество секций фильтра второго порядка. Блок выводит количество разделов из размера коэффициентов числителя и знаменателя. Если вектор имеет только одно значение, блок применяет это усиление перед первым разделом. Если вы задаете меньше значений, чем есть разделы фильтра, блок устанавливает оставшиеся значения усиления раздела в один. На диаграмме показан трехсекционный фильтр и расположение четырех значений шкалы до и после секций.
Реализация этих коэффициентов усиления вне секций фильтра уменьшает множители, необходимые для реализации числителя фильтра.