dfilt.dffir

Дискретное время, КИХ-фильтр прямой формы

Синтаксис

hd = dfilt.dffir(b)
hd = dfilt.dffir

Описание

hd = dfilt.dffir(b) возвращает дискретное время, объект фильтра конечного импульсного ответа (FIR) прямой формы hd, с коэффициентами числителя b.

Сделайте этот фильтр фиксированной точкой или фильтром с одинарной точностью путем изменения значения свойства Arithmetic для фильтра hd можно следующим образом:

  • Чтобы измениться на фильтрацию с одинарной точностью, войти

    set(hd,'arithmetic','single');
  • Чтобы измениться на фильтрацию фиксированной точки, войти

    set(hd,'arithmetic','fixed');

Для получения дополнительной информации о свойстве Arithmetic, обратитесь к Арифметике.

hd = dfilt.dffir возвращает значение по умолчанию, дискретное время, КИХ-объект фильтра прямой формы hd, с b=1. Этот фильтр передает вход до неизменного вывода.

Структура фильтра фиксированной точки

Следующие данные показывают поток сигналов для КИХ-фильтра прямой формы, реализованного dfilt.dffir. Чтобы помочь вам видеть, как фильтр обрабатывает коэффициенты, вход, и состояния фильтра, а также числовые операции, фигура включает местоположения объектов форматирования в потоке сигналов.

Примечания о схеме потока сигналов

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

Метки используют распространенный формат — префикс, сопровождаемый буквами “frmt” (формат). В этом использовании “frmt” указывает на размер слова и дробную длину, сопоставленную с частью фильтра, упомянутой префиксом.

Например, метка InputFrmt относится к размеру слова, и дробная длина раньше интерпретировала ввод данных к фильтру. Свойства формата InputWordLength и InputFracLength (как показано в таблице) хранят размер слова и дробную длину в битах. Или рассмотрите NumFrmt, который обращается к слову и дробным длинам (CoeffWordLength, NumFracLength) сопоставленный с представлением коэффициентов числителя фильтра.

Метка потока сигналов

Соответствующее свойство размера слова

Соответствующее дробное свойство длины

Related Properties

AccumFrmt

AccumWordLength

AccumFracLength

'none'

InputFrmt

InputWordLength

InputFracLength

'none'

NumFrmt

CoeffWordLength

NumFracLength

CoeffAutoScale, Signed, Numerator

OutputFrmt

OutputWordLength

OutputFracLength

'none'

ProductFrmt

ProductWordLength

ProductFracLength

'none'

Самый важный положение метки в схеме, которая идентифицирует, где формат применяется.

Как один пример, посмотрите на метку ProductFrmt, которая всегда следует за содействующим элементом умножения в потоке сигналов. Метка указывает, что коэффициенты оставляют элемент умножения с размером слова и дробной длиной сопоставленным с операциями продукта, которые включают коэффициенты. От рассмотрения таблицы вы видите, что ProductFrmt обращается к свойствам ProductFracLength и ProductWordLength, которые полностью задают содействующий формат после того, как умножают (или продукт) операции.

Свойства

В этой таблице вы видите свойства, сопоставленные с КИХ-реализацией прямой формы объектов dfilt.

Примечание

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

get(hd)

где hd является фильтром.

Для получения дополнительной информации о свойствах этого фильтра или любого объекта dfilt, обратитесь к Свойствам фильтра Фиксированной точки.

Имя

Значения

Описание

AccumFracLength

Любое положительное или отрицательное целое число битов [30]

Указывает, что дробная длина раньше интерпретировала вывод данных аккумулятором.

AccumWordLength

Любое целое число битов [34]

Устанавливает размер слова, используемый, чтобы хранить данные в аккумуляторе.

Arithmetic

зафиксированный для фильтров фиксированной точки

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

CoeffAutoScale

[верный], ложный

Задает, выбирает ли фильтр автоматически длину правильной дроби, чтобы представлять коэффициенты фильтра без переполнения. Выключение этого путем устанавливания значения к false позволяет вам изменить значение свойства NumFracLength, чтобы задать используемую точность.

CoeffWordLength

Любое целое число битов [16]

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

FilterInternals

[FullPrecision], SpecifyPrecision

