exponenta event banner

Создание кода экземпляра для функций

Для блока MATLAB Function можно использовать параметр InstantiateFunctions для создания VHDL ®entity или Verilog ®module для каждой функции. HDL Coder™ генерирует код для каждого entity или module в отдельном файле.

Опции InstantiateFunctions для блока MATLAB Function перечислены в следующей таблице.

Настройка функций InstantiateFunctionsОписание
'off' (по умолчанию)

Создание кода для встроенных функций.

'on'

Создание VHDL entity или Verilog module для каждой функции и сохраните каждую module или entity в отдельном файле.

Создание кода экземпляра для функций

Чтобы задать параметр InstantiateFunctions с помощью диалогового окна Свойства блока HDL (HDL Block Properties), выполните следующие действия.

  1. Щелкните правой кнопкой мыши функциональный блок MATLAB.

  2. Выберите «Код HDL» > «Свойства блока HDL».

  3. Для InstantiateFunctions выберите on.

Чтобы задать параметр InstantiateFunctions из командной строки, используйте hdlset_param. Например, для создания кода с возможностью создания экземпляра для функций в блоке MATLAB Function, myMatlabFcn, в вашей подсистеме DUT, myDUT, введите:

hdlset_param('my_DUT/my_MATLABFcnBlk', 'InstantiateFunctions', 'on')

Создание кода в строке для определенных функций

Если требуется создать код с возможностью создания экземпляров для одних функций, но не для других, включите параметр, чтобы создать код с возможностью создания экземпляров для функций и используйте coder.inline. Посмотрите coder.inline для получения подробной информации.

Ограничения для создания исполняемого кода для функций

Программное обеспечение генерирует код «на лету», когда:

  • Вызовы функций находятся в условном коде или for петли.

  • Любая функция вызывается с несогласованным struct вход.

  • Функция имеет состояние, такое как постоянная переменная, и вызывается несколько раз.

  • В любом месте функции проектирования имеется перечисление.

См. также

Связанные темы