Десятикратно уменьшите сигнал с помощью каскадного интегрально-гребенчатого фильтра, оптимизированного для генерации HDL-кода
Поддержка HDL DSP System Toolbox / фильтрация
Блок CIC Decimation HDL Optimized десятикратно уменьшает входной сигнал при помощи децимирующего фильтра каскадной расчески интегратора (CIC). CIC-фильтры являются классом КИХ-фильтров линейной фазы, состоящих из части расчески и части интегратора. Структура децимирующего фильтра CIC состоит из разделов N каскадных интеграторов, фактора изменения уровня R, и затем разделов N каскадных гребенчатых фильтров. Для получения дополнительной информации о Децимирующем фильтре CIC, см. Алгоритмы.
Блок поддерживает фиксируемую ставку децимации. Это обеспечивает архитектуру, подходящую для аппаратного развертывания и генерации HDL-кода.
Блок поддерживает действительные и комплексные входные параметры фиксированной точки.
data
— Входные данныеВходные данные, заданные как целое число со знаком или signed fixed point
с размером слова, меньше чем или равным 32.
Типы данных: int8
| int16
| int32
| fixed point
Поддержка комплексного числа: Да
valid
— Индикация относительно допустимых входных данныхBoolean
скалярУправляющий сигнал, который указывает, допустимо ли входные данные. Когда этим значением является 1
(TRUE), блок получает значения от входного порта data. Когда этим значением является 0
(FALSE), блок игнорирует значения от входного порта data.
Типы данных: Boolean
reset
— Очищает внутренние состоянияBoolean
скалярОчищает внутренние состояния, заданные как булев скаляр.
Когда этим значением является 1
(TRUE), блок останавливает текущее вычисление и очищает все внутренние состояния. Когда reset является 0
(FALSE) и вход valid 1
(TRUE), блок запускает новую операцию фильтрации.
Чтобы включить этот порт, выберите параметр Enable reset input port.
Типы данных: Boolean
data
— Выходные данныеCIC десятикратно уменьшил выходные данные, возвращенные как скаляр.
Можно задать тип выходных данных блока. Смотрите тип Выходных данных.
Типы данных: int8
| int16
| int32
| fixed point
Поддержка комплексного числа: Да
valid
— Индикация относительно допустимых выходных данныхBoolean
скалярУправляющий сигнал, который указывает, допустимы ли данные из выходного порта data. Когда этим значением является 1
(TRUE), блок возвращает допустимые данные по выходному порту data. Когда этим значением является 0
(FALSE), значения на выходном порте data не допустимы.
Типы данных: Boolean
Decimation factor (R)
— Фактор децимации
(значение по умолчанию) | целое число от 2 до 2 048Задайте уровень фактора децимации, с которым вы хотите десятикратно уменьшить вход как целое число от 2 до 2 048.
Differential delay (M)
— Дифференциальная задержка
(значение по умолчанию) | 2
Задайте дифференциальную задержку части расчески блока как целое число от 1 до 2.
Number of sections (N)
— Количество интегратора и разделов расчески
(значение по умолчанию) | целое число от 1 до 6Задайте количество разделов или в части расчески или в части интегратора блока как целое число от 1 до 6.
Output data type
— Тип данных выходаFull precision
(значение по умолчанию) | Same word length as input
| Minimum section word lengths
Выберите тип данных, чтобы представлять выходные данные.
Full precision
— Тип выходных данных перебрасывается парой слов длина, равная входному размеру слова плюс биты усиления.
Same word length as input
— Тип выходных данных перебрасывается парой слов длина, равная входному размеру слова.
Minimum section word lengths
— Тип выходных данных использует размер слова, который вы задаете в параметре Output word length. Когда вы выбираете этот параметр, блок применяет алгоритм Сокращения внутренне. Для получения дополнительной информации о Сокращении алгоритма, см. [1].
Output word length
— Размер слова выхода
(значение по умолчанию) | целое число от 2 до 104Размер слова выхода, заданного как целое число от 2 до 104.
Когда вводимое значение Output word length находится в области значений 2 - 6, существуют возможности переполняемых выходных данных.
Чтобы включить этот параметр, установите параметр Output data type на Minimum section word lengths
.
Enable reset input port
— Сбросьте сигналoff
(значение по умолчанию) | on
Выберите этот параметр, чтобы включить входной порт reset.
Передаточная функция децимирующего фильтра CIC
где:
H я - передаточная функция части интегратора фильтра.
H C является передаточной функцией части расчески фильтра.
N является количеством разделов. Количество разделов в CIC-фильтре задано как количество разделов или в части расчески или в части интегратора фильтра. Это значение не представляет общее количество разделов в целом фильтре.
R является фактором децимации.
M является дифференциальной задержкой.
Блоку CIC Decimation HDL Optimized показали структуру CIC-фильтра в этом рисунке. Структура состоит из разделов N каскадных интеграторов, фактора изменения уровня R, сопровождаемого разделами N каскадных гребенчатых фильтров [1].
Единичная задержка в части интегратора CIC-фильтра может быть расположена или в feedforward или в пути к обратной связи. Эти две настройки дают к идентичной частотной характеристике фильтра. Однако числовые выходные параметры от этих двух настроек отличаются из-за задержки. Этот блок помещает единичную задержку в путь feedforward интегратора, потому что настройка предпочтена для реализации HDL.
Блок прореживает этап интегратора выход с помощью R, фиксируемой ставки децимации, предоставленной при помощи параметра Decimation factor (R). На этапе downsampler блок использует в противоречии с количеством допустимые входные выборки, которые зависят от уровня децимации. Блок предоставляет подкошенный выход части расчески.
Этот раздел объясняет как блок выходные параметры на основе выбора типа выходных данных. Давайте возьмем пример, блок с R, M и значениями N 8, 1, и 3, соответственно, с входом width 16. Выходной размер слова вычисляется как:
где:
B IN является входным размером слова.
B OUT является выходным размером слова.
Когда вы устанавливаете параметр Output data type на Full precision
, блок выходные данные с размером слова 25 путем добавления девяти битов усиления во входной размер слова 16.
Когда вы устанавливаете параметр Output data type на Same word length as input
, выходные данные о блоке с размером слова 16, который является тем же самым как входной размер слова 16. Внутренний интегратор и этапы расчески все еще используют тип данных полной точности с 25 битами.
Когда вы устанавливаете параметр Output data type на Minimum section word lengths
и Output word length к 16
, блок выходные данные с размером слова 16, путем изменения битной ширины на каждом этапе, на основе алгоритма сокращения.
Если Output word length меньше, чем количество битов, требуемых в блоке выход, младший значащий бит (LSB) s в более ранних стадиях, сокращено. Количество LSBs, чтобы отбросить на каждом этапе обеспечивается в алгоритме Hogenauer [1]. Этот алгоритм минимизирует потерю информации в выходных данных.
Этот рисунок показывает выход, и задержка блока для настройки по умолчанию, то есть, фиксировала ставку децимации с R, M и значениями N 2, 1, и 2, соответственно. Блок возвращает допустимые выходные данные в каждом втором цикле на основе фиксированного значения Decimation factor (R) 2. Задержка блока является 5 тактами, вычисленными как 3 + N.
Производительность синтезируемого HDL-кода меняется в зависимости от вашей цели и опций синтеза. Эта таблица показывает результаты синтеза данных ресурсов и данных о производительности блока с настройкой по умолчанию на фиксируемой ставке децимации. В настройке по умолчанию R, M и значения N равняются 2, 1, и 2, соответственно. Сгенерированный HDL предназначен к Xilinx® Zynq® XC7Z045-FFG900-2 FPGA. Проект достигает частоты часов 700,77 МГц.
Ресурс | Используемый номер |
---|---|
LUTs | 96 |
Регистры | 166 |
Ресурсы и частоты варьируются на основе R, M, и значений N и других значений параметров, выбранных в маске блока.
[1] Hogenauer, E.B. “Экономичный Класс Цифровых фильтров для Децимации и Интерполяции”. Транзакции IEEE на Акустике, Речи и Обработке сигналов. Издание 29, Номер 2, 1981, стр 155–162.
Этот блок поддерживает генерацию кода C/C++ для акселератора Simulink® и быстрых режимов Accelerator и для генерации компонента DPI.
HDL Coder™ обеспечивает дополнительные параметры конфигурации, которые влияют на реализацию HDL и синтезируемую логику.
Этот блок имеет одну, архитектуру HDL по умолчанию.
ConstrainedOutputPipeline | Количество регистров, чтобы поместить при выходных параметрах путем перемещения существующих задержек в рамках проекта. Распределенная конвейеризация не перераспределяет эти регистры. |
InputPipeline | Количество входных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. |
OutputPipeline | Количество выходных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. |
dsp.CICCompensationDecimator
| dsp.CICCompensationInterpolator
| dsp.CICDecimator
| dsp.CICInterpolator
| dsp.HDLCICDecimation
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.