Разложение сигнала на высокочастотные и низкочастотные поддиапазоны
Фильтрация/многоскоростные фильтры
dspmlti4
Блок фильтра поддиапазонов двухканального анализа разлагает входной сигнал на высокочастотный и низкочастотный поддиапазоны, каждый из которых имеет половину полосы пропускания и половину частоты дискретизации входного сигнала.
Блок фильтрует входной сигнал парой фильтров FIR верхних и нижних частот, а затем понижает выборку результатов на 2, как показано на следующем рисунке.

Блок реализует этапы фильтрации и понижающей дискретизации КИХ вместе с использованием многофазной структуры фильтра, которая более эффективна, чем простой алгоритм фильтрации-затем прореживания, показанный на предыдущем рисунке. Каждый поддиапазон является первой фазой соответствующего полифазного фильтра. Многоуровневый банк фильтров для диадического анализа можно реализовать, подключив несколько копий этого блока или используя блок Банк фильтров для диадического анализа. Дополнительные сведения см. в разделе Создание многоуровневых банков фильтров анализа.
Необходимо указать вектор коэффициентов фильтра для низкочастотных и высокочастотных КИХ-фильтров. Каждый фильтр должен быть полуполосным фильтром, который проходит полосу частот, которую останавливает другой фильтр.
Дополнительные сведения об этом блоке см. в следующих разделах:
Необходимо указать вектор числительных коэффициентов для фильтров нижних и верхних частот в коэффициентах фильтра FIR нижних частот и параметрах коэффициентов FIR верхних частот.
Например, чтобы задать фильтр со следующей передаточной функцией, введите вектор [b(1) b(2) ... b(m)].
... + bmz − (m − 1)
Каждый фильтр должен быть полуполосным фильтром, который проходит полосу частот, которую останавливает другой фильтр. Для восстановления входных данных этого блока можно использовать блок двухканального фильтра поддиапазонов синтеза. Для этого необходимо разработать идеальные фильтры реконструкции для использования в фильтре поддиапазонов синтеза.
Лучший способ разработать идеальные фильтры реконструкции - использовать вейвлет Toolbox™ wfilters для проектирования обоих фильтров как в этом блоке, так и в двухканальном блоке фильтра поддиапазонов синтеза. Можно также использовать другие функции DSP System Toolbox™ и Signal Processing Toolbox™.
Блок фильтра поддиапазонов двухканального анализа инициализирует все состояния фильтра как нулевые.
При установке для параметра обработки ввода значения Columns as channels (frame based)блок принимает матрицу M-на-N. Блок обрабатывает каждый столбец входного сигнала как высокочастотные или низкочастотные поддиапазоны соответствующего выходного канала. Можно использовать параметр «Параметры скорости», чтобы указать, как блок выполняет повторную выборку входных данных:
Если для параметра Rate options установлено значение Enforce single-rate processing, вход в блок может быть матрицей M-на-N, где M является кратным двум. Блок обрабатывает каждый столбец входного сигнала как независимый канал и разлагает каждый канал с течением времени. Блок выводит две матрицы, где каждый столбец выходного сигнала является высокочастотным или низкочастотным поддиапазоном соответствующего входного столбца. Для поддержания входной частоты дискретизации блок уменьшает размер выходного кадра в два раза.
Если для параметра Rate options установлено значение Allow multirate processingблок обрабатывает входной сигнал матрицы Mi-by-N как N независимых каналов и разлагает каждый канал с течением времени. Блок выводит две матрицы M-на-N, где каждый столбец выходного сигнала является поддиапазоном высокой или низкой частоты соответствующего входного столбца. Размеры входного и выходного кадров одинаковы, но частота кадров на выходе вдвое меньше, чем на входе. Таким образом, общая частота дискретизации на выходе вдвое меньше, чем на входе.
В этом режиме блок имеет один кадр задержки, как описано в разделе Задержка.
При установке для параметра обработки ввода значения Elements as channels (sample based)блок обрабатывает входной сигнал матрицы M-на-N как М· N независимых каналов. Блок разлагает каждый канал во времени и выводит две M-на-N матрицы, частоты дискретизации которых вдвое меньше входной частоты дискретизации. Каждый элемент в выходной матрице является высокочастотным или низкочастотным поддиапазонным выходом соответствующего элемента входной матрицы.
В зависимости от настроек параметров конфигурации Simulink ® выходные данные могут иметь один образец задержки, как описано в разделе Задержка.
При установке для параметра обработки ввода значения Columns as channels (frame based) и параметр Rate options to Enforce single-rate processing, блок фильтра поддиапазонов двухканального анализа всегда имеет нулевую задержку задания. Задержка нулевого задания означает, что блок распространяет первую входную выборку (принятую в момент времени t =0) в качестве первой выходной выборки.
Если для параметра Rate options установлено значение Allow multirate processingблок фильтра поддиапазонов двухканального анализа может проявлять задержку. Величина задержки зависит от установки параметра обработки входных данных этого блока и установки параметра конфигурации Simulink Treat для каждой дискретной скорости как отдельного параметра конфигурации задачи. Следующая таблица суммирует условия, которые создают задержку, когда блок выполняет многоскоростную обработку.
| Обработка входных данных | Рассматривать каждую дискретную скорость как отдельную задачу | Время ожидания |
|---|---|---|
| Off | Ничего. |
On | Один образец. Первая выходная выборка в каждом канале всегда имеет значение | |
| On или Off | Один кадр. Все выборки в первом выходном кадре имеют значение |
Примечание
Дополнительные сведения о задержках и режимах задания Simulink см. в разделах Избыточная алгоритмическая задержка (задержка задания) и Планирование и создание кода на основе времени (кодер Simulink).
Блок двухканального фильтра поддиапазона анализа является базовой единицей набора фильтров диадического анализа. Можно подключить несколько из этих блоков для реализации набора фильтров n-уровня, как показано на следующем рисунке. Обзор банков фильтров диадического анализа см. на странице ссылки на блок банка фильтров диадического анализа.
При создании банка фильтров путем подключения нескольких копий этого блока выходные значения банка фильтров различаются в зависимости от того, существует ли задержка. Хотя выходные значения различаются, оба набора значений действительны; разница возникает из-за изменений в задержке. Дополнительные сведения о том, когда задержка может возникнуть в блоке фильтра поддиапазонов двухканального анализа, см. в разделе Задержка.
В некоторых случаях вместо подключения нескольких блоков двухканального фильтра поддиапазонов анализа можно использовать блок банка фильтров Diadic Analysis, который быстрее и требует меньше памяти. В частности, блок Dyadic Analysis Filter Bank более эффективен при следующих условиях:
Размер кадра разлагаемого сигнала кратен 2n.
Вы разлагаете сигнал на n +1 или 2n поддиапазонов.
Во всех остальных случаях используйте блоки двухканального фильтра поддиапазонов анализа для реализации банков фильтров.

