Восстановите сигнал от высокочастотных и низкочастотных поддиапазонов
Фильтрация / Многоскоростные фильтры
dspmlti4
Блок Two-Channel Synthesis Subband Filter восстанавливает сигнал от своих высокочастотных и низкочастотных поддиапазонов, каждого с половиной пропускной способности и половины частоты дискретизации исходного сигнала. Используйте этот блок, чтобы восстановить сигналы, анализируемые блоком Two-Channel Analysis Subband Filter.
Блок сверхдискретизировал верхний уровень - и низкочастотные поддиапазоны 2, и затем фильтрует результаты с парой highpass и КИХ-фильтров lowpass, как проиллюстрировано в следующем рисунке.
Блок реализует КИХ-фильтрацию и субдискретизацию шагов вместе с помощью многофазной структуры фильтра, которая более эффективна, чем прямой алгоритм "интерполирует затем фильтр", показанный на предыдущем рисунке. Можно реализовать многоуровневый двухместный набор фильтров синтеза путем соединения нескольких копий этого блока или при помощи блока Dyadic Synthesis Filter Bank. Для получения дополнительной информации смотрите Создающие Многоуровневые Двухместные Наборы фильтров Синтеза.
Необходимо обеспечить вектор из коэффициентов фильтра для lowpass и highpass КИХ-фильтров. Каждый фильтр должен быть полуленточным фильтром, который передает диапазон частот, который останавливает другой фильтр. Можно использовать этот блок, чтобы восстановить выход блока Two-Channel Analysis Subband Filter. Для этого необходимо спроектировать фильтры в этом блоке, таким образом, что они отлично восстанавливают выходные параметры аналитических фильтров.
Смотрите следующие темы для получения дополнительной информации об этом блоке:
Необходимо обеспечить вектор из коэффициентов числителя для lowpass, и highpass просачивается параметры Highpass FIR filter coefficients и Lowpass FIR filter coefficients.
Например, чтобы задать фильтр со следующей передаточной функцией, введите векторный [b(1) b(2) ... b(m)]
.
Каждый фильтр должен быть полуленточным фильтром, который передает диапазон частот, который останавливает другой фильтр. Можно использовать этот блок, чтобы восстановить выход блока Two-Channel Analysis Subband Filter. Для этого необходимо спроектировать фильтры в этом блоке, таким образом, что они отлично восстанавливают выходные параметры аналитических фильтров.
Лучший способ спроектировать совершенные фильтры реконструкции состоит в том, чтобы использовать wfilters
Wavelet Toolbox™ функция для фильтров и в этом блоке и в соответствующем блоке Two-Channel Analysis Subband Filter. Можно также использовать функции Signal Processing Toolbox™ и DSP System Toolbox™.
Блок Two-Channel Synthesis Subband Filter инициализирует все состояния фильтра, чтобы обнулить.
Когда вы устанавливаете параметр Input processing на Columns as channels (frame based)
, блок принимает любые два M-by-N матрицы с той же частотой кадров. Блок обрабатывает каждый столбец входа как верхний уровень - или низкочастотные поддиапазоны соответствующего выходного канала. Можно использовать параметр Rate options, чтобы задать, как блок передискретизирует вход:
Когда вы устанавливаете параметр Rate options на Enforce single-rate processing
, входом с блоком может быть любые два M-by-N матрицы с той же частотой кадров. Блок обрабатывает каждый входной столбец как верхний уровень - или низкочастотные поддиапазоны соответствующего выходного канала. Вход к самому верхнему входному порту должен содержать высокочастотные поддиапазоны. Блок выводит одну матрицу, где каждый столбец восстановлен из соответствующих столбцов каждой входной матрицы. Частота кадров ввода и вывода является тем же самым, но формат кадра выхода дважды больше чем это входа.
Когда вы устанавливаете параметр Rate options на Allow multirate processing
, блок обрабатывает каждый столбец входа как верхний уровень - или низкочастотные поддиапазоны соответствующего выходного канала. Вход к самому верхнему входному порту должен содержать высокочастотные поддиапазоны. Блок выводит одну матрицу, где каждый столбец восстановлен из соответствующих столбцов входных матриц. Форматы кадра ввода и вывода являются тем же самым, но частота кадров выхода дважды больше чем это входа. Таким образом полная частота дискретизации выхода дважды больше чем это входной частоты дискретизации.
В этом режиме блок имеет одну систему координат задержки, как описано в разделе Latency.
Когда вы устанавливаете параметр Input processing на Elements as channels (sample based)
, блок принимает любые два M-by-N матрицы с теми же частотами дискретизации. Блок обрабатывает каждый M-by-N матрица как M · N независимые поддиапазоны. Каждым элементом входных матриц является верхний уровень - или низкочастотный поддиапазон соответствующего канала в выходной матрице. Вход к самому верхнему входному порту должен содержать высокочастотные поддиапазоны. Блок выводит одну матрицу с теми же размерностями как входные матрицы, но частота дискретизации, которая является дважды больше чем это входа. Блок восстанавливает каждый элемент выхода от соответствующих элементов во входных матрицах.
В зависимости от установки ваших параметров конфигурации Simulink® выход может иметь одну выборку задержки, как описано в разделе Latency.
Когда вы устанавливаете параметр Input processing на Columns as channels (frame based)
и параметр Rate options к Enforce single-rate processing
, блок Two-Channel Synthesis Subband Filter всегда имеет определяющую задачу для нуля задержку. Zero-tasking latency означает, что блок распространяет первую входную выборку (полученный во время t = 0) как первая выходная выборка.
Когда вы устанавливаете параметр Rate options на Allow multirate processing
, блок Two-Channel Synthesis Subband Filter может показать задержку. Сумма задержки зависит от установки параметра Input processing этого блока и установки параметра конфигурации Treat each discrete rate as a separate task Simulink. Следующая таблица обобщает условия, которые производят задержку, когда блок выполняет многоскоростную обработку.
Input processing | Treat each discrete rate as a separate task | Задержка |
---|---|---|
| Off | 'none'. |
On | Одна выборка. Первая выходная выборка в каждом канале всегда имеет значение | |
| Off или On | Одна система координат. Все выборки в первой выходной системе координат имеют значение |
Примечание
Для получения дополнительной информации о задержке и режимах управления задачами Simulink, смотрите Избыточную Алгоритмическую Задержку (Определяющий задачу для Задержки) и Основанное на времени Планирование и Генерация кода (Simulink Coder).
Блок Two-Channel Synthesis Subband Filter является основной единицей двухместного набора фильтров синтеза. Можно соединить несколько из этих блоков, чтобы реализовать набор фильтров n-уровня, как проиллюстрировано в следующем рисунке. Для анализа двухместных наборов фильтров синтеза смотрите страницу с описанием блока Dyadic Synthesis Filter Bank.
Когда вы создаете набор фильтров путем соединения нескольких копий этого блока, выходные значения набора фильтров отличаются в зависимости от того, существует ли задержка. Хотя выходные значения отличаются, оба множества значений допустимы; различие является результатом изменений в задержке. Смотрите раздел Latency для получения дополнительной информации о том, когда задержка сможет произойти в блоке Two-Channel Analysis Subband Filter.
В некоторых случаях, вместо того, чтобы соединить несколько Двухканальных Аналитических блоков Фильтра Поддиапазона, можно использовать блок Dyadic Analysis Filter Bank, который быстрее и требует меньшей памяти. В частности, блок Dyadic Analysis Filter Bank более эффективен при следующих условиях:
Вы восстанавливаете сигнал от 2n или n + 1 поддиапазон.
Формат кадра сигнала, который вы восстанавливаете, является кратным 2n.
Свойства поддиапазонов вы работаете с теми соответствия из выходных параметров блока Dyadic Analysis Filter Bank. Эти свойства описаны на странице с описанием Dyadic Analysis Filter Bank.
Блок Dyadic Synthesis Filter Bank позволяет вам задавать фильтры набора фильтров путем обеспечения векторов из коэффициентов фильтра, как этот блок делает. Блок Dyadic Synthesis Filter Bank предоставляет дополнительную возможность использования основанных на вейвлете фильтров, которые блочные конструкции при помощи вейвлета вы задаете.
Блок Two-Channel Synthesis Subband Filter состоит из двух КИХ-блоков Интерполяции как показано в следующей схеме.
Для сигналов фиксированной точки можно установить коэффициент, продукт выход, аккумулятор и типы выходных данных, используемые в КИХ-блоках Интерполяции, как обсуждено в Параметрах. Для схемы, показывающей использование этих типов данных в КИХ-блоках, смотрите страницу с описанием блока FIR Interpolation.
Кроме того, входные параметры с блоком Sum (Simulink), показанным в предыдущей схеме, накапливаются с помощью типа данных аккумулятора. Выход блока Sum затем брошен от типа данных аккумулятора до типа выходных данных. Поэтому выход блока Two-Channel Synthesis Subband Filter находится в типе выходных данных. Вы также устанавливаете эти типы данных в диалоговом окне блока, как обсуждено в разделе Parameters.
Main Tab
Вектор из КИХ lowpass фильтрует коэффициенты в убывающих степенях z. Фильтр lowpass должен быть полуленточным фильтром, который передает диапазон частот, зашел в фильтр, заданный в параметре Highpass FIR filter coefficients. Чтобы использовать этот блок, чтобы восстановить выход блока Two-Channel Analysis Subband Filter, необходимо спроектировать фильтры в этом блоке, чтобы отлично восстановить выходные параметры аналитических фильтров. Для получения дополнительной информации смотрите Определение КИХ-Фильтров.
Вектор из highpass КИХ фильтрует коэффициенты в убывающих степенях z. Фильтр highpass должен быть полуленточным фильтром, который передает диапазон частот, зашел в фильтр, заданный в параметре Lowpass FIR filter coefficients. Чтобы использовать этот блок, чтобы восстановить выход блока Two-Channel Analysis Subband Filter, необходимо спроектировать фильтры в этом блоке, чтобы отлично восстановить выходные параметры аналитических фильтров. Для получения дополнительной информации смотрите Определение КИХ-Фильтров.
Задайте, как блок должен обработать вход. Можно установить этот параметр на одну из следующих опций:
Columns as channels (frame based)
(значение по умолчанию) — Когда вы выбираете эту опцию, блок обрабатывает каждый столбец входа как отдельный канал.
Elements as channels (sample based)
— Когда вы выбираете эту опцию, блок обрабатывает каждый элемент входа как отдельный канал.
Задайте правило обработки уровня для блока. Можно установить этот параметр на одну из следующих опций:
Enforce single-rate processing
— Когда вы выбираете эту опцию, блок обрабатывает каждый столбец входа как независимый канал и восстанавливает каждый канал в зависимости от времени. Выход имеет ту же частоту дискретизации как вход, но выходной формат кадра дважды больше чем это размера входного кадра. Чтобы выбрать эту опцию, необходимо установить параметр Input processing на Columns as channels (frame based)
.
Allow multirate processing
— Когда вы выбираете эту опцию, ввод и вывод блока одного размера, но частота дискретизации выхода дважды больше чем это входа.
Некоторые настройки этого параметра заставляют блок иметь ненулевую задержку. Смотрите Задержку для получения дополнительной информации.
Data Types Tab
Выберите округляющийся режим для операций фиксированной точки. Коэффициенты фильтра не выполняют этот параметр; они всегда вокруг к Nearest
.
Примечание
Настройки Rounding mode и Saturate on integer overflow не оказывают влияния на числовые результаты, когда все следующие условия существуют:
Product output является Inherit: Inherit via internal rule
Accumulator является Inherit: Inherit via internal rule
Output является Inherit: Same as accumulator
С этими настройками типа данных блок эффективно действует в режиме максимальной точности.
Когда вы выбираете этот параметр, блок насыщает результат своей операции фиксированной точки. Когда вы очищаете этот параметр, блок переносит результат своей операции фиксированной точки. Для получения дополнительной информации на saturate
и wrap
, смотрите режим переполнения для операций фиксированной точки.
Примечание
Rounding mode и параметры Saturate on integer overflow не оказывают влияния на числовые результаты, когда все эти условия соблюдают:
Типом данных Product output является Inherit: Inherit via internal rule
.
Типом данных Accumulator является Inherit: Inherit via internal rule
.
С этими настройками типа данных блок действует в режиме максимальной точности.
Задайте содействующий тип данных. Смотрите Типы данных с фиксированной точкой и Типы данных Умножения для рисунков, изображающих использование содействующего типа данных в этом блоке. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Same word length as input
Выражение, которое оценивает к допустимому типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Coefficients.
Смотрите Задают Типы данных Используя Ассистент Типа данных (Simulink) для получения дополнительной информации.
Задайте минимальное значение коэффициентов фильтра. Значением по умолчанию является []
(незаданный). Программное обеспечение Simulink использует это значение, чтобы выполнить:
Автоматическое масштабирование типов данных с фиксированной точкой
Задайте максимальное значение коэффициентов фильтра. Значением по умолчанию является []
(незаданный). Программное обеспечение Simulink использует это значение, чтобы выполнить:
Автоматическое масштабирование типов данных с фиксированной точкой
Задайте тип выходных данных продукта. Смотрите Типы данных с фиксированной точкой и Типы данных Умножения для рисунков, изображающих использование типа выходных данных продукта в этом блоке. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
. Для получения дополнительной информации об этом правиле смотрите, Наследовались через Внутреннее Правило.
Примечание
Фактический продукт вывел размер слова, может быть равным или больше, чем расчетный идеальный продукт выходной размер слова, в зависимости от настроек на панели Hardware Implementation диалогового окна Configuration Parameters.
Выражение, которое оценивает к допустимому типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Product output.
Смотрите Задают Типы данных Используя Ассистент Типа данных (Simulink) для получения дополнительной информации.
Задайте тип данных аккумулятора. Смотрите Типы данных с фиксированной точкой для рисунков, изображающих использование типа данных аккумулятора в этом блоке. Можно установить этот параметр на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
. Для получения дополнительной информации об этом правиле смотрите, Наследовались через Внутреннее Правило.
Выражение, которое оценивает к допустимому типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Accumulator.
Смотрите Задают Типы данных Используя Ассистент Типа данных (Simulink) для получения дополнительной информации.
Задайте тип выходных данных. Смотрите Типы данных с фиксированной точкой для рисунков, изображающих использование типа выходных данных в этом блоке. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Same as accumulator
Выражение, которое оценивает к допустимому типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Output.
Смотрите Типы данных Управляющего сигнала (Simulink) для получения дополнительной информации.
Задайте минимальное значение, которое должен вывести блок. Значением по умолчанию является []
(незаданный). Программное обеспечение Simulink использует это значение, чтобы выполнить:
Проверка диапазона симуляции (см., Указывает Диапазоны сигнала (Simulink)),
Автоматическое масштабирование типов данных с фиксированной точкой
Задайте максимальное значение, которое должен вывести блок. Значением по умолчанию является []
(незаданный). Программное обеспечение Simulink использует это значение, чтобы выполнить:
Проверка диапазона симуляции (см., Указывает Диапазоны сигнала (Simulink)),
Автоматическое масштабирование типов данных с фиксированной точкой
Выберите этот параметр, чтобы препятствовать тому, чтобы Fixed-Point Tool заменили типы данных, которые вы задаете на маске блока.
Плавающая точка двойной точности
Плавающая точка с одинарной точностью
Фиксированная точка (подписался только),
8-, 16-, и 32-битные целые числа со знаком
[1] Fliege, N. J. Многоскоростная цифровая обработка сигналов: многоскоростные системы, наборы фильтров, вейвлеты. Западный Сассекс, Англия: John Wiley & Sons, 1994.
[2] Странг, G. и Т. Нгуен. Вейвлеты и наборы фильтров. Веллесли, MA: Wellesley-Кембриджское нажатие, 1996.
[3] Vaidyanathan, P. P. Многоскоростные системы и наборы фильтров. Englewood Cliffs, NJ: Prentice Hall, 1993.