Дискретное время, прямая форма антисимметричный КИХ-фильтр
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;