В библиотеке блоков HDL Coder™ подмножество блоков Simulink® поддерживает отображение библиотеки с плавающей точкой. Подмножество включает:
Блоки, которые выполняют основные математические операции, такие как сложение, умножение, и объединяют тригонометрический синус и косинусные функции. Эти блоки сопоставляют с одним или несколькими модулями IP с плавающей точкой на целевом устройстве FPGA.
Дискретные блоки, блоки, которые выполняют маршрутизацию сигнала и блоки, которые выполняют математические операции, такие как конкатенация матриц. Эти блоки не должны сопоставлять с модулем IP с плавающей точкой на целевом устройстве FPGA.
Следующая таблица обобщает блоки Simulink, которые могут сопоставить с FPGA ядра IP с плавающей точкой.
При отображении с ядрами IP с плавающей точкой некоторые блоки имеют ограничения режима.
Некоторые блоки не сопоставляют с ядром IP с плавающей точкой в стороннем оборудовании. Например, блок-диаграммы Abs к Altera® предназначаются для ядра IP, но не к целевому ядру IP Xilinx®.
Блок | IP мегафункции Altera (ALTFP и функции FP ALTERA) | Xilinx LogiCORE IP | Комментарии и ограничения |
---|---|---|---|
Abs | ✓ | — | |
Добавление | ✓ | ✓ | — |
Смещение | ✓ | ✓ | — |
Сравните с постоянным | ✓ | ✓ | — |
Сравните с нулем | ✓ | ✓ | — |
Преобразование типа данных | ✓ | ✓ |
|
Декрементный реальный мир | ✓ | ✓ | — |
Дискретный КИХ-фильтр | ✓ | ✓ | — |
Дискретная передача Fcn | ✓ | ✓ | — |
Интегратор дискретного времени | ✓ | ✓ | — |
Разделиться | ✓ | ✓ | — |
Скалярное произведение | ✓ | ✓ | |
Усиление | ✓ | ✓ | — |
Математическая функция | ✓ |
| |
MinMax | ✓ | ✓ | — |
Умножьтесь - Добавляют | ✓ | ✓ | — |
Продукт | ✓ | ✓ |
|
Продукт элементов | ✓ | ✓ |
|
Взаимный Sqrt | ✓ | — | |
Оператор отношения | ✓ | ✓ | — |
Sqrt | ✓ | ✓ | — |
Вычитание | ✓ | ✓ | — |
Сумма | ✓ | ✓ |
|
Сумма элементов | ✓ | ✓ |
|
Тригонометрическая функция | ✓ |
| |
Унарный минус | ✓ | ✓ | — |
Следующим являются блоки Simulink, которые генерируют HDL-код, но не должны сопоставлять с FPGA ядро IP с плавающей точкой.
Блок switch с управлением вводится кроме u2 ~= 0
.
Если вашим инструментом синтеза является Xilinx Vivado®, вы не можете использовать FPGA отображение библиотеки с плавающей точкой.
Сложные типы данных не поддержаны.
Оптимизация потоковой передачи не поддержана с отображением библиотеки с плавающей точкой.
Оптимизация разделения ресурсов не поддержана с Унарным Минус и блоками Abs.
Для Генерации Ядра IP, Тюремщика FPGA и рабочих процессов ввода-вывода FPGA Simulink Real-Time™, ваши порты DUT не могут использовать типы данных с плавающей точкой.