Этот раздел содержит параметры на панели HDL Code Generation > Floating Point диалогового окна Параметров конфигурации. Используйте эти параметры, чтобы задать стратегию задержки, обрабатывать ли денормальные числа в вашем проекте и как выполнить умножение мантиссы. Чтобы задать эти настройки, 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
Эта опция по умолчанию автоматически определяет, как реализовать умножение мантиссы в зависимости от заданного 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')