Разделение вызова функции

Обеспечьте соединение для разделения сигнала вызова функции

  • Библиотека:
  • Simulink / Ports & Subsystems

Описание

Блок Function-Call Split позволяет сигналу вызова функции перейти и соединиться с несколькими подсистемами вызова функций или моделями вызова функции.

Function-Call Split выходные параметры несколько сигналов вызова функции создать несколько ответвлений из единственного сигнала вызова функции. В некоторых случаях, когда вы используете этот блок, вам не нужен инициатор вызова функции, чтобы создать несколько сигналов вызова функции вызвать набор моделей вызова функции или подсистем вызова функций.

Подсистема вызова функций или модель вызова функции, соединенная с выходным портом блока Function-Call Split, который отмечен точкой, выполняются перед подсистемами или моделями, соединенными с другими выходными портами. Если зависимости по данным между подсистемами или моделями не поддерживают заданный порядок выполнения, блок Function-Call Split возвращает ошибку. Чтобы устранить эту ошибку, считайте выбор входного параметра Фиксатора для сигналов обратной связи подсистемы вызова функций выходным параметром на одном или нескольких блоках Inport моделей подсистем вызова функций вовлеченный в цикл зависимости по данным. Выбор этой опции задерживает соответствующий входной сигнал, таким образом устраняя цикл зависимости по данным.

Для модели, чтобы содержать блоки Разделения Вызова функции, необходимо установить следующую диагностику на error: Образцовые Параметры конфигурации> Диагностика> Возможность соединения> Недопустимая связь вызова функции.

Если вы выбираете образцовый пункт меню Display> Blocks> Sorted Execution Order, то порядок выполнения подсистем вызова функций, соединенных с ответвлениями данного сигнала вызова функции, появляется на блоках. Каждая подсистема имеет порядок выполнения формы s:[B#], где # является номером, который колеблется от 0 до меньше, чем общее количество подсистем или моделей, соединенных с ответвлениями данного сигнала. Подсистемы выполняются в порядке возрастания на основе этого номера.

Сигнал поддержек блока Function-Call Split Маркирует Propagation.

Следующая модель показывает, как применить входной параметр Фиксатора для сигналов обратной связи подсистемы вызова функций выходной параметр, чтобы работать вокруг ошибки зависимости по данным, вызванной при помощи блока Function-Call Split. Путем включения этого параметра в f1 блоке Inport подсистемы блок Function-Call Split игнорирует зависимость по данным сигнала b. Блок повреждает цикл зависимостей по данным между подсистемами f1 и g1. Модель достигает поведения сопоставимого вызова f1, чтобы выполниться прежде g1. Для данного шага выполнения подсистема f1 использует g1 вывод, вычисленный на предыдущем шаге выполнения.

Ограничения

Блок Function-Call Split имеет эти ограничения:

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

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

  • Подсистемы вызова функций и модели, соединенные с ответвлениями сигнала вызова функции, не могут иметь нескольких (мультиплексированных) инициаторов.

  • Блок Function-Call Split не может иметь своего входного параметра от сигнала с несколькими элементами вызова функции.

Порты

Входной параметр

развернуть все

Блок Function-Call Generator или Stateflow®chart могут обеспечить сигналы вызова функции.

Вывод

развернуть все

Сигнал вызова функции соединяется с моделью вызова функции или подсистемой вызова функций.

Параметры

развернуть все

Выберите блочную форму значка.

Настройки

distinctive

Прямоугольный блочный значок.

вокруг

Круговой блочный значок.

Программируемое использование

Блочный параметр: IconShape
Ввод: символьный вектор
Значения: 'отличительный' | 'вокруг'
Значение по умолчанию: 'distinctive'

Задайте количество выходных портов сигнала вызова функции.

Настройки

2

Два выходных порта сигнала вызова функции.

целое число

Целое число

Программируемое использование

Блочный параметр: NumOutputPorts
Ввод: символьный вектор
Значения: '2' |' <целое число>'
Значение по умолчанию: '2'

Выберите порядок выходных портов, относительно которых порт обеспечивает вызов функции сначала.

Настройки

default

Верхний порт обеспечивает сигнал вызова функции сначала.

реверс

Нижний порт обеспечивает сигнал вызова функции сначала.

Программируемое использование

Блочный параметр: OutputPortLayout
Ввод: символьный вектор
Значения: 'значение по умолчанию' | 'реверс'
Значение по умолчанию: 'default'

Блокируйте характеристики

Типы данных

'double'

Прямое сквозное соединение

No

Многомерные сигналы

No

Сигналы переменного размера

No

Обнаружение пересечения нулем

No

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Представленный в R2010a

Была ли эта тема полезной?