exponenta event banner

Ограничения поддержки функций ПО Stateflow

Simulink ® Design Verifier™ не поддерживает следующие программные функции Stateflow ®. Избегайте использования этих неподдерживаемых элементов в анализируемых моделях.

ml Оператор пространства имен, ml Функция, ml Выражения

Программное обеспечение не поддерживает вызовы функций MATLAB ® или доступ к переменным рабочей области MATLAB, что позволяет программное обеспечение Stateflow. См. раздел Доступ к функциям MATLAB и данным рабочей области в диаграммах C (поток состояний).

Операторы C или C++

Программное обеспечение не поддерживает sizeof , что позволяет программное обеспечение Stateflow.

Математические функции C

Программное обеспечение поддерживает вызовы следующих математических функций C:

  • abs

  • ceil

  • fabs

  • floor

  • fmod

  • labs

  • ldexp

  • pow (только для целочисленных степеней)

Программное обеспечение не поддерживает вызовы других математических функций C, разрешенных программным обеспечением Stateflow. Если включено автоматическое блокирование, которое выполняется по умолчанию, программное обеспечение устраняет эти неподдерживаемые функции во время анализа.

Сведения о математических функциях C в Stateflow см. в разделе Функции библиотеки Call C в диаграммах C (Stateflow).

Примечание

Дополнительные сведения об автоматическом блокировании см. в разделе Обработка несовместимости с автоматическим блокированием.

Атомарные подшаблоны, вызывающие экспортированные графические функции вне подшаблона

Программное обеспечение не поддерживает атомарные подшаблоны, которые вызывают экспортированные графические функции, что позволяет программное обеспечение Stateflow.

Примечание

Сведения об экспортированных функциях см. в разделе Экспорт функций Stateflow для повторного использования (Stateflow).

Сопоставление входов и выходов атомной подшарницы

Если входные или выходные данные атомарного подшаблона сопоставляются с данными на уровне диаграммы другой области, программное обеспечение не поддерживает диаграмму, содержащую этот атомарный подшаблон.

Эта несовместимость применяется к входным данным атомарного подкадра, когда входные данные сопоставляются с данными на уровне диаграммы области вывода, локальной области или параметра. Эта несовместимость применяется для выходных данных атомарного подкадра, когда выходные данные сопоставляются с данными уровня диаграммы локального объема.

Рекурсия и циклическое поведение

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

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

Примечание

Сведения об избежании рекурсии в диаграммах Stateflow см. в разделе Предотвращение нежелательной рекурсии в диаграмме (Stateflow).

Программное обеспечение Stateflow также позволяет создавать циклическое поведение, где последовательность шагов повторяется бесконечно. Если в модели имеется диаграмма с циклическим поведением, программа не может проанализировать ее.

Примечание

Сведения о циклическом поведении в диаграммах Stateflow см. в разделе Циклическое поведение (Stateflow).

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

Следующая диаграмма создает циклическое поведение. Состояние A вызывает состояние A1, которое транслирует Clear событие в состояние B, которое вызывает состояние B2, которое передает Set событие возвращается в состояние A, вызывая циклическое поведение.

При изменении send вызовы функций для использования направленных широковещательных передач событий, чтобы события Set и Clear транслировались непосредственно в состояния B1 и A1, соответственно, циклическое поведение исчезает и программное обеспечение может анализировать модель.

Примечание

Сведения о преимуществах направленных широковещательных передач событий см. в разделе Широковещательная рассылка локальных событий для синхронизации параллельных состояний (Stateflow).

Пользовательский код C/C + +

Если модель состоит из пользовательского кода C/C + +, Simulink Design Verifier поддерживает анализ на основе следующих настроек:

  • Если включены параметры импорта пользовательского кода и анализа пользовательского кода, программа поддерживает пользовательский код C/C + + для анализа. Дополнительные сведения см. в разделах Импорт пользовательского кода и Включение анализа пользовательского кода.

  • Если включен параметр импорта пользовательского кода, а для параметра анализа пользовательского кода установлено значение Off, модель совместима с анализом, но вызовы пользовательского кода блокируются во время анализа.

  • Если для параметра импорта пользовательского кода задано значение Off, пользовательский код не поддерживается, и модель несовместима для анализа.

Машинные данные

Программное обеспечение не поддерживает машинно-зависимые данные (т.е. определенные на уровне машины Stateflow), что позволяет программное обеспечение Stateflow.

Дополнительные сведения см. в разделе Рекомендации по использованию данных в диаграммах (Stateflow).

Текстовые функции с буквенными строковыми аргументами

Программа не поддерживает буквенные строковые аргументы для текстовых функций в диаграмме Stateflow.