Этот раздел содержит параметры в 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 реализовал операцию умножения мантиссы, когда у вас есть блоки Product в вашем проекте.
Значение по умолчанию: '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')