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

Downsample

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

Тип: Downsample

Путь в библиотеке:

/Signal Operations/Signal Operations/Downsample

Описание

Блок Downsample уменьшает частоту дискретизации входного сигнала, удаляя промежуточные значения. В режиме обработки сигналов на основе кадров блок обрабатывает каждый элемент входа как отдельный канал и передискретизирует каждый такой канал отдельно. Когда блок выполняет обработку на основе отсчетов, он обрабатывает каждый элемент входных данных как отдельный канал и повторно выбирает каждый канал входного массива с течением времени. Частота дискретизации на выходе в раз ниже частоты дискретизации на входе, где — значение параметра Downsample factor, M. Блок Downsample передискретизирует вход, отбрасывая значений после каждого выведенного значения.

Порты

Вход

# IN_1 — входной сигнал
вектор | матрица | N-мерный массив

Details

Входной сигнал, частоту дискретизации которого нужно уменьшить.

Блок поддерживает входные сигналы переменного размера, если для параметра Input processing установлено значение Columns as channels (frame based), а для параметра Rate options — значение Enforce single-rate processing. То есть длина кадра (количество строк) и количество каналов (столбцов) могут меняться в процессе симуляции. Когда блок принимает входные сигналы переменного размера, они могут иметь произвольную длину кадра. То есть длина входного кадра необязательно должна быть кратна коэффициенту понижения дискретизации. Когда вы задаете сигналы фиксированного размера, длина кадра может быть произвольной при определенных условиях.

Типы данных

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

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

Да

Выход

# OUT_1 — выходной сигнал
вектор | матрица

Details

Выходной сигнал с частотой дискретизации, которая в раз ниже частоты дискретизации на входе.

Если для параметра Rate options установлено значение:

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

    Выход имеет размер на для входа размера на .

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

    Размер выходного кадра совпадает с размером входного кадра.

Типы данных

Float64

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

Да

Параметры

Параметры

# Downsample factor, M — коэффициент понижения дискретизации
Real or complex number

Details

Целочисленный коэффициент , задающий отношение частоты дискретизации на входе к частоте дискретизации на выходе.

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

2

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

DownsampleFactor

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

Нет

Вычисляемый

Да

# Sample offset, [0, M-1] — смещение выборок
Real or complex number

Details

Параметр Sample offset, [0, M-1] задерживает выходные выборки на целое число периодов выборки , где , так что может быть выбрана любая из возможных фаз вывода. Например, при понижении дискретизации последовательности 1, 2, 3,…​ в 4 раза можно выбрать одну из четырех фаз.

Входная последовательность

Смещение выборки,

Выходная последовательность ( )

1,2,3,…​

0

1,5,9,13,17,21,25,29,…​

1,2,3,…​

1

0,2,6,10,14,18,22,26,…​

1,2,3,…​

2

0,3,7,11,15,19,23,27,…​

1,2,3,…​

3

0,4,8,12,16,20,24,28,…​

Начальный нуль в каждой из последних трех выходных последовательностей в таблице является результатом установки параметра Initial conditions в значение по умолчанию 0. Подробнее о параметре Initial conditions см. Задержка.

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

0

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

SampleOffset

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

Нет

Вычисляемый

Да

# Input processing — указание обработки на основе выборки или кадра
Columns as channels (frame based) | Elements as channels (sample based)

Details

Укажите метод обработки входа:

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

  • Elements as channels (sample based) — блок обрабатывает каждый входной элемент как отдельный канал и выполняет передискретизацию каждого входного канала с течением времени. Блок понижает дискретизацию входного массива, отбрасывая выборок после каждой выборки, через которую он проходит к выходу. Входные и выходные размеры блока Downsample идентичны. В этом режиме вход может иметь размерность -мерного массива.

Значения

Columns as channels (frame based) | Elements as channels (sample based)

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

Elements as channels (sample based)

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

InputProcessing

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

Нет

Вычисляемый

Нет

# Rate options — включить односкоростную или разрешить многоскоростную обработку
Enforce single-rate processing | Allow multirate processing

Details

