Полифазный блок фильтров БПФ анализа
DSP System Toolbox/Фильтрация/Многомерные фильтры
Блок Channelizer разделяет широкополосный входной сигнал на несколько узких поддиапазонов с помощью основанной на FFT группы фильтров анализа. Банк фильтров использует прототип lowpass фильтра и реализован с помощью структуры полифазы. Можно задать коэффициенты фильтра непосредственно или через расчётные параметры. Когда вы задаете расчётные параметры, фильтр проектируется с помощью designMultirateFIR функция.
Этот блок принимает входы переменного размера. То есть во время симуляции можно изменить размер каждого входного канала. Количество каналов не может измениться.
x - Широкополосный сигналВходной широкополосный сигнал, который канализатор разделяет на несколько узкие полосы. Количество строк в входном сигнале должно быть кратным количеству полос частот группы фильтров. Каждый столбец входа соответствует отдельному каналу.
Этот порт не называется, пока вы не задаете Polyphase filter specification Coefficients и выберите параметр Specify coefficients from input port.
Типы данных: single | double
Поддержка комплексного числа: Да
coeffs - Прототип коэффициентов lowpass фильтраКоэффициенты lowpass прототипа. Должен быть по крайней мере один коэффициент на полосу частот. Если длина lowpass меньше, чем количество полос, блок с нулем заполняет коэффициенты.
Если вы задаете комплексные коэффициенты, блок проектирует фильтр прототипа, который центрируется на ненулевой частоте, также известной как полосно-пропускающий фильтр. Модулированные версии полосно-пропускающего фильтра прототипа появляются относительно фильтра прототипа и обернуты вокруг частотной области значений [− F s F s].
Этот порт появляется, когда вы задаете Polyphase filter specification Coefficients и выберите параметр Specify coefficients from input port.
Типы данных: single | double
Поддержка комплексного числа: Да
Port_1 - Несколько узкополосных сигналовНесколько узких поддиапазонов входа широкополосного сигнала. Каждый сигнал узкой полосы формирует столбец в выходе.
Если вход один из следующих:
L вектор -by-1 - Вывод является матрицей L/M -by M. M - количество полос частот.
L -by- N матрица - Вывод представляет собой L/M -by- M -by- N матрицу.
Типы данных: single | double
Поддержка комплексного числа: Да
Если параметр указан как настраиваемый, то можно изменить его значение во время симуляции.
Number of frequency bands - Количество диапазонов частот8 (по умолчанию) | положительное целое число, больше 1Количество полос частот, на M блок разделяет входной широкополосный сигнал. Этот параметр указывает длину БПФ и коэффициент десятикратного уменьшения, используемые алгоритмом.
Polyphase filter specification - Создание фильтра параметров или коэффициентовNumber of taps per band and stopband attenuation (по умолчанию) | Coefficients
Number of taps per band and stopband attenuation - Задайте параметры создания фильтра через параметры Number of filter taps per frequency band и Stopband attenuation (dB). Когда вы задаете расчётные параметры, фильтр проектируется с помощью designMultirateFIR функция.
Coefficients - Задайте коэффициенты фильтра непосредственно с помощью параметра Prototype lowpass filter coefficients или вводите их через coeffs порт.
DecimationFactor - Коэффициент десятикратного уменьшения8 (по умолчанию) | положительное целое числоКоэффициент десятикратного уменьшения D задан как положительное целое число, меньше или равное количеству < reservedrangesplaceholder0 > полос частот.
Если D коэффициента десятикратного уменьшения равен количеству частот полос M, то отношение M/ D равняется 1, и канализатор известен как максимально децимируемый канализатор.
Если отношение M/ D больше 1скорость выхода выборки отличается от расстояния между каналами, и канализатор известен как не максимально децимируемый канализатор. Если отношение является целым числом, канализатор известен как канализатор с избыточной дискретизацией целочисленных чисел. Если отношение не является целым числом, например, 4/3, канализатор известен как рационально избыточно дискретизированный канализатор. Для получения дополнительной информации см. Алгоритм.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Number of filter taps per frequency band - Количество коэффициентов фильтра на полосу12 (по умолчанию) | положительное целое числоКоличество коэффициентов фильтра, которые использует каждая полифазная ветвь. Количество полифазы ветвей совпадает с количеством частотных полос. Общее количество коэффициентов фильтра для lowpass прототипа определяется Number of frequency bands × Number of filter taps per frequency band. При данном затухании в полосе задерживания увеличение количества отводов на полосу сужает ширину перехода фильтра. В результате, существует более полезная полоса пропускания для каждого диапазона частот, за счет увеличения расчетов.
Чтобы включить этот параметр, установите Polyphase filter specification равным Number of taps per band and stopband attenuation.
Stopband attenuation (dB) - Затухание в полосе задерживания80 (по умолчанию) | положительный действительный скалярЗатухание в полосе задерживания lowpass-фильтра, в дБ. Это значение управляет максимальной величиной сглаживания от одной полосы частот к следующему. Когда затухание в полосе задерживания увеличивается, неравномерность в полосе пропускания уменьшается.
Чтобы включить этот параметр, установите Polyphase filter specification равным Number of taps per band and stopband attenuation.
Specify coefficients from input port - Флаг для задания коэффициентов lowpassКогда вы выбираете этот параметр, коэффициенты lowpass вводятся через coeffs порт. Когда вы очищаете этот параметр, коэффициенты задаются в диалоге блоков через параметр Prototype lowpass filter coefficients.
Чтобы включить этот параметр, установите Polyphase filter specification равным Coefficients.
Prototype lowpass filter coefficients - Коэффициенты lowpass прототипаrcosdesign(0.25,6,8,'sqrt') (по умолчанию) | вектор-строкаКоэффициенты lowpass прототипа. Значение по умолчанию является вектором коэффициентов, который rcosdesign(0.25,6,8,'sqrt') возвращает. Должен быть по крайней мере один коэффициент на полосу частот. Если длина lowpass меньше, чем количество полос, блок с нулем заполняет коэффициенты.
Если вы задаете комплексные коэффициенты, блок проектирует фильтр прототипа, который центрируется на ненулевой частоте, также известной как полосно-пропускающий фильтр. Модулированные версии полосно-пропускающего фильтра прототипа появляются относительно фильтра прототипа и обернуты вокруг частотной области значений [− F s F s].
Настраиваемый: Да
Чтобы включить этот параметр, установите Polyphase filter specification равным Coefficients и очистите параметр Specify coefficients from input port.
Поддержка комплексного числа: Да
Simulate using - Тип выполняемой симуляцииInterpreted execution (по умолчанию) | Code generation
Interpreted execution
Симулируйте модель с помощью MATLAB® интерпретатор. Эта опция сокращает время запуска и имеет более высокую скорость симуляции по сравнению с Code generation.
Code generation
Симулируйте модель с использованием сгенерированного кода C. Первый раз, когда вы запускаете симуляцию, Simulink® генерирует код С для блока. Код С повторно используется для последующих симуляций, пока модель не меняется. Эта опция требует дополнительного времени запуска, но обеспечивает более быстрые последующие симуляции.
Типы данных |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Типовой банк фильтров анализа состоит из серии параллельных полосно-пропускающих фильтров, которые разделяют вход широкополосный сигнал, x(n), на серии узких поддиапазонов. Каждый полосно-пропускающий фильтр сохраняет разный фрагмент входного сигнала. После уменьшения полосы пропускания одним из полосно-пропускающих фильтров сигнал уменьшается до более низкой частоты дискретизации, сопоставимой с новой полосой пропускания.

