Собственный компонент HDL Coder™, с плавающей точкой, может сгенерировать независимый от цели HDL-код из вашего проекта с плавающей точкой. Можно синтезировать проект с плавающей точкой на любом типичном FPGA или ASIC. Проекты с плавающей точкой имеют лучшую точность, более высокий динамический диапазон и более короткий цикл разработки, чем проекты фиксированной точки. Если ваш проект имеет комплексную математику и тригонометрические операции, используйте нативную технологию с плавающей точкой.
HDL Coder поддерживает несколько блоков Simulink® включая математику и тригонометрических блоков с нативной технологией с плавающей точкой.
В библиотеке HDL Floating Point Operations HDL Coder поддерживает все блоки, которые имеют single
и типы данных double
в режиме Native Floating Point
.
Определенные блоки, такие как Интегратор Дискретного времени и Дискретный ПИД-регулятор поддерживаются в режиме Native Floating Point
только, когда они используют нулевую стратегию задержки. Эти блоки содержат свойственную обратную связь, и использование незначения для стратегии задержки может привести к неспособности генератора кода выделить задержки. Для получения дополнительной информации смотрите, Выделяют Достаточные Задержки Операций С плавающей точкой.
В библиотеке Math Operations
поддерживаются эти блоки:
Имя блока | Поддерживаемый с одним типами данных | Поддерживаемый с двойными типами данных |
---|---|---|
Abs | Да | Да |
Добавление | Да | Да |
“()” Присвоение | Да | Да |
Смещение | Да | Да |
Комплекс к действительному-Imag | Да | Да |
Разделиться | Да | Да |
Скалярное произведение | Да | Да |
Усиление | Да | Да |
Математическая функция | Да | Нет |
MinMax | Да | Да |
Продукт | Да | Да |
Продукт элементов | Да | Да |
Действительный-Imag, чтобы объединить | Да | Да |
Взаимный Sqrt | Да | Да |
Изменение | Да | Да |
Sqrt | Да | Да |
Вычитание | Да | Да |
Сумма | Да | Да |
Сумма элементов | Да | Да |
Тригонометрическая функция | Да | Нет |
Унарный минус | Да | Да |
Векторная конкатенация | Да | Да |
Таблица показывает список поддерживаемых блоков в других библиотеках блоков HDL Coder.
Библиотека блоков | Поддерживаемые блоки с одним и двойными типами данных |
---|---|
Дискретный | Поддерживаемые блоки включают Нулевой Порядок, Содержат и набор блоков задержки включая Целочисленную Задержку и Коснувшуюся Задержку. |
Операции HDL | Все блоки поддерживаются. |
RAM HDL | Все блоки поддерживаются. |
Подсистемы HDL | Все блоки поддерживаются. |
Логика и битовые операции | Все блоки поддерживаются. |
Интерполяционные таблицы | Прямая Интерполяционная таблица (n-D) и n-D блоки Интерполяционной таблицы поддерживаются. |
Model Verification | Все блоки поддерживаются. |
Утилиты всей модели | Все блоки поддерживаются. |
Ports & Subsystems | Включите, сбросьте, введите, и выходные порты, модели - ссылки, и блоки подсистемы поддерживаются. |
Атрибуты сигнала | Все блоки поддерживаются. |
Маршрутизация сигнала | Все блоки поддерживаются. |
Источники | Поддерживаемые блоки включают Inport, Постоянный, и Наземные блоки. |
Приемники | Все блоки поддерживаются. |
В нативном режиме с плавающей точкой генератор кода не поддерживает эти блоки или блокирует архитектуру:
Фильтр Biquad.
Блок switch с входом к порту управления как тип с плавающей точкой.
Сумма Элементов с комплексными входными типами.
Функция MATLAB и Системные блоки MATLAB.
Скалярное произведение в комплексном режиме с Architecture как Tree
или Linear
.
Дискретный КИХ-Фильтр с Architecture кроме Fully Parallel
.
Мертвая зональная и мертвая динамическая зона.
Полярный к декартову.
Для блока Data Type Conversion:
Режим Stored Integer (SI)
для установки Input and output to have equal не поддержан.
Флажок Saturate on integer overflow нужно оставить очищенным.