Настройки разделения ресурсов для различных блоков

Разделение ресурсов является оптимизацией области, в которой HDL Coder™ идентифицирует несколько функционально эквивалентных ресурсов и заменяет их на один ресурс. Данные мультиплексируются временем по совместно используемому ресурсу, чтобы выполнить те же операции. Чтобы узнать больше, как разделение ресурсов работает, смотрите Разделение ресурсов.

Можно следовать этим инструкциям, чтобы изучить, как использовать оптимизацию разделения ресурсов эффективно с блоками теми, которые Добавляют и продукт. Каждая инструкция имеет уровень серьезности, который указывает на уровень требований соответствия. Чтобы узнать больше, смотрите Уровни серьезности Руководств по моделированию HDL.

Разделение ресурсов добавляет блоки

ID инструкции

3.1.1

Серьезность

Рекомендуемый

Описание

Чтобы совместно использовать несколько Добавляют блоки:

Разделение ресурсов блоков усиления

ID инструкции

3.1.2

Серьезность

Рекомендуемый

Описание

Когда вы совместно используете несколько блоков Усиления в своем проекте, оптимизация вставляет логику сериализации и десериализации, чтобы совместно использовать ресурсы. Эта дополнительная логика может стать областью наверху, если вы не совместно используете большое количество ресурсов. Поэтому, если ваш проект не содержит большое количество блоков Усиления, чтобы совместно использовать, рекомендуется, чтобы вы отключили оптимизацию разделения ресурсов. Совместно использовать несколько блоков Усиления:

Совместно использовать несколько блоков Усиления:

  • Определите, как реализовать блок Gain. HDL Coder не совместно использует блоки Усиления ни в одном из этих случаев:

    • Набор параметра ConstMultiplierOptimization к csd или fcsd.

    • Параметр Gain является степенью двойки.

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

  • Задайте StreamingFactor для блоков Усиления с векторными вводами или выводами.

  • Задайте SharingFactor для блоков Усиления со скалярными вводами или выводами.

  • Определите, выполнить ли разделение ресурсов на существующей тактовой частоте или на более высокой тактовой частоте. Чтобы использовать более высокую тактовую частоту, задайте фактор Сверхдискретизации, больше, чем 1.

  • Используйте те же настройки атрибута синтеза, если вы задаете свойство блока DSPStyle для блоков Усиления. HDL Coder не совместно использует множители, которые имеют различные настройки атрибута синтеза.

Разделение ресурсов блоков продукта

ID инструкции

3.1.3

Серьезность

Рекомендуемый

Описание

Совместно использовать несколько блоков продукта:

  • Задайте 18 как порог разделения Множителя при предназначении для устройств Xilinx® и 25 как порог при предназначении для устройств Intel®. Эта установка создает больше возможностей разделения ресурсов для множителей с широкой битной шириной, которая уменьшает использование DSPS на FPGA.

  • Задайте порог продвижения Множителя, если вы хотите совместно использовать блоки продукта, которые имеют различные размеры слова. Порог продвижения множителя является максимальным размером слова, которым HDL Coder продвигает множитель для совместного использования с другими множителями.

  • Уезжайте установка Share Multipliers включила и минимум совместного использования Множителя bitwidth к 0.

  • Задайте StreamingFactor для подсистем, которые содержат блоки продукта с векторными вводами или выводами.

  • Задайте SharingFactor для подсистем, которые содержат блоки продукта со скалярными вводами или выводами.

  • Используйте блок Gain вместо блока продукта, когда одни из входных параметров к блоку продукта будут константой. Используйте постоянное значение в качестве параметра Gain блока Gain. Если вы используете типы данных с плавающей точкой в режиме Native Floating Point, HDL Coder преобразовывает блок продукта в блок Gain автоматически во время генерации кода. Чтобы узнать больше, смотрите, Упрощают Постоянные Операции и Уменьшают Сложность Проекта в HDL Coder.

  • Определите, выполнить ли разделение ресурсов на существующей тактовой частоте или на более высокой тактовой частоте. Чтобы использовать более высокую тактовую частоту, задайте фактор Сверхдискретизации, больше, чем 1.

  • Используйте те же настройки атрибута синтеза, если вы задаете свойство блока DSPStyle для блоков продукта. HDL Coder не совместно использует множители, которые имеют различные настройки атрибута синтеза.

Разделение ресурсов умножается - добавляют блоки

ID инструкции

3.1.4

Серьезность

Рекомендуемый

Описание

Чтобы совместно использовать несколько Умножаются - Добавляют блоки:

Смотрите также

Параметры конфигурации Simulink

Связанные примеры

Больше о