Десятикратно уменьшите сигнал с помощью каскадного интегрально-гребенчатого фильтра
DSP System Toolbox / Фильтрующий / Многоскоростные фильтры
Блок CIC Decimation выполняет уменьшение частоты дискретизации (децимация) на входном сигнале целочисленным коэффициентом. Фильтры Каскадной расчески интегратора (CIC) являются классом КИХ-фильтров линейной фазы, состоявших из части расчески и части интегратора.
Блок поддерживает действительные и комплексные входные параметры фиксированной точки. В его режиме normal mode операции блок CIC Decimation позволяет числовым значениям сумматора переполнять и переносить [1] [3]. Инфраструктура Фиксированной точки затем вызывает предупреждения переполнения появиться на командной строке. Это переполнение не имеет никакого значения.
Блок CIC Decimation требует лицензии Fixed-Point Designer™.
Port_1
— Входной сигналВвод данных, заданный как вектор или матрица. Количество входных строк должно быть кратным фактору децимации.
Если вход является фиксированной точкой, это должно быть целое число со знаком или подписанная фиксированная точка с наклоном степени двойки и нулевым смещением.
Типы данных: int8
| int16
| int32
| int64
| fixed point
Поддержка комплексного числа: Да
Port_1
— CIC десятикратно уменьшил выходCIC десятикратно уменьшил выходной параметр, возвращенный как вектор или матрица. Тип данных выхода определяется настройками в диалоговом окне блока. Сложность выходных соответствий тот из входа. Количество выходных строк (1/R) ✕Num, где R является фактором децимации, и Num является количеством входных строк.
Типы данных: int8
| int16
| int32
| int64
| fixed point
Поддержка комплексного числа: Да
Coefficient source
— Источник информации о фильтреDialog parameters
(значение по умолчанию) | Filter object
Источник информации фильтра, указанной как одно из следующего:
Dialog parameters
— Введите информацию о фильтре, таком как Decimation factor (R), Differential delay (M) и Number of sections (N), в диалоговом окне блока.
Filter object
— Задайте фильтр с помощью dsp.CICDecimator
Система object™.
Различные элементы появляются на диалоговом окне блока CIC Decimation в зависимости от того, выбираете ли вы Dialog parameters
или Filter object
в параметре Coefficient source.
Decimation factor (R)
— Фактор децимации
(значение по умолчанию) | целое числоФактор децимации фильтра, заданного как целое число, больше, чем 1.
Этот параметр появляется, когда вы устанавливаете Coefficient source на Dialog parameters
.
Differential Delay (M)
— Дифференциальная задержка
(значение по умолчанию) | положительное целое числоЗадайте дифференциальную задержку части расчески фильтра, M, как положительное целое число. Для получения дополнительной информации смотрите Структуру CIC-фильтра.
Этот параметр появляется, когда вы устанавливаете Coefficient source на Dialog parameters
.
Number of sections (N)
— Количество разделов фильтра
(значение по умолчанию) | положительное целое числоЗадайте количество разделов фильтра. Номер, который вы задаете, определяет количество разделов или в части расчески фильтра или в части интегратора фильтра. Это значение не представляет общее количество разделов в расческе и объединенных частях интегратора.
Этот параметр появляется, когда вы устанавливаете Coefficient source на Dialog parameters
.
Data type specification mode
— Задайте размер слова и дробную длину разделов фильтра и выведитеFull precision
(значение по умолчанию) | Minimum section word lengths
| Specify word lengths
| Binary point scaling
Выберите, как вы задаете размер слова фиксированной точки и дробную длину разделов фильтра и/или выводите:
Full precision
— Слово и дробные длины разделов фильтра и выходных параметров автоматически выбраны для вас. Все размеры слова (WL) установлены в:
где,
I Введите размер слова
M Дифференциальная задержка
N Количество разделов
R Фактор децимации
Все дробные длины установлены во входную длину части.
Minimum section word lengths
— Задайте размер слова фильтра выход в параметре Output word length. Блок автоматически выбирает размеры слова разделов фильтра и всех дробных длин, таким образом, что каждый из размеров слова раздела как можно меньше. Точность каждого раздела фильтра меньше в Full precision
режим, но область значений каждого раздела сохраняется.
Specify word lengths
— Задайте размеры слова разделов фильтра и выхода в параметрах Output word length и Section word lengths. Блок автоматически выбирает дробные длины для разделов фильтра и выхода, таким образом, что область значений каждого раздела сохраняется, когда младшие значащие биты отбрасываются.
Binary point scaling
— Задайте слово и дробные длины разделов фильтра и выхода в Section word lengths, Section fraction lengths, Output word length и параметрах Output fraction length.
Этот параметр появляется, когда вы устанавливаете Coefficient source на Dialog parameters
.
Section word lengths
— Размер слова разделов фильтра
] (значение по умолчанию) | скаляр | вектор-строкаРазмеры слова разделов фильтра, заданных как скаляр или вектор длины, равняются 2N, где N является количеством разделов фильтра. Размер слова раздела должен быть в области значений [2, 128].
Этот параметр появляется, когда вы устанавливаете Coefficient source на Dialog parameters
и Data type specification mode к любому Specify word lengths
или Binary point scaling
.
Section fraction lengths
— Дробные длины разделов фильтра
(значение по умолчанию) | целое числоДробные длины разделов фильтра, заданных как целое число.
Этот параметр появляется, когда вы устанавливаете Coefficient source на Dialog parameters
и Data type specification mode к Binary point scaling
.
Output word length
— Размер слова фильтра выводится
(значение по умолчанию) | целое числоРазмер слова фильтра выход, заданный как целое число в области значений [2, 128].
Этот параметр появляется, когда вы устанавливаете Coefficient source на Dialog parameters
и Data type specification mode к любой опции кроме Full precision
.
Output fraction length
— Дробная длина фильтра выводится
(значение по умолчанию) | целое числоДробная длина фильтра выход, заданный как целое число.
Этот параметр появляется, когда вы устанавливаете Coefficient source на Dialog parameters
и Data type specification mode к Binary point scaling
.
Rate options
— Правило обработки уровняEnforce single-rate processing
(значение по умолчанию) | Allow multirate processing
Задайте правило обработки уровня для блока:
Enforce single-rate processing
— Блок выполняет основанную на системе координат обработку и производит выход, который имеет ту же частоту дискретизации как вход. Чтобы десятикратно уменьшить сигнал при поддержании входной частоты дискретизации, блок уменьшает выходной формат кадра. В этом режиме входной размер столбца должен быть кратным Decimation Factor (R).
Allow multirate processing
— Блок выполняет основанную на выборке обработку. В этом режиме блок производит выход с частотой дискретизации, которая является R
времена медленнее, чем входная частота дискретизации.
Filter object
— Объект многоскоростного фильтраdsp.CICDecimator
Укажите, что имя многоскоростного фильтра возражает, что вы хотите, чтобы блок реализовал. Необходимо задать фильтр как dsp.CICDecimator
Системный объект.
Можно задать Системный объект в диалоговом окне блока или в переменной рабочей области MATLAB®.
Для получения информации о создании Системных объектов смотрите, Задают Объекты Базовой системы (MATLAB).
Этот параметр появляется, когда вы устанавливаете Coefficient source на Filter object
.
View Filter Response
— Просмотрите ответ фильтраgui button
Эта кнопка открывает Инструмент Визуализации Фильтра (fvtool
) от продукта Signal Processing Toolbox™ и отображений ответ фильтра фильтра задан в блоке. Для получения дополнительной информации о FVTool см. документацию Signal Processing Toolbox.
Если вы задаете фильтр в параметре Filter object, необходимо применить фильтр путем нажатия кнопки Apply перед использованием кнопки View Filter Response.
Типы данных |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Передаточная функция децимирующего фильтра CIC
где
HI является передаточной функцией части интегратора фильтра.
HC является передаточной функцией части расчески фильтра.
N является количеством разделов. Количество разделов в CIC-фильтре задано как количество разделов или в части расчески или в части интегратора фильтра. Это значение не представляет общее количество разделов в целом фильтре.
R является фактором децимации.
M является дифференциальной задержкой.
Блок CIC Decimation имеет следующую структуру CIC-фильтра. Структура состоит из разделов N каскадных интеграторов, сопровождаемых изменением уровня фактором R, сопровождаемый разделами N каскадных гребенчатых фильтров [1].
Единичная задержка во фрагменте интегратора CIC-фильтра может быть расположена или в feedforward или в пути к обратной связи. Эти две настройки дают к идентичной частотной характеристике фильтра. Однако числовые выходные параметры от этих двух настроек отличаются из-за задержки. Этот блок помещает единичную задержку в путь feedforward интегратора, потому что настройка предпочтена для реализации HDL.
[1] Hogenauer, E.B. “Экономичный Класс Цифровых фильтров для Децимации и Интерполяции”. Транзакции IEEE на Акустике, Речи и Обработке сигналов. Издание 29, Номер 2, 1981, стр 155–162.
[2] Мейер-Бэезе, U. Цифровая обработка сигналов с программируемыми пользователем вентильными матрицами. Нью-Йорк: Springer Verlag, 2001.
[3] Харрис, Фредерик Дж., многоскоростная обработка сигналов для систем связи. Верхний Сэддл-Ривер, NJ: PTR Prentice Hall, 2004.
Сгенерированный код использует memcpy
или memset
функции (string.h) при определенных обстоятельствах.
HDL Coder™ обеспечивает дополнительные параметры конфигурации, которые влияют на реализацию HDL и синтезируемую логику.
HDL Coder поддерживает опции Coefficient source Dialog parameters и Filter object.
Когда вы используете AddPipelineRegisters, регистры помещаются на основе структуры фильтра. Конвейерное размещение регистра определяет задержку.
Конвейерно обработайте размещение регистра | Задержка (такты) |
---|---|
Конвейерный регистр добавляется между этапами расчески дифференциаторов. | NS-1 , где NS количество разделов (в выходной стороне). |
AddPipelineRegisters | Вставьте конвейерный регистр между этапами расчета в фильтре. См. также AddPipelineRegisters (HDL Coder). |
ConstrainedOutputPipeline | Количество регистров, чтобы поместить при выходных параметрах путем перемещения существующих задержек в рамках проекта. Распределенная конвейеризация не перераспределяет эти регистры. |
InputPipeline | Количество входных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. |
OutputPipeline | Количество выходных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. |
Вектор и входные параметры системы координат не поддержаны для генерации HDL-кода.
Когда вы выбираете Dialog parameters, опция Filter Structure Zero-latency decimator
не поддержан для генерации HDL-кода. От Filter Structure выпадающий список выберите Decimator
.
Если вход является фиксированной точкой, это должно быть целое число со знаком или подписанная фиксированная точка с наклоном степени двойки и нулевым смещением.
dsp.CICCompensationDecimator
| dsp.CICCompensationInterpolator
| dsp.CICDecimator
| dsp.CICInterpolator
| dsp.FIRDecimator
| dsp.FIRHalfbandDecimator
| dsp.FIRHalfbandInterpolator
| dsp.FIRInterpolator
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.