Начало работы с собственным компонентом HDL Coder поддержка с плавающей точкой

Нативная поддержка с плавающей точкой в HDL Coder™ позволяет вам сгенерировать код из своего проекта с плавающей точкой. Если ваш проект имеет комплексную математику и тригонометрические операции или имеет данные с большим динамическим диапазоном, используйте собственный компонент, с плавающей точкой.

В вашей модели Simulink®:

  • У вас могут быть типы данных с плавающей точкой с двойной точностью и с одинарной точностью и операции.

  • У вас может быть комбинация целого числа, фиксированной точки и операций с плавающей точкой. При помощи блоков Data Type Conversion можно выполнить преобразования между с одинарной точностью и типами данных с фиксированной точкой.

Сгенерированный код:

  • Выполняет стандарт IEEE 754 арифметики с плавающей точкой.

  • Независимо от цели. Можно развернуть код по любому типовому FPGA или ASIC.

  • Не требует блоков обработки с плавающей точкой или трудно блоков DSP с плавающей точкой на целевом ASIC или FPGA.

Поддержки HDL Coder:

  • Математические и тригонометрические функции

  • Большое подмножество блоков Simulink

  • Нестандартные числа

  • Настройка задержки оператора с плавающей точкой

Числовые факторы и податливость стандарта IEEE 754

HDL Coder генерирует код в соответствии со стандартом IEEE 754-2008 арифметики с плавающей точкой.

В стандарте IEEE 754-2008 число с плавающей запятой с одинарной точностью составляет 32 бита. 32-битный номер кодирует 1-битный знак, 8-битную экспоненту и 23-битную мантиссу.

Этот график является нормированным представлением для чисел с плавающей запятой. Можно вычислить фактическое значение нормального номера как:

value=(1)sign*(1+Σ23i=1b23i2i)*2(e127)

Поле экспоненты представляет экспоненту плюс смещение 127. Размер мантиссы составляет 24 бита. Ведущий бит является 1, таким образом, представление кодирует более низкие 23 бита.

Чтобы сгенерировать код, который выполняет стандарт IEEE 754, поддержки HDL Coder:

  • Вокруг к самому близкому режиму округления

  • Нестандартные числа

  • Исключения, такие как NaN (Не Номер), Inf и Нуль

  • Индивидуальная настройка ULP (Модули в Последнем Месте) и относительная точность

Для получения дополнительной информации смотрите Числовые Факторы с Собственным компонентом, С плавающей точкой.

Факторы типа данных

С нативной поддержкой с плавающей точкой HDL Coder поддерживает генерацию кода из моделей Simulink, которые содержат сигналы с плавающей точкой и сигналы фиксированной точки. Вы можете хотеть смоделировать свой проект с типами с плавающей точкой к:

  • Реализуйте алгоритмы, которые имеют большой или неизвестный динамический диапазон, который может выйти за пределы области значений представимых фиксированных точек.

  • Реализуйте комплексную математику и тригонометрические операции, которые затрудняют, чтобы спроектировать в фиксированной точке.

  • Получите более высокую точность и лучшую точность.

Проекты с плавающей точкой могут потенциально занять больше области на целевом компьютере. В вашей модели Simulink рекомендуется использовать типы данных с плавающей точкой в информационном канале алгоритма и типы данных с фиксированной точкой в управляющей логике алгоритма. Этот рисунок показывает раздел модели Simulink, которая использует Single и фиксированные точки. При помощи блоков Data Type Conversion можно выполнить преобразования между синглом и фиксированными точками.

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

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

Функции

Свойства

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

Больше о