Регенерация кода в ускоренных моделях

Изменение структуры вашей модели заставляет Быстрый Режим Accelerator регенерировать независимый исполняемый файл, и для Режима Accelerator, чтобы регенерировать целевой код и обновление (перезапись) существующий файл MEX. Изменение значения настраиваемого параметра не инициировало восстанавливание.

Определите, восстановит ли симуляция

Акселератор и Быстрые Режимы Accelerator используют контрольную сумму, чтобы определить, изменилась ли модель, указав, что код должен быть регенерирован. Контрольная сумма является массивом четырех целых чисел, вычисленных с помощью алгоритма контрольной суммы MD5 на основе атрибутов модели и блоков, которые это содержит.

  1. Используйте команду Simulink.BlockDiagram.getChecksum, чтобы получить контрольную сумму для вашей модели. Например:

    cs1 = Simulink.BlockDiagram.getChecksum('myModel');
    

  2. Получите вторую контрольную сумму после того, как вы измените свою модель. Код регенерирует, если новая контрольная сумма не совпадает с предыдущей контрольной суммой.

  3. Используйте информацию в контрольной сумме, чтобы определить, почему цель симуляции восстановила.

Для подробного объяснения этой процедуры см. модель slAccelDemoWhyRebuild в качестве примера.

Параметр, настраивающий быстрый режим Accelerator

В модели восстанавливает, Быстрый Режим Accelerator обрабатывает блок-схему и параметры периода выполнения по-другому по сравнению с другими параметрами.

Настройка параметров блок-схемы

Можно изменить некоторые параметры блок-схемы во время симуляции, не вызывая восстанавливание. Настройте эти параметры с помощью команды set_param или с помощью диалогового окна Model Configuration Parameters. Эти параметры блок-схемы включают:

Настройка параметров периода выполнения

Чтобы настроить параметры периода выполнения для максимального ускорения в Быстром Режиме Accelerator, выполните эту процедуру, которая приводит к лучшим результатам, чем использование set_param для той же цели:

  1. Соберите параметры периода выполнения в структуре параметра периода выполнения, в то время как создание быстрого акселератора предназначается для исполняемого файла с помощью функции Simulink.BlockDiagram.buildRapidAcceleratorTarget.

  2. Чтобы изменить параметры, используйте функцию Simulink.BlockDiagram.modifyTunableParameters.

  3. Чтобы задать измененные параметры к команде sim, используйте параметры RapidAcceleratorUpToDateCheck и RapidAcceleratorParameterSets.

Все другие изменения параметра могут требовать восстанавливания модели.

Изменения параметраПройден Непосредственно к команде simПройден Графически с помощью Блок-схемы или через команду set_param
Время выполненияНе требует восстанавливают Может потребовать восстанавливают
Блок-схема (регистрирующий параметры)Не требует восстанавливают Не требует восстанавливают

Для получения информации об ограничениях приспособляемости параметра с ускоренными режимами симуляции смотрите Факторы Приспособляемости и Ограничения для Других Целей Моделирования.

Связанные примеры

Больше о