Средства управления, устанавливает ли фильтр автоматически выходное слово и дробные длины, слово продукта и дробные длины, и слово аккумулятора и дробные длины поддерживать лучшие результаты точности во время фильтрации. Значение по умолчанию, FullPrecision, устанавливает автоматическое слово и дробное определение длины фильтром. SpecifyPrecision делает вывод и связанные с аккумулятором свойства доступными, таким образом, можно установить собственное слово и фракционировать длины для них.

InputFracLength

Любое положительное или отрицательное целое число битов [15]

Задает дробную длину использование фильтра, чтобы интерпретировать входные данные.

InputWordLength

Любое целое число битов [16]

Задает размер слова, примененный, чтобы интерпретировать входные данные.

NumFracLength

Любое положительное или отрицательное целое число битов [14]

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

OutputFracLength

Любое положительное или отрицательное целое число битов [32]

Определяет, как фильтр интерпретирует выходные данные фильтра. Можно изменить значение OutputFracLength, когда вы устанавливаете FilerInternals на SpecifyPrecision.

OutputWordLength

Любое целое число битов [39]

Определяет размер слова, используемый для выходных данных. Вы делаете это свойство доступным для редактирования установкой FilterInternals к SpecifyPrecision.

OverflowMode

насыщайте, [перенеситесь]

Устанавливает режим, используемый, чтобы ответить на условия переполнения в вычислениях с фиксированной точкой. Выберите или из saturate (ограничьте вывод самым большим положительным или отрицательным представимым значением), или wrap (установленные переполняющиеся значения к самому близкому представимому значению с помощью арифметики в остаточных классах). Выбор, который вы делаете, влияет только на аккумулятор и выходную арифметику. Содействующая и входная арифметика всегда насыщает. Наконец, продукты никогда не переполняются — они поддерживают полную точность.

ProductFracLength

Любое положительное или отрицательное целое число битов [30]

Задает дробную длину, чтобы использовать для результатов операции умножения. Это свойство становится перезаписываемым (можно изменить значение), когда вы устанавливаете ProductMode на SpecifyPrecision.

ProductWordLength

Любое целое число битов [32]

Задает размер слова, чтобы использовать для результатов операции умножения. Это свойство становится перезаписываемым (можно изменить значение), когда вы устанавливаете ProductMode на SpecifyPrecision.

RoundMode

[convergent], ceil, fix, floor, nearest, round

Устанавливает режим использование фильтра квантовать числовые значения, когда значения находятся между представимыми значениями для формата данных (слово и дробные длины).

  • потолок- Вокруг к положительной бесконечности.

  • convergent - Вокруг к самому близкому представимому целому числу. Связывает к самому близкому даже сохраненному целому числу. Это наименее смещено из методов, доступных в этом программном обеспечении.

  • фиксация- Вокруг к нулю.

  • пол- Вокруг к отрицательной бесконечности.

  • самый близкий- Вокруг к самому близкому. Связывает к положительной бесконечности.

  • вокруг- Вокруг к самому близкому. Связывает к отрицательной бесконечности для отрицательных чисел, и к положительной бесконечности для положительных чисел.

Выбор, который вы делаете, влияет только на аккумулятор и выходную арифметику. Коэффициент и входная арифметика всегда вокруг. Наконец, продукты никогда не переполняются — они поддерживают полную точность.

Signed

[верный], ложный

Задает ли использование фильтра подписанные или коэффициенты фиксированной точки без знака. Только коэффициенты отражают эту установку свойства.

States

Объект fi совпадать с установкой арифметики фильтра

Содержит состояния фильтра прежде, во время, и после работы фильтра. Состояния действуют как память фильтра между фильтрацией выполнений или сеансов. Состояния используют объекты fi со связанными свойствами от тех объектов. Для получения дополнительной информации обратитесь к объектам фиксированной точки в документации Fixed-Point Designer™.

Примеры

Задайте КИХ-структуру фильтра прямой формы второго порядка для объекта dfilt hd со следующим кодом, который создает фильтр в формате с двойной точностью и затем преобразовывает фильтр в операцию фиксированной точки:

b = [0.05 0.9 0.05];
hd = dfilt.dffir(b);
% Create fixed-point filter
hd.arithmetic='fixed';
% Change FilterInternals property to
% SpecifyPrecision enabling other properties
hd.FilterInternals='SpecifyPrecision';

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

| | |

Введенный в R2011a