Задайте метод, которым блок регулирует скорость на выходе, чтобы приспособиться к уменьшенному количеству выборок. Поведение этого параметра зависит от значения для параметра Input processing: Elements as channels (sample based) (режим обработки на основе выборки) или Columns as channels (frame based) (режим обработки на основе кадров).

  • Elements as channels (sample based)

    • Enforce single-rate processing

      Блок заставляет выходную частоту дискретизации соответствовать входной частоте дискретизации (Tso = Tsi) путем повторения каждой M-й входной выборки M раз на выходе. В этом режиме блок ведет себя как блок Sample and Hold с повторяющимся событием запуска с периодом .

    • Allow multirate processing

      Период дискретизации выхода в раз больше периода дискретизации входа ( ).

  • Columns as channels (frame based)

    • Enforce single rate processing

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

    • Allow multirate processing

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

      Значения

      Enforce single-rate processing | Allow multirate processing

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

      Allow multirate processing

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

      RateOptions

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

      Нет

      Вычисляемый

      Нет

# Initial condition — начальное значение
Scalar / array of real and/or complex numbers

Details

Начальное значение для случаев ненулевой задержки. Вы можете указать скаляр или массив того же размера, что и входные данные.

Зависимости

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

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

0

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

InitialCondition

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

Нет

Вычисляемый

Да

Подробнее

Обработка на основе кадра

Details

Когда вы устанавливаете для параметра Input processing значение Columns as channels (frame based) и используете входной сигнал размера на , блок обрабатывает каждый из входных столбцов как отдельный канал, содержащий последовательных временных выборок. Блок понижает дискретизацию каждого канала независимо, отбрасывая строк входной матрицы после каждой строки, которую он выводит.

В этом режиме блок может выполнять либо односкоростную, либо многоскоростную обработку. Можно использовать параметр Rate options, чтобы указать, как блок регулирует скорость на выходе, чтобы приспособиться к уменьшенному количеству выборок.

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

    Выходные данные имеют размер верхней границы , где — длина входного кадра, а — коэффициент понижения дискретизации, указанный в параметре Downsample factor, M.

  • Когда вы устанавливаете для параметра Rate options значение Allow multirate processing, вход и выход блока Downsample имеют одинаковый размер, но частота дискретизации вывода в раз медленнее, чем у входа. В этом режиме блок обрабатывает матричный вход на как независимых каналов.

    В этом режиме блок принимает только сигналы фиксированного размера, и эти сигналы могут иметь произвольную длину кадра.

Обработка на основе выборок

Details

Когда вы устанавливаете для параметра Input processing значение Elements as channels (sample based), блок обрабатывает входную матрицу на как независимых каналов и передискретизирует каждый канал с течением времени. Период выборки выходного сигнала ( ) в раз больше, чем период выборки входного сигнала ( ), а размеры входа и выхода идентичны.

В этом режиме блок принимает только сигналы фиксированного размера, и эти сигналы могут иметь произвольную длину кадра.

Задержка

Details

Задержка между входом и выходом блока измеряется в выборках или кадрах.

Блок Downsample имеет нулевую задержку в следующих случаях:

  • Коэффициент понижения дискретизации равен 1.

  • Параметр Input processing установлен на Columns as channels (frame based), а параметр Rate options установлен на Enforce single-rate processing.

  • Параметр Input processing установлен на Columns as channels (frame based), параметр Rate options установлен на Allow multirate processing, параметр Sample offset (0 to M−1), , имеет значение 0, а размер входного кадра равен 1.

  • Параметр Input processing установлен на Elements as channels (sample based), а параметр Sample offset (0 to M−1), , имеет значение 0.

Нулевая задержка означает, что блок распространяет входную выборку (полученную в момент ) в качестве первой выходной выборки, за которой следует входная выборка , входная выборка , и так далее. При нулевой задержке блок игнорирует значение параметра Initial condition.

Во всех остальных случаях задержка не равна нулю:

  • Когда параметр Input processing установлен на Elements as channels (sample based), задержка составляет одну выборку.

  • Когда Input processing установлен на Columns as channels (frame based) и размер входного кадра больше единицы, задержка составляет один кадр.

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

Во всех случаях задержки в один кадр строк матрицы начальных условий появляются последовательно как первые выходных строк. Входная выборка (строка входной матрицы) появляется на выходе как выборка , за которой следует входная выборка , входная выборка и так далее. Параметр Initial condition может быть матрицей размера на , содержащей одно значение для каждого канала или скаляр, который должен повторяться для всех элементов матрицы на .