Сгенерируйте мгновенный код для функций

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

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

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

Сгенерируйте код для функций в строке.

'on'

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

Как сгенерировать мгновенный код для функций

Чтобы задать параметр InstantiateFunctions с помощью диалогового окна HDL Block Properties:

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

  2. Выберите HDL Code > HDL Block Properties.

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

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

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

Сгенерируйте код Inline для конкретных функций

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

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

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

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

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

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

  • Существует перечисление где угодно в функции проекта.

См. также

Похожие темы