exponenta event banner

Двухканальный фильтр поддиапазонов синтеза

Реконструировать сигнал из высокочастотных и низкочастотных поддиапазонов

Библиотека

Фильтрация/многоскоростные фильтры

dspmlti4

  • Two-Channel Synthesis Subband Filter block

Описание

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

Блок увеличивает выборку высокочастотных и низкочастотных поддиапазонов на 2, а затем фильтрует результаты с помощью пары фильтров FIR верхних и нижних частот, как показано на следующем рисунке.

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

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

Дополнительные сведения об этом блоке см. в следующих разделах:

Задание фильтров FIR

Необходимо указать вектор числительных коэффициентов для фильтров нижних и верхних частот в коэффициентах фильтра FIR нижних частот и параметрах коэффициентов FIR верхних частот.

Например, чтобы задать фильтр со следующей передаточной функцией, введите вектор [b(1) b(2) ... b(m)].

H (z) = B (z) = b1 + b2z 1 +... + 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 с одинаковой частотой кадров. Блок обрабатывает каждый входной столбец как высокочастотные или низкочастотные поддиапазоны соответствующего выходного канала. Вход в самый верхний входной порт должен содержать высокочастотные поддиапазоны. Блок выводит одну матрицу, где каждый столбец восстанавливается из соответствующих столбцов каждой входной матрицы. Частота кадров на входе и выходе одинаковая, но размер кадра на выходе в два раза больше, чем на входе.

  • Если для параметра Rate options установлено значение Allow multirate processingблок обрабатывает каждый столбец входного сигнала как высокочастотные или низкочастотные поддиапазоны соответствующего выходного канала. Вход в самый верхний входной порт должен содержать высокочастотные поддиапазоны. Блок выводит одну матрицу, где каждый столбец восстанавливается из соответствующих столбцов входных матриц. Размеры входного и выходного кадров одинаковы, но частота кадров на выходе в два раза больше, чем на входе. Таким образом, общая частота дискретизации выходного сигнала в два раза больше, чем частота входной дискретизации.

    В этом режиме блок имеет один кадр задержки, как описано в разделе Задержка.

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

При установке для параметра обработки ввода значения Elements as channels (sample based)блок принимает любые две матрицы M-на-N с одинаковыми скоростями дискретизации. Блок обрабатывает каждую матрицу M-на-N как М· N независимые поддиапазоны. Каждый элемент входных матриц является высокочастотным или низкочастотным поддиапазоном соответствующего канала в выходной матрице. Вход в самый верхний входной порт должен содержать высокочастотные поддиапазоны. Блок выводит одну матрицу с теми же размерами, что и входные матрицы, но с частотой дискретизации, в два раза превышающей входную. Блок восстанавливает каждый элемент выходного сигнала из соответствующих элементов во входных матрицах.

В зависимости от настроек параметров конфигурации Simulink ® выходные данные могут иметь один образец задержки, как описано в разделе Задержка.

Время ожидания

При установке для параметра обработки ввода значения Columns as channels (frame based) и параметр Rate options to Enforce single-rate processing, блок двухканального фильтра поддиапазонов синтеза всегда имеет нулевую задержку задания. Задержка задания нуля означает, что блок распространяет первую входную выборку (принятую в момент времени t = 0) как первую выходную выборку.

Если для параметра Rate options установлено значение Allow multirate processing, блок двухканального фильтра поддиапазона синтеза может проявлять задержку. Величина задержки зависит от установки параметра обработки ввода этого блока и установки параметра обработки Simulink для каждой дискретной скорости как отдельного параметра конфигурации задачи. Следующая таблица суммирует условия, которые создают задержку, когда блок выполняет многоскоростную обработку.

Обработка входных данныхРассматривать каждую дискретную скорость как отдельную задачуВремя ожидания

Elements as channels (sample based)

Off

Ничего.

On

Один образец. Первая выходная выборка в каждом канале всегда имеет значение 0.

Columns as channels (frame based)

Off или On

Один кадр. Все выборки в первом выходном кадре имеют значение 0.

Примечание

