Поиск циклов обратной связи

Циклы обратной связи в Simulink® проект может запретить балансировку и оптимизацию задержки, такие как совместное использование ресурсов и потоковая передача.

Чтобы найти циклы обратной связи в вашем проекте, которые препятствуют оптимизации, можно сгенерировать и запустить MATLAB® скрипт, который подсвечивает один или несколько циклов обратной связи в вашей исходной модели и сгенерированной модели. При запуске скрипта различные циклы обратной связи подсвечиваются различными цветами. Цикл обратной связи, подсвечивающий скрипт, сохраняется в той же целевой папке, что и HDL-код.

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

Скрипт может подсветить циклы обратной связи, которые препятствуют следующей оптимизации:

  • Совместное использование ресурсов

  • Вытекание

  • Переменный MATLAB конвейерная

  • Балансировка задержки

Настройка подсветки циклов обратной связи

По умолчанию подсветка циклов обратной связи включена. Этот параметр доступен:

  • В диалоговом окне Configuration Parameters на вкладке HDL Code Generation > Global Settings > Advanced выберите Highlight feedback loops inhibiting delay balancing and optimizations.

  • Чтобы сгенерировать цикл обратной связи, программно подсвечивая скрипт, используйте HighlightFeedbackLoops свойство с makehdl или hdlset_param. Для примера, чтобы сгенерировать цикл обратной связи подсветки скрипт для модели, myModel, введите:

    hdlset_param ('myModel', 'HighlightFeedbackLoops', 'on');

Удаление подсветки

По умолчанию HDL- Coder™ генерирует скрипт для подсветки циклов обратной связи и скрипт для удаления подсветки циклов обратной связи в вашей модели. Отключить подсветку можно одним из следующих способов:

  • Нажмите на clearhighlighting скрипт в Командном Окне MATLAB

  • На панели инструментов Simulink выберите Debug > Trace Signal.

Ограничения

  • Подсветка цикла обратной связи не может подсветить блоки, которые имеют имена, которые содержат одинарную кавычку (').

  • В некоторых случаях подсветка цикла обратной связи может подсветить подсистему или один блок вместо блока самого низкого уровня.

Похожие темы