Документация Engee

Inport FIR Decimation

Полифазное прореживание с КИХ-фильтром. Коэффициенты КИХ-фильтра задаются через входной порт.

inport fir decimation

Описание

Блок Inport FIR Decimation выполняет эффективное полифазное прореживание с использованием целочисленного коэффициента понижения частоты дискретизации по первому измерению.

Концептуально, КИХ-прореживатель (как показано на схеме) состоит из сглаживающего КИХ-фильтра, за которым следует понижение частоты дискретизации.

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

fir decimation 1 ru

Блок Inport FIR Decimation отличается от блока Dialog FIR Decimation только тем, что коэффициенты КИХ-фильтра задаются через входной порт. Более подробную информацию о работе блока и реализованных алгоритмах см. в Подробнее и Алгоритмы.

Порты

Вход

# In — входные данные
скаляр | вектор | матрица

Details

Входные данные для блока, заданные в виде скаляра, вектора или матрицы.

Типы данных

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64

Поддержка комплексных чисел

Да

# Num — коэффициенты числителя передаточной функции фильтра
вектор

Details

Порт ввода коэффициентов числителя КИХ-фильтра в виде вектора.

Передаточная функция КИХ-фильтра задается как:

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

Типы данных

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64

Поддержка комплексных чисел

Да

Выход

# Out — выходные данные после прореживания
скаляр | вектор | матрица

Details

Выходные данные после прореживания, возвращаемые в виде скаляра, вектора или матрицы.

Поведение блока зависит от значения параметра Rate options:

  • Enforce single-rate processing — при выборе этого значения блок сохраняет входную частоту дискретизации и прореживает сигнал, уменьшая размер выходного кадра в раз.

  • Allow multirate processing — при выборе этого значения блок прореживает сигнал таким образом, что выходная частота дискретизации в раз меньше входной частоты дискретизации.

Размер выходного кадра такой же, как и размер входного кадра.

Типы данных

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64

Поддержка комплексных чисел

Да

Параметры

Main

# Decimation factor — коэффициент децимации

Details

Укажите целочисленный коэффициент . Блок уменьшает частоту дискретизации входной последовательности на этот коэффициент.

Значение по умолчанию

2

Имя для программного использования

DF

Настраиваемый

Нет

# Filter structure — структура FIR-фильтра
Direct form | Direct form transposed

Details

Укажите структуру КИХ-фильтра: Direct form или Direct form transposed.

Значение по умолчанию

Direct form

Имя для программного использования

FS

Настраиваемый

Нет

# Input processing — тип обработки входного сигнала
Columns as channels (frame based) | Elements as channels (sample based)

Details

Укажите, выполняет ли блок обработку на основе отсчета или кадра. Варианты для выбора:

  • Elements as channels (sample based) — каждый элемент входного сигнала рассматривается как независимый канал (обработка на основе отсчета).

  • Columns as channels (frame based) — каждый столбец входного сигнала рассматривается как независимый канал (обработка на основе кадра).

Значение по умолчанию

Columns as channels (frame based)

Имя для программного использования

IP

Настраиваемый

Нет

# Rate options — метод, с помощью которого блок прореживает входные данные
Enforce single-rate processing | Allow multirate processing

Details

Укажите метод, с помощью которого блок должен прореживать входные данные. Варианты для выбора:

  • Enforce single-rate processing — при выборе этого метода блок сохраняет частоту дискретизации входного сигнала и прореживает сигнал, уменьшая размер выходного кадра в раз. Чтобы выбрать этот метод, параметр Input processing должен иметь значение Columns as channels (frame based).

Если для параметра Rate options установлено значение Enforce single-rate processing, то можно использовать блок Inport FIR Decimation внутри триггерных подсистем.

  • Allow multirate processing — при выборе этого метода блок прореживает сигнал таким образом, что выходная частота дискретизации в раз меньше входной.

Зависимости

Чтобы использовать этот параметр, установите для параметра Input processing значение Columns as channels (frame based).

Значение по умолчанию

Enforce single-rate processing

Имя для программного использования

ROF

Настраиваемый

Нет

# Rate options — метод, с помощью которого блок прореживает входные данные
Allow multirate processing

Details

Блок прореживает данные с помощью метода Allow multirate processing — выходная частота дискретизации в раз меньше входной.

Зависимости

Чтобы использовать этот параметр, установите для параметра Input processing значение Elements as channels (sample based).

Значение по умолчанию

Allow multirate processing

Имя для программного использования

ROS

Настраиваемый

Нет

# Allow arbitrary frame length for fixed-size input signals — разрешить произвольный размер кадра для входных сигналов фиксированного размера

Details

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

Для входных сигналов фиксированного размера:

  • Если установлен флажок Allow arbitrary frame length for fixed-size input signals, то размер кадра сигнала не обязательно должен быть кратен коэффициенту децимации. Если входной сигнал не кратен коэффициенту децимации, то на выходе обычно получается сигнал переменного размера. Поэтому, чтобы поддерживать произвольный размер входа, блок должен также поддерживать операции с переменным размером, которые можно включить, установив флажок Allow arbitrary frame length for fixed-size input signals.

  • Если флажок Allow arbitrary frame length for fixed-size input signals снят, то размер входного кадра должен быть кратен коэффициенту децимации.

Зависимости

Чтобы использовать этот параметр, установите для параметра Input processing значение Columns as channels (frame based), а для параметра Rate options значение Enforce single-rate processing.

Значение по умолчанию

false (выключено)

Имя для программного использования

AllowArbitrary

Настраиваемый

Нет

# Output buffer initial conditions — начальные состояния

Details

Если блок Inport FIR Decimation находится в режиме покадровой обработки, то он может демонстрировать задержку в один кадр. В случае однокадровой задержки этот параметр определяет выход блока до тех пор, пока не будет доступен первый отфильтрованный входной отсчет. Задайте этот параметр в виде скалярного значения, которое будет применяться ко всем каналам сигнала, или в виде матрицы, содержащей одно значение для каждого канала.

Случаи однокадровой задержки могут возникать, когда размер входного кадра больше единицы, а параметры Input processing и Rate options заданы следующим образом:

  • Input processing установлено в `Columns as channels (frame based)’;

  • Rate options установлено на Allow multirate processing.

Более подробно см. в разделе Время задержки.

Зависимости

Чтобы использовать этот параметр, установите для параметра Rate options значение Allow multirate processing.

Значение по умолчанию

0.0

Имя для программного использования

OutBuff

Настраиваемый

Нет

Дополнительные возможности

Генерация Си кода: Да