Циклы обратной связи в 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.
Подсветка цикла обратной связи не может подсветить блоки, которые имеют имена, которые содержат одинарную кавычку ('
).
В некоторых случаях подсветка цикла обратной связи может подсветить подсистему или один блок вместо блока самого низкого уровня.