КИХ интерполяция
Полифазная интерполяция с КИХ-фильтром.
Тип: FIRInterpolation
Путь в библиотеке:
|
Описание
Блок КИХ интерполяция выполняет эффективную полифазную интерполяцию с использованием целочисленного коэффициента интерполяции по первому измерению.
Концептуально интерполяция с фильтром с конечной импульсной характеристикой (КИХ-фильтр, FIR) представляет повышение частоты в раз с последующим применением реконструкционного КИХ-фильтра, который обычно является аппроксимацией идеального интерполяционного фильтра с ограниченной полосой частот.
Повышение частоты дискретизации каждого канала входного сигнала до более высокой, выполняется путем добавления нулей между выборками. Следом КИХ-фильтр фильтрует каждый канал преобразованных данных. Результирующий дискретный сигнал имеет частоту дискретизации в раз превышающую исходную частоту дискретизации.
Однако реальный алгоритм блока реализует полифазную структуру КИХ-фильтра прямой формы, эффективный эквивалент комбинированной системы, изображенной на диаграмме. Более подробная информация приведена в разделе Алгоритмы.
Блок КИХ интерполяция можно использовать внутри триггерных подсистем, если для параметра Настройки частоты дискретизации установлено значение Обеспечить обработку с единой частотой.
Порты
Выход
#
OUT_1
—
выходные данные после интерполяции
скаляр | вектор | матрица
Details
Выходные данные после интерполяции, возвращаемые в виде скаляра, вектора или матрицы.
Поведение блока зависит от значения параметра Настройки частоты дискретизации:
-
Обеспечить обработку с единой частотой— при выборе этого значения блок сохраняет входную частоту дискретизации и интерполирует сигнал, увеличивая размер выходного кадра в раз. -
Разрешить многоскоростную обработку— при выборе этого значения блок интерполирует сигнал таким образом, что выходная частота дискретизации в раз превышает входную частоту дискретизации.
| Типы данных |
|
| Поддержка комплексных чисел |
Да |
Вход
#
IN_1
—
входные данные
скаляр | вектор | матрица
Details
Входные данные для блока, заданные как вектор или матрица.
| Типы данных |
|
| Поддержка комплексных чисел |
Да |
#
Num
—
коэффициенты числителя передаточной функции фильтра
вектор
Details
Порт ввода коэффициентов числителя КИХ-фильтра в виде вектора.
Передаточная функция КИХ-фильтра задается как
Для работы в качестве эффективного реконструкционного фильтра коэффициенты обычно соответствуют фильтру низких частот со значением нормированной частоты среза не больше, чем значение обратной величины коэффициента интерполяции.
Значения коэффициентов являются настраиваемыми. То есть их значения могут меняться в процессе моделирования, в то время как их свойства, такие как размер, тип данных и комплексность, остаются неизменными.
Зависимости
Чтобы использовать этот порт, установите для параметра Источник коэффициентов значение Входной порт.
| Типы данных |
|
| Поддержка комплексных чисел |
Да |
Параметры
Основные
#
Источник коэффициентов —
способ задания коэффициентов
Поле ввода параметров | Входной порт
Details
Если для параметра установлено значение Поле ввода параметров, то коэффициенты фильтра задаются в окне настроек параметров. Если для параметра установлено значение Входной порт, то коэффициенты фильтра задаются через входной порт Num.
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Нет |
#
Коэффициенты КИХ-фильтра —
коэффициенты низкочастотного КИХ-фильтра
Строка
Details
Укажите коэффициенты числителя передаточной функции КИХ-фильтра :
Для работы в качестве эффективного реконструкционного фильтра коэффициенты обычно подбираются так, чтобы соответствовать фильтру низких частот со значением нормированной частоты среза не больше, чем значение обратной величины коэффициента интерполяции.
Блок инициализирует все состояния фильтра нулем.
Зависимости
Чтобы использовать этот параметр, установите для параметра Источник коэффициентов значение Поле ввода параметров.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
#
Коэффициент интерполяции —
коэффициент интерполяции
Вещественное число
Details
Укажите целочисленный коэффициент . Блок увеличивает частоту дискретизации входной последовательности в соответствии с этим коэффициентом.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
#
Обработка входного сигнала —
тип обработки входного сигнала
Столбцы в виде каналов (на основе кадров) | Элементы в виде каналов (на основе отсчётов)
Details
Укажите, выполняет ли блок обработку на основе отсчета или кадра. Варианты для выбора:
-
Элементы в виде каналов (на основе отсчётов)— каждый элемент входного сигнала рассматривается как независимый канал (обработка на основе отсчета). -
Столбцы в виде каналов (на основе кадров)— каждый столбец входного сигнала рассматривается как независимый канал (обработка на основе кадра).
Подробнее см. Обработка сигналов по кадрам и отсчетам.
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Нет |
#
Настройки частоты дискретизации —
метод, с помощью которого блок интерполирует входные данные
Разрешить многоскоростную обработку | Обеспечить обработку с единой частотой
Details
Укажите метод, с помощью которого блок должен интерполировать входные данные. Варианты для выбора:
-
Обеспечить обработку с единой частотой— при выборе этого метода блок сохраняет частоту дискретизации входного сигнала и интерполирует сигнал, увеличивая размер выходного кадра в раз. Чтобы выбрать этот метод, параметр Обработка входного сигнала должен иметь значениеСтолбцы в виде каналов (на основе кадров). -
Разрешить многоскоростную обработку— при выборе этого метода блок интерполирует сигнал таким образом, что выходная частота дискретизации в раз превышает входную частоту дискретизации.
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Нет |
# Начальные условия выходного буфера — начальные условия
Details
Этот параметр появляется только в том случае, если блок настроен на многоскоростную обработку, то есть для параметра Настройки частоты дискретизации установлено значение Разрешить многоскоростную обработку, в этом случае в блоке происходит задержка передачи данных. Величина задержки при многоскоростной, многозадачной работе зависит от того, какое значение имеет параметр Обработка входного сигнала.
| Обработка входного сигнала | Задержка |
|---|---|
|
выборок |
|
кадров ( выборок на кадр) |
Когда блок демонстрирует задержку, начальные условия по умолчанию равны нулю. В качестве альтернативы можно использовать параметр Начальные условия выходного буфера, чтобы указать матрицу начальных условий, содержащую по одному значению для каждого канала, или скалярное начальное условие, которое блок применяет ко всем каналам. Блок делит начальные условия Начальные условия выходного буфера на Коэффициент интерполяции и выводит масштабированные начальные условия до тех пор, пока не станет доступна первая отфильтрованная входная выборка.
Начальные условия хранятся в типе выходных данных и масштабировании.
Дополнительная информация о задержке в блоке КИХ интерполяция приведена в разделе Время задержки.
Зависимости
Чтобы использовать этот параметр, установите для параметра Настройки частоты дискретизации значение Разрешить многоскоростную обработку.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
Дополнительно
Обработка на основе кадров
Details
Если для параметра Обработка входного сигнала установлено значение Столбцы в виде каналов (на основе кадров), то блок выполняет повторную выборку каждого столбца входного сигнала по времени. В этом режиме блок может выполнять как односкоростную, так и многоскоростную обработку. Можно использовать параметр Настройки частоты дискретизации, чтобы указать, как блок будет пересчитывать входные данные:
-
Если для параметра Настройки частоты дискретизации установлено значение
Обеспечить обработку с единой частотой, то входные и выходные данные блока имеют одинаковую частоту дискретизации. Для интерполяции выходных данных с сохранением частоты дискретизации входных данных блок пересчитывает данные в каждом столбце входных данных таким образом, чтобы размер кадра выходных данных был в раз больше, чем размер кадра входных данных: . -
Если для параметра Настройки частоты дискретизации установлено значение
Разрешить многоскоростную обработку, то входные и выходные данные интерполяции с КИХ-фильтром имеют одинаковый размер. Однако частота дискретизации выходных данных в раз выше, чем частота дискретизации входных данных. В этом режиме блок рассматривает входную матрицу на как независимых каналов. Блок интерполирует каждый столбец входного сигнала во времени, сохраняя размер кадра постоянным ( ), при этом период выходного кадра ( ) в раз короче периода входного кадра ( ).
Обработка на основе выборки
Details
Если для параметра Обработка входного сигнала установлено значение Элементы в виде каналов (на основе отсчётов), то блок рассматривает входную матрицу на как независимых каналов и интерполирует каждый канал по времени. Период выборки на выходе в раз короче периода выборки на входе: , при этом размеры входных и выходных данных остаются идентичными.
Время задержки
Details
Если для параметра Обработка входного сигнала установлено значение Столбцы в виде каналов (на основе кадров), а для параметра Настройки частоты дискретизации — Обеспечить обработку с единой частотой, то блок КИХ интерполяция всегда имеет нулевую задержку. Нулевая задержка означает, что блок передает первую отфильтрованную входную выборку, полученную в момент времени , в качестве первой выходной выборки. Затем за первой выходной выборкой следует интерполированных значений, вторая отфильтрованная входная выборка и так далее.
Единственный раз, когда блок КИХ интерполяция демонстрирует задержку, это если для параметра Настройки частоты дискретизации установлено значение Разрешить многоскоростную обработку. Величина задержки при многоскоростной, многозадачной работе зависит от того, какое значение имеет параметр Обработка входного сигнала.
| Обработка входного сигнала | Задержка |
|---|---|
|
выборок |
|
кадров ( выборок на кадр) |
Когда блок демонстрирует задержку, начальные условия по умолчанию равны нулю. В качестве альтернативы можно использовать параметр Начальные условия выходного буфера, чтобы указать матрицу начальных условий, содержащую по одному значению для каждого канала, или скалярное начальное условие, которое блок применяет ко всем каналам. Блок делит начальные условия Начальные условия выходного буфера на Коэффициент интерполяции и выводит масштабированные начальные условия до тех пор, пока не станет доступна первая отфильтрованная входная выборка.
Когда блок находится в режиме обработки на основе выборки, он выводит масштабированные начальные условия в начале каждого канала, затем сразу же следует первая отфильтрованная входная выборка, затем интерполированных значений и так далее.
Когда блок находится в режиме обработки на основе кадра и использует начальное значение по умолчанию равное нулю, первые выходных строк содержат нули, где — размер входного кадра. Первая отфильтрованная входная выборка (первая отфильтрованная строка входной матрицы) появляется на выходе как выборка. Затем следует интерполированных значений, вторая отфильтрованная входная выборка и так далее.
Алгоритмы
Интерполяция с КИХ-фильтром эффективно реализуется с помощью полифазной структуры.
Чтобы вывести полифазную структуру, начнем с определения передаточной функции КИХ-фильтра:
где — это длина КИХ-фильтра.
Можно перестроить это уравнение следующим образом:
где — это количество полифазных компонентов, и его значение равно коэффициенту интерполяции, который задается в окне настроек параметров.
Можно записать это уравнение в виде
где — полифазные компоненты КИХ-фильтра .
Концептуально интерполяция с КИХ-фильтром состоит из коэффициента интерполяции за которым следует КИХ-фильтр низких частот .
Заменим его полифазным представлением.
Здесь представлено тождество для многомерной интерполяции.
Применение тождества для интерполяции перемещает операцию вставки нулевых выборок после операции фильтрации. Этот ход позволяет фильтровать сигнал с меньшей скоростью.
Можно заменить оператор вставки нулевых выборок, блок задержки и сумматор коммутационным переключателем. Переключатель начинается с первой ветви 0 и движется против часовой стрелки, каждый раз получая по одной выборке из каждой ветви. Интерполятор эффективно выдает выборок на каждую полученную входную выборку. Таким образом, частота дискретизации на выходе интерполяции с КИХ-фильтром составляет .