Блоки Simulink, поддерживаемые собственными блоками с плавающей точкой

HDL Coder™ native с плавающей точкой может сгенерировать независимый от цели HDL-код из вашего проекта с плавающей точкой. Синтезировать проект с плавающей точкой можно на любых типовых FPGA или ASIC. Проекты с плавающей точкой имеют лучшую точность, более высокую динамическую область значений и более короткий цикл разработки, чем проекты с фиксированной точкой. Если ваш проект имеет сложные математические и тригонометрические операции, используйте собственную технологию с плавающей точкой.

HDL Coder поддерживает несколько Simulink® блоки, включая математические и тригонометрические блоки с собственной технологией с плавающей точкой.

Библиотека операций с плавающей точкой HDL

В библиотеке HDL Floating Point Operations HDL Coder поддерживает все блоки, которые имеют single и double типы данных в Native Floating Point режим. Для некоторых блоков, таких как Discrete-Time Integrator и Discrete PID Controller, используйте стратегию нулевой задержки. Эти блоки содержат встроенные циклы обратной связи, и использование ненулевого значения для стратегии задержки может привести к тому, что генератор кода не сможет распределить задержки. Для получения дополнительной информации смотрите Распределение достаточных задержек для операций с плавающей точкой.

Когда вы используете half типы, эти блоки поддерживаются в Native Floating Point режим.

Поддерживаемые блоки Simulink в библиотеке математических операций

В Math Operations библиотека, эти блоки поддерживаются для генерации HDL-кода:

Имя блокаПоддерживается с половинными типами данныхПоддерживается с отдельными типами данныхПоддерживается с двойными типами данныхЗамечания
AbsНетДаДа
AddДаДаДа
AssignmentНетДаДа
BiasНетДаДа
Complex to Real-ImagНетДаДа
DivideДаДаДа
Dot ProductНетДаДа
GainДаДаДа
Math FunctionНетДаНет
MinMaxНетДаДа
ProductДаДаДаЕсли вы конфигурируете блок для выполнения матричного умножения путем установки значения Multiplication параметров блоков Matrix(*), значение DotProductStrategy должно быть установлено равным Fully Parallel.
Product of ElementsДаДаДа
Real-Imag to ComplexНетДаДа
Reciprocal SqrtНетДаДа
ReshapeДаДаДа
SqrtНетДаДа
SubtractДаДаДа
SumДаДаДа
Sum of ElementsДаДаДа
Trigonometric FunctionНетДаНет
Unary MinusДаДаДа
Vector ConcatenateДаДаДа

Поддерживаемые блоки Simulink в других библиотеках

Таблица показывает список поддерживаемых блоков для генерации HDL-кода в других HDL Coder библиотеках блоков.

Библиотека блоковПоддерживается с половинными типами данныхПоддерживается с отдельными типами данныхПоддерживается с двойными типами данных

Дискретный

Поддерживаемые блоки включают набор блоков задержки, включая синхронные блоки, и Integer Delay, и Tapped Delay.

Поддерживаемые блоки включают:

  • Zero Order Hold

  • Набор блоков задержки, включая синхронные блоки, и Integer Delay, и Tapped Delay.

Поддерживаемые блоки включают:

  • Zero Order Hold

  • Набор блоков задержки, включая синхронные блоки, и Integer Delay, и Tapped Delay.

Операции HDL

Блоки в этой библиотеке не поддерживаются.

Все блоки поддерживаются.

Все блоки поддерживаются.

HDL RAMs

Блоки в этой библиотеке не поддерживаются.

Все блоки поддерживаются.

Все блоки поддерживаются.

HDL-подсистемы

Все блоки поддерживаются.

Все блоки поддерживаются.

Все блоки поддерживаются.

Логические и битовые операции

Поддерживаемые блоки включают:

  • Compare to Constant

  • Relational Operator

  • Detect Change

  • Detect Increase

  • Detect Decrease

Все блоки поддерживаются.

Все блоки поддерживаются.

Интерполяционные таблицы

Блоки в этой библиотеке не поддерживаются.

Все блоки поддерживаются.

Все блоки поддерживаются.

Верификация модели

Блоки в этой библиотеке не поддерживаются.

Все блоки поддерживаются.

Все блоки поддерживаются.

Общемодельные утилиты

Блоки в этой библиотеке не поддерживаются.

Все блоки поддерживаются.

Все блоки поддерживаются.

Порты и подсистемы

Поддерживаются блоки Enable, Reset, входные и выходные порты, модели-ссылки и подсистемы.

Поддерживаются блоки Enable, Reset, входные и выходные порты, модели-ссылки и подсистемы.

Поддерживаются блоки Enable, Reset, входные и выходные порты, модели-ссылки и подсистемы.

Атрибуты сигнала

Поддерживаемые блоки включают:

  • Data Type Conversion

  • Data Type Duplicate

  • Rate Transition

  • Signal Specification

Все блоки поддерживаются.

Все блоки поддерживаются.

Маршрутизация сигналов

Все блоки поддерживаются.

Все блоки поддерживаются.

Все блоки поддерживаются.

Источники

Поддерживаемые блоки включают Inport, Constant и Ground блоки.

Поддерживаемые блоки включают Inport, Constant и Ground блоки.

Поддерживаемые блоки включают Inport, Constant и Ground блоки.

Сливы

Все блоки поддерживаются.

Все блоки поддерживаются.

Все блоки поддерживаются.

Пользовательские функции

MATLAB Function блоки поддерживаются.

MATLAB Function блоки поддерживаются.

MATLAB Function блоки поддерживаются.

Ограничения блоков Simulink

В собственном режиме с плавающей точкой генератор кода не поддерживает эти блоки или архитектуры блоков:

  • Biquad Filter.

  • Switch блок с входом в порт управления как тип с плавающей точкой.

  • Sum of Elements со сложными типами входов.

  • MATLAB System блоки.

  • Dot Product в комплексном режиме с Architecture как Tree или Linear.

  • Discrete FIR Filter со Architecture, отличными от Fully Parallel.

  • Dead Zone и Dead Zone Dynamic.

  • Polar to Cartesian.

  • Для блока Data Type Conversion:

    • Stored Integer (SI) режим для Input and output to have equal настройки не поддерживается.

    • Флажок Saturate on integer overflow должен быть снят.

См. также

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

Функции

Похожие примеры

Подробнее о