Для блока MATLAB Function можно использовать параметр InstantiateFunctions для генерации VHDL® entity
или Verilog® module
для каждой функции. HDL Coder™ генерирует код для каждого entity
или module
в отдельном файле.
Опции InstantiateFunctions для блока MATLAB Function перечислены в следующей таблице.
Настройка InstantiateFunctions | Описание |
---|---|
'off' (по умолчанию) | Сгенерируйте код для функций в строке. |
'on' | Сгенерируйте |
Чтобы задать параметр InstantiateFunctions с помощью диалогового окна HDL Block Properties:
Щелкните правой кнопкой мыши блок MATLAB Function.
Выберите HDL Code > HDL Block Properties.
Для InstantiateFunctions выберите on.
Чтобы задать параметр InstantiateFunctions из командной строки, используйте hdlset_param
. Например, чтобы сгенерировать мгновенный код для функций в блоке MATLAB Function, myMatlabFcn
, в вашей подсистеме DUT, myDUT
, введите:
hdlset_param('my_DUT/my_MATLABFcnBlk', 'InstantiateFunctions', 'on')
Если вы хотите сгенерировать мгновенный код для некоторых функций, но не для других, включите опцию, чтобы сгенерировать мгновенный код для функций и использовать coder.inline
. Посмотрите coder.inline
для получения дополнительной информации.
Программное обеспечение генерирует код в строке, когда:
Вызовы функций находятся в пределах условного кода или for
циклы.
Любая функция вызывается с неконстантной struct
вход.
Функция имеет состояние, такое как постоянная переменная, и вызывается несколько раз.
Существует перечисление где угодно в функции проекта.
Проверьте настройки блока MATLAB Function