Разорвать контур обратной связи, включающий сигналы данных между функциональными блоками вызова
Simulink/Порты и подсистемы
Используйте блок Function-Call Feedback Latch, чтобы разорвать цикл обратной связи сигналов данных между одним или несколькими блоками функциональных вызовов. В частности, разорвать петлю обратной связи, образованную одним из следующих способов.
Когда блоки function-call соединяются с ветвями одного и того же сигнала function-call
Поместите блок Function-Call Feedback Latch в сигнал обратной связи между разветвленными блоками. В результате блок защелки задерживает сигнал на входе блока функционального вызова адресата, и блок функционального вызова адресата выполняется перед блоком функционального вызова источника блока защелки.

Для запуска этой модели см. раздел Блоки вызовов функций, подключенные к ветвям того же сигнала вызова функций.
Когда цикл включает родительские и дочерние блоки вызова функций, где дочерний инициатор находится внутри родительского
Установите блок Function-Call Feedback Latch на сигнал обратной связи между потомком и родителем. Эта компоновка предотвращает изменение значения сигнала, считываемого родителем (FCSS1), во время выполнения нижестоящего элемента. Другими словами, родительский элемент считывает значение из предыдущего выполнения нижестоящего элемента (FCSS2).

Для запуска этой модели см. Function-Call Feedback Latch on Feedback Signal Between Child and Parent.
Использование блока защелки эквивалентно установке флажка Latch input for function-call feedback signals на блоке Inport в подсистеме или модели вызова функции назначения. Однако преимущество блока защелки по сравнению с использованием параметра диалога состоит в том, что можно конструировать подсистему или модель вызова функции назначения модульным образом и затем использовать ее либо в контексте, либо вне контекста контуров.
Блок Function-Call Feedback Latch лучше подходит, чем блоки Unit Delay или Memory при разрыве петель обратной связи function-call по следующим причинам:
Блок защелки задерживает сигнал обратной связи ровно для одного выполнения блока функционального вызова источника. Это поведение отличается от блоков Unit Delay или Memory для случаев, когда блоки подсистемы вызова функций могут выполняться несколько раз на данном этапе моделирования.
В отличие от блоков Unit Delay или Memory, блок-фиксатор может использоваться для размыкания циклов, включающих асинхронные подсистемы вызова функций.
Блок-защелка может привести к лучшей производительности с точки зрения оптимизации памяти для сгенерированного кода.
Типы данных |
|
Прямой проход |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулей |
|
Функция - защелка обратной связи вызова | Генератор вызовов функций | Разделение функций и вызовов | Подсистема вызова функций | Спусковой механизм