В библиотеке блоков 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 не могут использовать типы данных с плавающей точкой.