Этот раздел содержит параметры в HDL Code Generation> панель Floating Point диалогового окна Configuration Parameters. Используйте эти параметры, чтобы задать стратегию задержки, обработать ли нестандартные числа в вашем проекте, и как выполнить умножение мантиссы. Чтобы задать эти настройки, Floating Point IP Library должен быть установлен в Native Floating Point
.
Задайте, хотите ли вы, чтобы проект сопоставил с минимальной или максимальной задержкой с нативными библиотеками с плавающей точкой.
Значение по умолчанию:
MAX
Опции:
MIN
Карты к минимальной задержке для нативных библиотек с плавающей точкой.
MAX
Карты к максимальной задержке для нативных библиотек с плавающей точкой.
ZERO
Не использует задержки для нативных библиотек с плавающей точкой.
Чтобы задать этот параметр, установите Floating Point IP Library на Native Floating Point
.
Задавать стратегию задержки:
Создайте целевой объект настройки с плавающей точкой для Native Floating Point
как библиотека с плавающей точкой.
fpconfig = hdlcoder.createFloatingPointTargetConfig('NativeFloatingPoint');
Задайте свойство LatencyStrategy
атрибута LibrarySettings
целевого объекта настройки с плавающей точкой.
fpconfig.LibrarySettings.LatencyStrategy = 'MIN';
Установите целевую настройку с плавающей точкой на модели и затем сгенерируйте HDL-код. Этот пример показывает, как установить настройку на модели sfir_single
и сгенерировать HDL-код для подсистемы symmetric_fir
:
hdlset_param('sfir_single','FloatingPointTargetConfig',fpconfig) makehdl('sfir_single/symmetric_fir')
Задайте, хотите ли вы обработать нестандартные числа в своем проекте. Нестандартные числа являются ненулевыми числами, которые меньше, чем самый маленький нормальный номер.
Значение по умолчанию: 'off'
Вставляет дополнительную логику, чтобы обработать нестандартные числа в вашем проекте.
Не добавляет дополнительная логика, чтобы обработать нестандартные числа в вашем проекте. Если вход является нестандартным значением, HDL Coder™ обрабатывает значение как нуль прежде, чем выполнить любые вычисления.
Чтобы задать этот параметр, установите Floating Point IP Library на Native Floating Point
.
Задавать стратегию задержки:
Создайте целевой объект настройки с плавающей точкой для Native Floating Point
как библиотека с плавающей точкой.
fpconfig = hdlcoder.createFloatingPointTargetConfig('NativeFloatingPoint');
Задайте свойство HandleDenormals
атрибута LibrarySettings
целевого объекта настройки с плавающей точкой.
fpconfig.LibrarySettings.HandleDenormals = 'on';
Установите целевую настройку с плавающей точкой на модели и затем сгенерируйте HDL-код. Этот пример показывает, как установить настройку на модели sfir_single
и сгенерировать HDL-код для подсистемы symmetric_fir
:
hdlset_param('sfir_single','FloatingPointTargetConfig',fpconfig) makehdl('sfir_single/symmetric_fir')
Задайте, как вы хотите, чтобы HDL Coder реализовал операцию умножения мантиссы, когда у вас есть блоки продукта в вашем проекте.
Значение по умолчанию: 'auto'
Опции:
Auto
Эта опция по умолчанию автоматически определяет, как реализовать умножение мантиссы в зависимости от Synthesis tool, который вы задаете.
Если вы не задаете Synthesis tool, эта установка выбирает реализацию Full Multiplier
по умолчанию.
Если вы задаете Altera Quartus II
как Synthesis tool, эта установка выбирает реализацию Full Multiplier
.
Если вы задаете Xilinx Vivado
или Xilinx ISE
как Synthesis tool, эта установка выбирает реализацию Part Multiplier Part AddShift
.
Full Multiplier
Задайте эту опцию, чтобы использовать только множители для реализации умножения мантиссы. Множители могут использовать модули DSP на целевом устройстве.
Part Multiplier Part AddShift
Задайте эту опцию, чтобы разделить реализацию в две части. Одна часть реализована со множителями. Другая часть реализована с комбинацией сумматоров и переключателей. Множители могут использовать модули DSP на целевом устройстве. Комбинация сумматоров и переключателей не использует DSP.
No Multiplier Full AddShift
Выберите эту опцию, чтобы использовать комбинацию сумматоров и множителей, чтобы реализовать умножение мантиссы. Эта опция не использует модули DSP на целевом устройстве. Можно также использовать эту опцию, если целевое устройство не содержит модули DSP.
Чтобы задать этот параметр, установите Floating Point IP Library на Native Floating Point
.
Задавать стратегию задержки:
Создайте целевой объект настройки с плавающей точкой для Native Floating Point
как библиотека с плавающей точкой.
fpconfig = hdlcoder.createFloatingPointTargetConfig('NativeFloatingPoint');
Задайте свойство MantissaMultiplyStrategy
атрибута LibrarySettings
целевого объекта настройки с плавающей точкой.
fpconfig.LibrarySettings.MantissaMultiplyStrategy = 'PartMultiplierPartAddShift';
Установите целевую настройку с плавающей точкой на модели и затем сгенерируйте HDL-код. Этот пример показывает, как установить настройку на модели sfir_single
и сгенерировать HDL-код для подсистемы symmetric_fir
:
hdlset_param('sfir_single','FloatingPointTargetConfig',fpconfig) makehdl('sfir_single/symmetric_fir')