Блок Diadic Analysis Filter Bank позволяет задавать фильтры банка фильтров, предоставляя векторы коэффициентов фильтра, как это делает этот блок. Блок банка фильтров диадического анализа предоставляет дополнительную возможность использования фильтров на основе вейвлетов, которые блок проектирует с помощью указанного вейвлета.
Блок банка фильтров поддиапазонов двухканального анализа состоит из двух блоков децимации КИХ, как показано на следующей диаграмме.

Для сигналов с фиксированной точкой можно задать типы коэффициентов, выходных данных продукта, накопителя и выходных данных блоков децимации FIR, как описано в разделе Параметры. Схему, показывающую использование этих типов данных, см. на странице ссылки на блок децимации FIR.
Главная вкладка
Укажите вектор коэффициентов фильтра КИХ нижних частот в степени убывания z. Фильтр нижних частот должен быть фильтром половинного диапазона, который проходит полосу частот, остановленную фильтром, указанным в параметре коэффициентов FIR Highpass. Значения этого параметра по умолчанию определяют фильтр на основе вейвлета Daubechies третьего порядка. При использовании двухканального фильтра поддиапазонов синтеза для восстановления входных данных этого блока необходимо разработать идеальные фильтры реконструкции для использования в фильтре поддиапазонов синтеза. Дополнительные сведения см. в разделе Задание фильтров КИХ.
Укажите вектор коэффициентов КИХ-фильтра верхних частот в степенях убывания z. Фильтр верхних частот должен быть фильтром половинного диапазона, который проходит полосу частот, остановленную фильтром, указанным в параметре коэффициентов КИХ нижних частот. Значения этого параметра по умолчанию определяют фильтр на основе вейвлета Daubechies третьего порядка. При использовании двухканального фильтра поддиапазонов синтеза для восстановления входных данных этого блока необходимо разработать идеальные фильтры реконструкции для использования в фильтре поддиапазонов синтеза. Дополнительные сведения см. в разделе Задание фильтров КИХ.
Укажите, как блок должен обрабатывать входные данные. Можно задать для этого параметра одну из следующих опций:
Columns as channels (frame based) (по умолчанию) - при выборе этой опции блок обрабатывает каждый столбец ввода как отдельный канал.
Elements as channels (sample based) - При выборе этой опции блок обрабатывает каждый элемент ввода как отдельный канал.
Укажите правило обработки скорости для блока. Можно задать для этого параметра одну из следующих опций:
Enforce single-rate processing - При выборе этой опции блок обрабатывает каждый столбец ввода как независимый канал и разлагает каждый канал с течением времени. Выходной сигнал имеет ту же частоту дискретизации, что и входной сигнал, но размер выходного кадра в два раза меньше, чем размер входного кадра. Чтобы выбрать эту опцию, необходимо задать для параметра обработки ввода значение Columns as channels (frame based).
Allow multirate processing - При выборе этой опции входные и выходные данные блока имеют одинаковый размер, но частота дискретизации выходных данных вдвое меньше, чем у входных данных.
Некоторые настройки этого параметра приводят к тому, что блок имеет ненулевую задержку. Дополнительные сведения см. в разделе Задержка.
Вкладка «Типы данных»
Выберите режим округления для операций с фиксированной точкой. Коэффициенты фильтра не подчиняются этому параметру; они всегда округляются до Nearest.
Примечание
Параметры Режим округления (Rounding mode) и Сатурат (Saturate) при переполнении целых чисел не влияют на числовые результаты при наличии всех следующих условий:
Выход продукта: Inherit: Inherit via internal rule
Аккумулятор - Inherit: Inherit via internal rule
Вывод: Inherit: Same as accumulator
С этими настройками типа данных блок эффективно работает в режиме полной точности.
При выборе этого параметра блок насыщает результат операции с фиксированной точкой. При сбросе этого параметра блок переносит результат операции с фиксированной точкой. Для получения подробной информации о saturate и wrap, см. режим переполнения для операций с фиксированной точкой.
Примечание
Режим Округления (Rounding) и Насыщение (Saturate) для параметров переполнения целых чисел не влияют на числовые результаты при выполнении всех этих условий:
Тип выходных данных продукта: Inherit: Inherit via internal rule.
Тип данных аккумулятора: Inherit: Inherit via internal rule.
С этими настройками типа данных блок работает в режиме полной точности.
Укажите тип данных коэффициентов. Примеры использования типа данных коэффициентов в этом блоке приведены в разделах Типы данных с фиксированной точкой и Типы данных умножения. Можно установить для него значение:
Правило, наследующее тип данных, например: Inherit: Same word length as input
Выражение, которое вычисляет допустимый тип данных, например: fixdt(1,16,0)
Нажмите кнопку Show data type assistant (Показать помощник по типам данных
) для отображения помощника по типам данных, который поможет задать параметр Coefficients (Коэффициенты).
Дополнительные сведения см. в разделе Определение типов данных с помощью помощника по типам данных (Simulink).
Укажите минимальное значение коэффициентов фильтра. Значение по умолчанию: [] (не указано). Программное обеспечение Simulink использует это значение для выполнения следующих действий:
Автоматическое масштабирование типов данных с фиксированной точкой
Укажите максимальное значение коэффициентов фильтра. Значение по умолчанию: [] (не указано). Программное обеспечение Simulink использует это значение для выполнения следующих действий:
Автоматическое масштабирование типов данных с фиксированной точкой
Укажите тип выходных данных продукта. Примеры использования типа выходных данных продукта в этом блоке приведены в разделах Типы данных с фиксированной точкой и Типы данных умножения. Можно установить для него значение:
Правило, наследующее тип данных, например: Inherit: Inherit via internal rule. Дополнительные сведения об этом правиле см. в разделе Наследование через внутреннее правило.
Примечание
Фактическая длина слова вывода продукта может быть равна или больше рассчитанной длины слова вывода продукта, в зависимости от настроек на панели Аппаратная реализация (Hardware Implementation) диалогового окна Параметры конфигурации (Configuration Parameters).
Выражение, которое вычисляет допустимый тип данных, например: fixdt(1,16,0)
Нажмите кнопку Show data type assistant (Показать помощник по типам данных
), чтобы отобразить помощник по типам данных, который помогает задать параметр вывода продукта.
Дополнительные сведения см. в разделе Определение типов данных с помощью помощника по типам данных (Simulink).
Укажите тип данных накопителя. Примеры использования типа данных накопителя в этом блоке приведены в разделе Типы данных с фиксированной точкой. Для этого параметра можно установить значение:
Правило, наследующее тип данных, например: Inherit: Inherit via internal rule. Дополнительные сведения об этом правиле см. в разделе Наследование через внутреннее правило.
Выражение, которое вычисляет допустимый тип данных, например: fixdt(1,16,0)
Нажмите кнопку Show data type assistant (Показать помощник по типам данных
) для отображения помощника по типам данных, который поможет установить параметр Accumulator.
Дополнительные сведения см. в разделе Определение типов данных с помощью помощника по типам данных (Simulink).
Укажите тип выходных данных. Примеры использования типа выходных данных в этом блоке приведены в разделе «Типы данных с фиксированной точкой». Можно установить для него значение:
Правило, наследующее тип данных, например: Inherit: Same as accumulator
Выражение, которое вычисляет допустимый тип данных, например: fixdt(1,16,0)
Нажмите кнопку Show data type assistant (Показать помощник по типам данных
) для отображения помощника по типам данных, который поможет задать параметр Output (Вывод).
Для получения дополнительной информации см. раздел Типы данных управляющих сигналов (Simulink).
Укажите минимальное значение, которое должен выводить блок. Значение по умолчанию: [] (не указано). Программное обеспечение Simulink использует это значение для выполнения следующих действий:
Проверка диапазона моделирования (см. раздел Определение диапазонов сигналов (Simulink))
Автоматическое масштабирование типов данных с фиксированной точкой
Укажите максимальное значение, которое должен выводить блок. Значение по умолчанию: [] (не указано). Программное обеспечение Simulink использует это значение для выполнения следующих действий:
Проверка диапазона моделирования (см. раздел Определение диапазонов сигналов (Simulink))
Автоматическое масштабирование типов данных с фиксированной точкой
Выберите этот параметр, чтобы инструменты с фиксированной точкой не переопределяли типы данных, заданные в маске блока.
Плавающая точка с двойной точностью
Плавающая точка с одинарной точностью
Фиксированная точка (только подпись)
8-, 16- и 32-разрядные целые числа со знаком
[1] Флиге, Н. Дж. Многоскоростная цифровая обработка сигналов: многоскоростные системы, банки фильтров, вейвлеты. Западный Сассекс, Англия: John Wiley & Sons, 1994.
[2] Странг, Г. и Т. Нгуен. Вейвлеты и банки фильтров. Уэлсли, Массачусетс: Уэлсли-Кембридж Пресс, 1996.
[3] Вайдьянатан, П.П. Мультискоростные системы и банки фильтров. Энглвуд Клиффс, Нью-Джерси: Прентис Холл, 1993.