Образцовый конечный импульсный фильтр ответа — HDL, оптимизированный (HDL Coder)
Блок Discrete FIR Filter HDL Optimized доступен с DSP System Toolbox™.
Для получения информации о поведении симуляции и параметрах блоков, смотрите Дискретный КИХ-Оптимизированный HDL Фильтра.
Для КИХ-фильтров с комплексными коэффициентами, или с многоканальными или основанными на кадре входными параметрами, используют блок Discrete FIR Filter вместо этого.
Блок обеспечивает три структуры фильтра. Систолическая архитектура прямой формы обеспечивает полностью параллельную реализацию, которая делает эффективное использование блоков Xilinx® DSP и Intel®. Прямая форма транспонировала архитектуру, полностью параллельная реализация и подходит для приложений ASIC и FPGA. Частично последовательная систолическая архитектура обеспечивает конфигурируемую последовательную реализацию, которая также делает эффективное использование блоков DSP FPGA. Для реализации фильтра, которая совпадает со множителями, конвейерные регистры и предварительные сумматоры к настройке DSP вашего поставщика FPGA, задают ваше целевое устройство, когда вы генерируете HDL-код.
Все три структуры оптимизируют аппаратные ресурсы путем совместного использования множителей для симметричных или антисимметричных фильтров. Параллельные реализации также удаляют множители для коэффициентов с нулевым знаком такой как в полуленточных фильтрах, и Гильберт преобразовывает.
Можно установить параметры блоков делать компромиссы между использованием ресурса и пропускной способностью.
Для самой высокой пропускной способности выберите полностью параллельную систолическую или транспонированную архитектуру. Сгенерированный код может принять входные данные и обеспечивает отфильтрованные выходные данные на каждом цикле.
Для уменьшаемой области выберите частично последовательную систолическую архитектуру. Затем задайте правило что использование блока, чтобы сериализировать фильтр или на основе входной синхронизации или на основе использования ресурсов. Чтобы задать последовательный фильтр с помощью входного правила синхронизации, установите Specify serialization factor as на Minimum number of cycles between valid input samples
и выберите Number of cycles, чтобы быть больше, чем или равными 2
. В этом случае фильтр принимает только входные выборки, которые являются, по крайней мере, циклами Number of cycles независимо. Чтобы задать последовательный фильтр, использующий правило ресурса, установите Specify serialization factor as на Maximum number of multipliers
и установите Number of multipliers быть меньше, чем количество коэффициентов фильтра. В этом случае фильтр принимает входные выборки, которые являются, по крайней мере, NumCoeffs/NumMults
независимо.
Количество регистров, чтобы поместить при выходных параметрах путем перемещения существующих задержек в рамках проекта. Распределенная конвейеризация не перераспределяет эти регистры. Значение по умолчанию 0. См. также ConstrainedOutputPipeline.
Количество входных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. Значение по умолчанию 0. См. также InputPipeline.
Количество выходных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. Значение по умолчанию 0. См. также OutputPipeline.
Блок Discrete FIR Filter HDL Optimized не поддерживает:
Генерация HDL-кода для типов входных данных с плавающей точкой.
Комплексные коэффициенты.
Векторные входные параметры. Блок демонстрационный базирующийся, принимая один скаляр за один раз.
Оптимизация разделения ресурсов через HDL Coder™. Вместо этого установите Filter structure на Partly serial systolic
и сконфигурируйте фактор сериализации или на основе входной синхронизации или на основе использования ресурсов.