Значения задержки операторов с плавающей точкой

Собственный компонент HDL Coder™ поддержка с плавающей точкой может сгенерировать HDL-код из вашего проекта с плавающей точкой. HDL Coder поддерживает несколько Simulink® блоки и математические и тригонометрические функции в нативном режиме с плавающей точкой. Эти таблицы показывают значения задержки по умолчанию этих операций с плавающей точкой.

Можно настроить настройки задержки для большинства блоков и проект для компромиссов между задержкой и Fmax путем определения пользовательских значений задержки. Можно также установить глобальную пользовательскую задержку нативного дюйм/с с плавающей точкой. Используйте ключевые слова, перечисленные в таблицах, чтобы настроить задержку дюйм/с с плавающей точкой. Для получения дополнительной информации смотрите Факторы Задержки с Нативной Плавающей точкой.

Вы видите задержку этих операторов с плавающей точкой в MATLAB® путем ввода этих команд.

nfpconfig = hdlcoder.createFloatingPointTargetConfig('NativeFloatingPoint');
nfpconfig.IPConfig

Математические операции

Эта таблица показывает список основных математических операций, которые поддерживаются с собственным компонентом, с плавающей точкой в HDL Coder и их информации о задержке. Основные математические операции включают сложение, вычитание, умножение, и так далее. Можно использовать большинство этих блоков с обоими single и double типы данных. Если вы не видите запись double тип данных, соответствующий блоку, это означает, что блок не поддерживает double типы.

Основные математические операторы

Блоки SimulinkКлючевые слова Тип данныхМинимальная Выходная задержкаМаксимальная Выходная задержка
AddADDSUB'double'611
Единственный611
Половина48
SubtractADDSUB'double'611
Единственный611
Половина48
ProductMUL'double'69
Единственный68
Половина46
DivideDIV'double'3161
Единственный1732
Половина1019
Math Function-'double'3060
Единственный1631
Multiply-AddMULTADDЕдинственный814
Rounding FunctionROUNDING'double'35
Единственный35
Unary MinusUMINUS'double'
Единственный
Половина
SignSIGNUM'double'
Единственный
AbsABS'double'
Единственный

Эта таблица показывает математические функции, которые поддерживаются с собственным компонентом, с плавающей точкой в HDL Coder и их информации о задержке. Можно выбрать функцию с помощью установки Function блока Math Function. Можно использовать эти блоки с single типы данных: double типы не поддержаны для блоков.

Математические функции

Блоки SimulinkКлючевые словаМинимальная Выходная задержкаМаксимальная Выходная задержка
HDL ReciprocalHDLRECIP1421
RemREM1524
ModMOD1626
SqrtSQRT1628
Reciprocal SqrtRSQRT1630
HypotHYPOT1733

Тригонометрические и экспоненциальные операции

Эта таблица показывает тригонометрические операции, которые поддерживаются с собственным компонентом, с плавающей точкой в HDL Coder и их информации о задержке. Можно выбрать функцию с помощью установки Function блока Trigonometric Function. Можно использовать эти блоки с single типы данных: double типы не поддержаны для блоков. Блок Sin имеет минимальную задержку 8 и максимальную задержку 14.

Тригонометрические функции

Блоки SimulinkКлючевые словаМинимальная Выходная задержкаМаксимальная Выходная задержка
SinSIN2727
CosCOS2727
TanTAN3333
SincosSINCOS2727
AsinASIN1723
AcosACOS1723
AtanATAN3636
Atan2ATAN24242
SinhSINH1830
CoshCOSH1727
TanhTANH2543
AsinhASINH9494
AcoshACOSH9393
AtanhATANH6767

Эта таблица показывает экспоненциальные операции, которые поддерживаются с собственным компонентом, с плавающей точкой в HDL Coder и их информации о задержке. Можно выбрать функцию с помощью установки Function блока Math Function. Можно использовать эти блоки с single типы данных: double типы не поддержаны для блоков кроме Журнала.

Экспонента/Логарифм/Степень

Блоки SimulinkКлючевые словаТип данныхМинимальная Выходная задержкаМаксимальная Выходная задержка
ExpEXPЕдинственный1626
ГоловаPOWЕдинственный3354
Pow10POW10Единственный1626
ЖурналLOGЕдинственный2027
Log10LOG10Единственный1727

Сравнения и преобразования

Эта таблица показывает операции, связанные со сравнением чисел и преобразованиями типа данных, которые поддерживаются с собственным компонентом, с плавающей точкой в HDL Coder и их информации о задержке. Можно использовать эти блоки с обоими single и double типы данных за исключением блока MinMax. Этот блок не поддерживает double типы данных. Для блока Data Type Conversion можно преобразовать между double, half, и single типы данных, и между и другими типами данных с фиксированной точкой с плавающей точкой.

Сравнения и преобразования

Блоки SimulinkКлючевые словаТип данныхМинимальная Выходная задержкаМаксимальная Выходная задержка
Data Type ConversionCONVERTDOUBLE_TO_NUMERICTYPE36
DOUBLE_TO_SINGLE36
HALF_TO_NUMERICTYPE23
HALF_TO_SINGLE12
NUMERICTYPE_TO_DOUBLE36
NUMERICTYPE_TO_HALF24
NUMERICTYPE_TO_SINGLE66
SINGLE_TO_DOUBLE35
SINGLE_TO_HALF23
SINGLE_TO_NUMERICTYPE66
Relational OperatorRELOP'double'13
Единственный13
Половина12
MinMaxMINMAXЕдинственный33

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

Руководства по моделированию

Функции

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

Больше о

Для просмотра документации необходимо авторизоваться на сайте