Чтобы эффективно реализовать банк фильтров анализа, канализатор использует прототип lowpass.
У прототипа фильтр lowpass есть импульсная характеристика h[n], нормализованная двухсторонняя пропускная способность 2π / M, и частота среза π / M. M - количество полос частот, то есть ветвей группы фильтров анализа. Это значение соответствует длине БПФ, которую использует банк фильтров. M может быть высоким порядка 2048 или более. Это затухание в полосе задерживания определяет минимальный уровень интерференции (сглаживания) от одной частотной полосы к другой. Эта неравномерность в полосе пропускания должен быть маленьким, чтобы входной сигнал не искажался в полосе пропускания.
Lowpass прототипа соответствует H0 (z) в группе фильтров. Первая ветвь группы фильтров содержит H0 (z), за которой следует дециматор. Другие M - 1 ветви содержат фильтры, которые являются модулированными версиями фильтра прототипа. Коэффициент модуляции задается следующим уравнением:
Передаточная функция модулированного k го полосно-пропускающего фильтра задается:
Этот рисунок показывает частотную характеристику M фильтров.

Чтобы получить характеристики частотной характеристики фильтра Hk(z), где k = 1,..., M − 1, равномерно сдвиньте частотную характеристику фильтра прототипа, H0(z), на множители 2,/ M. Каждый поддиапазонный фильтр, Hk (z), {k = 1,..., M - 1}, получают из фильтра прототипа.
Далее приведено эквивалентное представление диаграммы частотной характеристики с ω в диапазоне от [−

Частотные составляющие в входном сигнале, x(n), преобразуются по частоте в полосу частот основного диапазона путем умножения x(n) со сложными экспоненциалами, , где , и . Получившиеся сигналы продукта передаются через lowpass, H0(z). Выход lowpass относительно узок по ширине полосы пропускания. Понизите значение сигнала, сопоставимого с новой пропускной способностью. Выберите коэффициент десятикратного уменьшения, D ≤ M, где M количество ветвей банка фильтров анализа. Когда D < M, каналообразующий элемент известен как избыточно дискретизированный или не максимально децимируемый каналообразующий элемент.
Рисунок показывает банк фильтров анализа, который использует lowpass прототипа.

y1(n), y2(n), ..., yM-1(n) узкие поддиапазонные сигналы переведены в основной диапазон.
Группа фильтров анализа может быть эффективно реализована с помощью структуры полифазы. Для получения дополнительной информации о банке фильтров анализа смотрите Analysis Filter Bank.
Чтобы вывести полифазную структуру, начните с передаточной функции lowpass прототипа:
N + 1 - длина фильтра прототипа.
Можно переставить это уравнение следующим образом:
M - количество полифазы компонентов.
Можно записать это уравнение как:
E0 (zM), E1 (zM),..., EM-1 (zM) являются полифазными компонентами lowpass прототипа H0 (z).
Другие фильтры в группе фильтров Hk (z), где k = 1,..., M -1, являются модулированными версиями этого фильтра прототипа .
Можно записать передаточную функцию k-го модулированного полосно-пропускающего фильтра как.
Замена z на ze-jwk,
N + 1 - длина k-го фильтра.
В полифазной форме уравнение выглядит следующим образом:
Для всех каналов M в банке фильтров передаточная функция H (z) определяется:
Когда D = M, разделитель каналов известен как максимально децимированный разделитель каналов или критически дискретизированный разделитель каналов.
Вот многорасовые благородные тождества для десятикратного уменьшения, принимая, что D = M.

Для примера рассмотрим первую ветвь банка фильтров, которая содержит lowpass фильтр.

Замените H0 (z) своим полифазным представлением.

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

Для всех каналов M в банке фильтров передаточная функция H (z) определяется:
Матрица слева является дискретной матрицей преобразования Фурье (DFT). С помощью матрицы ДПФ эффективная реализация банка фильтров на основе прототипов lowpass выглядит так.

Когда доставляется первая входная выборка, переключатель подает этот вход в ветвь 0, и канализатор вычисляет первый набор выхода значений. Поскольку более выборки входа входят, шаги выключателя в направлении против часовой стрелки через <reservedrangesplaceholder7> −1 ветвей, <reservedrangesplaceholder6> −2, полностью, чтобы ветвиться 0, поставляя одну выборку за один раз каждой ветви. Когда переключатель приходит к ветви 0, channelizer выходов следующий набор выхода значений. Этот процесс продолжается, когда данные продолжают поступать. Каждый раз, когда переключатель приходит к первой ветви 0, канализатор выводит y0[m], y1[m],..., yM-1[m]. Каждая ветвь в канализаторе эффективно выводит одну выборку для каждого полученного ею M выборки. Следовательно, скорость дискретизации на выходе канализатора равна fs/ M.
Когда D < M, разделитель каналов известен как не максимально децимируемый разделитель каналов или избыточно дискретизированный разделитель каналов. В этом строении выходная частота выборки отличается от интервала между каналами. Не максимально децимированные канализаторы обеспечивают повышенную свободу проекта, но за счет увеличения вычислительных затрат.
Если отношение M/ D равняется целому числу, которое больше 1 и меньше или равно M − 1, каналообразующий элемент известен как каналообразующий элемент с избыточной дискретизацией. Если отношение M/ D не является целым числом, тогда канализатор известен как рационально-избыточно дискретизированный канализатор.
В этом строении, когда доставляется первая входная выборка, переключатель подает этот вход в ветвь 0, и канализатор вычисляет первый набор выхода значений. Поскольку более выборки входа входят, шаги выключателя в направлении против часовой стрелки через <reservedrangesplaceholder4> −1 ветвей, <reservedrangesplaceholder3> −2, полностью, чтобы ветвиться 0, поставляя одну выборку за один раз каждой ветви. Когда переключатель приходит к ветви 0, channelizer выходов следующий набор выхода значений. Этот процесс продолжается, когда данные продолжают поступать. Каждый раз, когда переключатель приходит к первой ветви 0, канализатор выводит y0[m], y1[m],..., yM-1[m].
Когда поступает больше данных и коммутатор подает эти выборки на первые D адреса, формальное содержимое этих адресов смещается на следующий набор D адресов, и этот процесс сдвига данных продолжается каждый раз, когда появляется новый набор D входных выборок.
Для каждой D входной выборки, которая подается в полифазную структуру, канализатор выводит M выборки, y0[m], y1[m],..., yM-1[m]. Этот процесс увеличивает скорость выхода выборки от fs/ M в случае максимально децимированного канализатора до fs/ D в случае не максимально децимированного канализатора.
Для получения дополнительной информации см. раздел [2].
После того, как каждая последовательность данных D-точки доставляется в секционированный M-ступенчатый полифазный фильтр, выходы M каскадов вычисляются и обусловливаются для доставки в БПФ M-точки. Сдвиг данных через фильтр вводит частотно-зависимый сдвиг фазы. Чтобы исправить этот сдвиг фазы и псевдонимы всех полос к DC, буфер кругового сдвига вставляется после полифазных фильтров и перед FFT M -точка.
С коммутатором, за которым следует полифазный фильтр M ступени, буфер кругового сдвига и матрица ДПФ, эффективная реализация банка фильтров на основе прототипов lowpass выглядит следующим образом.

[1] Harris, Fredic J, Multirate Signal Processing for Communication Systems, Prentice Hall PTR, 2004.
[2] Харрис, Ф. Дж., Крис Дик и Майкл Райс. «Цифровые приемники и передатчики, использующие Polyphase Filter Banks для беспроводной связи». IEEE® Транзакции по микроволновой теории и методам. 51, № 4 (2003).
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.

