Дискретное время, прямая форма антисимметричный КИХ-фильтр
hd = dfilt.dfasymfir(b)
hd = dfilt.dfasymfir
hd = dfilt.dfasymfir(b)
возвращает дискретное время, прямую форму, антисимметричный КИХ-объект фильтра hd
, с коэффициентами числителя b
.
Сделайте этот фильтр фиксированной точкой или фильтром с одинарной точностью путем изменения значения Arithmetic
свойство для фильтра hd
можно следующим образом:
Чтобы превратиться в фильтрацию с одинарной точностью, войти
set(hd,'arithmetic','single');
Чтобы превратиться в фильтрацию фиксированной точки, войти
set(hd,'arithmetic','fixed');
Для получения дополнительной информации о свойстве Arithmetic
, обратитесь к Арифметике.
hd = dfilt.dfasymfir
возвращает значение по умолчанию, дискретное время, прямая форма, антисимметричный КИХ-объект фильтра hd
, с b
=1. Этот фильтр передает вход до неизменного выхода.
Только коэффициенты в первой половине векторного b
используются потому что dfilt.dfasymfir
принимает, что коэффициенты во второй половине антисимметричны тем в первой половине. Например, в коэффициентах фигуры, b (4) =-b (3), b (5) =-b (2) и b (6) =-b (1).
Следующий рисунок показывает поток сигналов для нечетного порядка антисимметричный КИХ-фильтр, реализованный dfilt.dfasymfir
. Фильтр ровного порядка использует подобный поток. Чтобы помочь вам видеть, как фильтр обрабатывает коэффициенты, вход, и состояния фильтра, а также числовые операции, фигура включает местоположения объектов форматирования в потоке сигналов.
Чтобы помочь вам изучить, где и как фильтр выполняет вычисления с фиксированной точкой во время фильтрации, рисунок показывает различные метки, сопоставленные с элементами данных и функциональными элементами в фильтре. Следующая таблица описывает каждую метку в потоке сигналов и связывает метку со свойствами фильтра, которые сопоставлены с ним.
Метки используют распространенный формат — префикс, сопровождаемый словом “формат”. В этом использовании "формат" означает размер слова и дробную длину, сопоставленную с частью фильтра, упомянутой префиксом.
Например, метка InputFormat относится к размеру слова, и дробная длина раньше интерпретировала ввод данных к фильтру. Свойства формата InputWordLength
и InputFracLength
(как показано в таблице), хранят размер слова и дробную длину в битах. Или рассмотрите NumFormat, который обращается к слову и дробным длинам (CoeffWordLength
, NumFracLength
) сопоставленный с представлением коэффициентов числителя фильтра.
Метка потока сигналов | Соответствующее свойство размера слова | Соответствующее дробное свойство длины | Related Properties |
---|---|---|---|
AccumFormat |
|
| 'none' |
'InputFormat' |
|
| 'none' |
NumFormat |
|
|
|
'OutputFormat' |
|
| 'none' |
ProductFormat |
|
| 'none' |
TapSumFormat |
|
|
|
Самый важный положение метки в схеме, которая идентифицирует, где формат применяется.
Как один пример, посмотрите на метку ProductFormat, которая всегда следует за содействующим элементом умножения в потоке сигналов. Метка указывает, что коэффициенты оставляют элемент умножения с размером слова и дробной длиной сопоставленным с операциями продукта, которые включают коэффициенты. От рассмотрения таблицы вы видите, что ProductFormat обращается к свойствам ProductFracLength
и ProductWordLength
это полностью задает содействующий формат после того, как умножат (или продукт) операции.
В этой таблице вы видите свойства, сопоставленные с антисимметричной КИХ-реализацией dfilt
объекты.
Таблица приводит все свойства, которые может иметь фильтр. Многие свойства являются динамическими, означая, что они существуют только в ответ на настройки других свойств. Вы не можете видеть все перечисленные свойства все время. Чтобы просмотреть все свойства для фильтра в любое время, использовать
get(hd)
где hd
фильтр.
Для получения дополнительной информации о свойствах этого фильтра или любого dfilt
возразите, обратитесь к Свойствам фильтра Фиксированной точки.
Имя | Значения | Описание |
---|---|---|
| Любое положительное или отрицательное целое число битов [27] | Указывает, что дробная длина раньше интерпретировала вывод данных аккумулятором. |
| Любое целое число битов [33] | Устанавливает размер слова, используемый, чтобы хранить данные в аккумуляторе. |
| зафиксированный для фильтров фиксированной точки | Установка этого к |
| [верный], ложный | Задает, выбирает ли фильтр автоматически длину правильной дроби, чтобы представлять коэффициенты фильтра без переполнения. Выключение этого путем устанавливания значения к |
| Любое целое число битов [16] | Задает размер слова, чтобы применяться к коэффициентам фильтра. |
| [FullPrecision], SpecifyPrecision | Средства управления, устанавливает ли фильтр автоматически выходное слово и дробные длины, слово продукта и дробные длины, и слово аккумулятора и дробные длины обеспечивать лучшие результаты точности во время фильтрации. Значение по умолчанию, |
| Любое положительное или отрицательное целое число битов [15] | Задает дробную длину использование фильтра, чтобы интерпретировать входные данные. Также средства управления |
| Любое целое число битов [16] | Задает размер слова, примененный, чтобы интерпретировать входные данные. Также определяет |
| Любое положительное или отрицательное целое число битов [ | Устанавливает дробную длину, используемую, чтобы интерпретировать коэффициенты числителя. |
| Любое положительное или отрицательное целое число битов [29] | Определяет, как фильтр интерпретирует выходные данные фильтра. Можно изменить значение |
| Любое целое число битов [33] | Определяет размер слова, используемый в выходных данных. Вы делаете это свойство доступным для редактирования установкой |
| насыщайте, [перенеситесь] | Устанавливает режим, используемый, чтобы ответить на условия переполнения в вычислениях с фиксированной точкой. Выберите из любого |
| Любое положительное или отрицательное целое число битов [ | Задает дробную длину, чтобы использовать в результатах операции умножения. Это свойство становится перезаписываемым (можно изменить значение), когда вы устанавливаете |
| Любое целое число битов [33] | Задает размер слова, чтобы использовать в результатах операции умножения. Это свойство становится перезаписываемым (можно изменить значение), когда вы устанавливаете |
| [ | Устанавливает режим использование фильтра квантовать числовые значения, когда значения находятся между представимыми значениями для формата данных (слово и дробные длины).
Выбор, который вы делаете, влияет только на аккумулятор и выходную арифметику. Коэффициент и входная арифметика всегда вокруг. Наконец, продукты никогда не переполняются — они обеспечивают полную точность. |
| [верный], ложный | Задает ли использование фильтра подписанные или коэффициенты фиксированной точки без знака. Только коэффициенты отражают эту установку свойства. |
|
| Содержит состояния фильтра прежде, во время, и после работы фильтра. Состояния действуют как память фильтра между фильтрацией запусков или сеансов. Состояния используют |
Задайте прямую форму пятого порядка антисимметричная КИХ-структура фильтра для dfilt
объект, hd
, со следующим кодом:
b = [-0.008 0.06 -0.44 0.44 -0.06 0.008]; hd = dfilt.dfasymfir(b);
Задайте прямую форму четвертого порядка антисимметричная КИХ-структура фильтра для dfilt
объект hd
, со следующим кодом:
b = [-0.01 0.1 0.0 -0.1 0.01]; hd = dfilt.dfasymfir(b); hd.arithmetic='fixed'; FilterCoefs = get(hd,'numerator'); % or equivalently FilterCoefs = hd.numerator;