В библиотеке блоков 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 | ✓ | — | |
Add | ✓ | ✓ | — |
Bias | ✓ | ✓ | — |
Compare To Constant | ✓ | ✓ | — |
Compare To Zero | ✓ | ✓ | — |
Data Type Conversion | ✓ | ✓ |
|
Decrement Real World | ✓ | ✓ | — |
Discrete FIR Filter | ✓ | ✓ | — |
Discrete Transfer Fcn | ✓ | ✓ | — |
Discrete-Time Integrator | ✓ | ✓ | — |
Divide | ✓ | ✓ | — |
Dot Product | ✓ | ✓ | |
Gain | ✓ | ✓ | — |
Math Function | ✓ |
| |
MinMax | ✓ | ✓ | — |
Multiply-Add | ✓ | ✓ | — |
Product | ✓ | ✓ |
|
Product of Elements | ✓ | ✓ |
|
Reciprocal Sqrt | ✓ | — | |
Relational Operator | ✓ | ✓ | — |
Sqrt | ✓ | ✓ | — |
Subtract | ✓ | ✓ | — |
Sum | ✓ | ✓ |
|
Sum of Elements | ✓ | ✓ |
|
Trigonometric Function | ✓ |
| |
Unary Minus | ✓ | ✓ | — |
Следующим являются блоки Simulink, которые генерируют HDL-код, но не должны сопоставлять с FPGA ядро IP с плавающей точкой.
Если вашим инструментом синтеза является Xilinx Vivado®, вы не можете использовать FPGA отображение библиотеки с плавающей точкой.
Сложные типы данных не поддержаны.
Оптимизация потоковой передачи не поддержана с отображением библиотеки с плавающей точкой.
Оптимизация разделения ресурсов не поддержана с блоками Abs и Unary Minus.
Для Генерации Ядра IP, Тюремщика FPGA и рабочих процессов ввода-вывода FPGA Simulink Real-Time™, ваши порты DUT не могут использовать типы данных с плавающей точкой.