Дополнительные сведения о задержках и режимах задания Simulink см. в разделах Избыточная алгоритмическая задержка (задержка задания) и Планирование и создание кода на основе времени (кодер Simulink).

Создание многоуровневых банков фильтров с диадическим синтезом

Блок двухканального фильтра поддиапазона синтеза является базовой единицей набора фильтров диадического синтеза. Можно подключить несколько из этих блоков для реализации набора фильтров n-уровня, как показано на следующем рисунке. Обзор банков фильтров для диадического синтеза см. на справочной странице банка фильтров для диадического синтеза.

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

В некоторых случаях вместо подключения нескольких блоков двухканального фильтра поддиапазонов анализа можно использовать блок банка фильтров Diadic Analysis, который быстрее и требует меньше памяти. В частности, блок Dyadic Analysis Filter Bank более эффективен при следующих условиях:

  • Вы восстанавливаете сигнал из 2n или n + 1 поддиапазонов.

  • Размер кадра восстанавливаемого сигнала кратен 2n.

  • Свойства поддиапазонов, с которыми вы работаете, совпадают со свойствами выходов блока банка фильтров Dyadic Analysis. Эти свойства описаны на справочной странице банка фильтров Dyadic Analysis.

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

Типы данных с фиксированной точкой

Двухканальный блок фильтра поддиапазона синтеза состоит из двух блоков интерполяции КИХ, как показано на следующей диаграмме.

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

Кроме того, входные данные блока Sum (Simulink), показанные на предыдущей диаграмме, накапливаются с использованием типа данных накопителя. Выходной сигнал блока Sum затем преобразуется из типа данных накопителя в тип выходных данных. Поэтому выходной сигнал двухканального фильтра поддиапазона синтеза находится в выходном типе данных. Эти типы данных также задаются в диалоговом окне блока, как описано в разделе «Параметры».

Параметры

Главная вкладка

Коэффициенты фильтра КИХ нижних частот

Вектор коэффициентов фильтра КИХ нижних частот в степени убывания z. Фильтр нижних частот должен быть фильтром половинного диапазона, который проходит полосу частот, остановленную фильтром, указанным в параметре коэффициентов FIR Highpass. Чтобы использовать этот блок для восстановления выходных данных двухканального блока фильтра поддиапазонов анализа, необходимо спроектировать фильтры в этом блоке, чтобы полностью восстановить выходные данные фильтров анализа. Дополнительные сведения см. в разделе Задание фильтров КИХ.

Коэффициенты фильтра High pass FIR

Вектор коэффициентов КИХ-фильтра верхних частот в степенях убывания z. Фильтр верхних частот должен быть фильтром половинного диапазона, который проходит полосу частот, остановленную фильтром, указанным в параметре коэффициентов КИХ нижних частот. Чтобы использовать этот блок для восстановления выходных данных двухканального блока фильтра поддиапазонов анализа, необходимо спроектировать фильтры в этом блоке, чтобы полностью восстановить выходные данные фильтров анализа. Дополнительные сведения см. в разделе Задание фильтров КИХ.

Обработка входных данных

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

  • 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 использует это значение для выполнения следующих действий:

Блокировка параметров типа данных от изменений с помощью инструментов с фиксированной точкой

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

Поддерживаемые типы данных

  • Плавающая точка с двойной точностью

  • Плавающая точка с одинарной точностью

  • Фиксированная точка (только подпись)

  • 8-, 16- и 32-разрядные целые числа со знаком

Ссылки

[1] Флиге, Н. Дж. Многоскоростная цифровая обработка сигналов: многоскоростные системы, банки фильтров, вейвлеты. Западный Сассекс, Англия: John Wiley & Sons, 1994.

[2] Странг, Г. и Т. Нгуен. Вейвлеты и банки фильтров. Уэлсли, Массачусетс: Уэлсли-Кембридж Пресс, 1996.

[3] Вайдьянатан, П.П. Мультискоростные системы и банки фильтров. Энглвуд Клиффс, Нью-Джерси: Прентис Холл, 1993.

Расширенные возможности

.
Представлен до R2006a