exponenta event banner

Проверки Simulink Design Verifier

Обзор проверок Simulink Design Verifier

Эти проверки помогают подготовить модель к анализу Simulink ® Design Verifier™. При выполнении проверки Simulink Design Verifier мастер модели выдает лицензию Simulink Design Verifier.

Дополнительные сведения о Model Advisor см. в разделах Запуск проверок Model Advisor и автоматизация выполнения проверок Model Advisor.

Проверка совместимости с Simulink Design Verifier

Код чека: mathworks.sldv.compatibility

Определите элементы, которые не поддерживаются в анализе Simulink Design Verifier.

Описание

Эта проверка позволяет оценить совместимость модели с Simulink Design Verifier.

Результаты и рекомендуемые действия

СостояниеРекомендуемое действие
Несовместимый

Избегайте использования следующих неподдерживаемых программных элементов или блоков Simulink в модели или компоненте модели, которые требуется проанализировать.

Частично совместим
СовместимыйSimulink Design Verifier может анализировать модель.

См. также

Обнаружение неработающей логики

Код чека: mathworks.sldv.deadlogic

Определите логику, которая остается неактивной во время моделирования.

Описание

Эта проверка определяет части модели, которые остаются неактивными во время моделирования.

С помощью Simulink Design Verifier можно выполнить более подробный анализ, определяющий как неработающую логику, так и активную логику. Дополнительные сведения см. в разделе Обнаружение неработающей логики, вызванной неправильным значением.

Выполнение рекомендаций этой проверки повышает вероятность создания кода, соответствующего MISRA C:2012, для встраиваемых приложений, а также кода, соответствующего стандартам CERT C и CWE

Результаты и рекомендуемые действия

РезультатРекомендуемое действие
Сбой, модель несовместима

Устраните несовместимость модели. См.:

Также см. раздел Обработка несовместимости с автоматическим блокированием.

В модели найдена мертвая логикаSimulink Design Verifier доказал, что эти решения и результаты условий не могут возникнуть и являются неубедительной логикой в модели. Неработоспособная логика также может быть побочным эффектом указанных ограничений на параметры или указанных минимальных и максимальных ограничений на входные порты. В редких случаях неработоспособная логика может быть результатом аппроксимаций, выполняемых Simulink Design Verifier. Не исключено, что есть цели, которые этот анализ не решил. Чтобы расширить результаты этого анализа, используйте обнаружение ошибок конструкции Simulink Design Verifier для определения активной логики. В редакторе Simulink выберите Apps > Design Verifier > Settings. В окне «Параметры конфигурации» на панели «Design Verifier > Design Error Detection» выберите «Dead logic» и «Identify active logic».
Мертвая логика не найдена в моделиSimulink Design Verifier не нашел в модели мертвой логики. Не исключено, что есть цели, которые этот анализ не решил. Чтобы расширить результаты этого анализа, используйте обнаружение ошибок конструкции Simulink Design Verifier для определения активной логики. В редакторе Simulink выберите Apps > Design Verifier > Settings. В окне «Параметры конфигурации» на панели «Design Verifier > Design Error Detection» выберите «Dead logic» и «Identify active logic».

См. также

Обнаружение доступа к избыточному массиву

Код чека: mathworks.sldv.arraybounds

Обнаруживает операции, доступ к которым осуществляется за пределами индекса массива

Описание

Эта проверка обнаруживает экземпляры доступа к массиву за пределами границ в Simulink Design Verifier.

Выполнение рекомендаций этой проверки повышает вероятность создания кода, соответствующего MISRA C:2012, для встраиваемых приложений, а также кода, соответствующего стандартам CERT C, CWE, ISO/IEC TS 17961.

Результаты и рекомендуемые действия

РезультатРекомендуемое действие
Сбой, модель несовместима

Устраните несовместимость модели. Посмотрите

Также см. раздел Обработка несовместимости с автоматическим блокированием.

В модели обнаружен доступ вне связанного массива

Чтобы просмотреть условия, вызывающие доступ к массиву вне границ, создайте модель кабельных трасс. При моделировании электрического жгута входные данные повторяют ошибку. Щелкните Просмотреть тестовый случай (View test case) в отчете Model Advisor.

См. также

Обнаружение деления по нулю

Код чека: mathworks.sldv.divbyzero

Обнаружение ошибок деления на ноль в модели

Описание

Эта проверка определяет операции в модели, которые вызывают ошибки деления на ноль.

Выполнение рекомендаций этой проверки повышает вероятность создания кода, соответствующего MISRA C:2012, для встраиваемых приложений, а также кода, соответствующего стандартам CERT C, CWE, ISO/IEC TS 17961.

Результаты и рекомендуемые действия

РезультатРекомендуемое действие
Сбой, модель несовместима

Устраните несовместимость модели. Посмотрите

Также см. раздел Обработка несовместимости с автоматическим блокированием.

В модели найдено деление на ноль

Чтобы просмотреть условия, вызывающие деление на ноль, создайте модель электрического жгута. При моделировании электрического жгута входные данные повторяют ошибку. Щелкните Просмотреть тестовый случай (View test case) в отчете Model Advisor.

См. также

Обнаружение переполнения целых чисел

Код чека: mathworks.sldv.integeroverflow

Обнаружение ошибок переполнения целочисленных или фиксированных данных в модели

Описание

Эта проверка определяет операции, которые превышают диапазон типов данных для целочисленных операций или операций с фиксированной точкой.

Выполнение рекомендаций этой проверки повышает вероятность создания кода, соответствующего MISRA C:2012, для встраиваемых приложений, а также кода, соответствующего стандартам CERT C, CWE, ISO/IEC TS 17961.

Результаты и рекомендуемые действия

РезультатРекомендуемое действие
Сбой, модель несовместима

Устраните несовместимость модели. Посмотрите

Также см. раздел Обработка несовместимости с автоматическим блокированием.

В модели обнаружено целочисленное переполнение

Для просмотра условий, вызывающих переполнение целого числа, создайте модель электрического жгута. При моделировании электрического жгута входные данные повторяют ошибку. Щелкните Просмотреть тестовый случай (View test case) в отчете Model Advisor.

См. также

Обнаружение неграничных значений и значений с плавающей точкой NaN

Код чека: mathworks.sldv.infnan

Обнаружение значений Nonfinite и NaN с плавающей запятой в модели

Описание

Эта проверка обнаруживает в модели вхождения значений с плавающей запятой non-finite и NaN.

Результаты и рекомендуемые действия

РезультатРекомендуемое действие
Сбой, модель несовместима

Устраните несовместимость модели. Посмотрите

Также см. раздел Обработка несовместимости с автоматическим блокированием.

В модели найдены значения с плавающей запятой Nonfinite и NaN

Для просмотра условий, вызывающих появление значений с плавающей запятой non-finite и NaN, создайте модель электрического жгута. При моделировании электрического жгута входные данные повторяют ошибку. Щелкните Просмотреть тестовый случай (View test case) в отчете Model Advisor.

См. также

Обнаружение субнормальных значений с плавающей точкой

Код чека: mathworks.sldv.subnormal

Обнаружение субнормальных значений с плавающей запятой в модели

Описание

Эта проверка обнаруживает вхождения субнормальных значений с плавающей запятой в модели.

Результаты и рекомендуемые действия

РезультатРекомендуемое действие
Сбой, модель несовместима

Устраните несовместимость модели. Посмотрите

Также см. раздел Обработка несовместимости с автоматическим блокированием.

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

Для просмотра условий, вызывающих появление субнормальных значений с плавающей точкой, создайте модель электрического жгута. При моделировании электрического жгута входные данные повторяют ошибку. Щелкните Просмотреть тестовый случай (View test case) в отчете Model Advisor.

См. также

Обнаружение указанных нарушений минимального и максимального значений

Код чека: mathworks.sldv.minmax

Обнаружение сигналов, превышающих указанные минимальные и максимальные значения

Описание

Этот анализ проверяет указанные минимальное и максимальное значения (диапазоны проектирования) на промежуточных сигналах в модели и на выходных портах. Если анализ обнаруживает, что сигнал превышает проектный диапазон, результаты определяют, где в модели произошли ошибки.

Выполнение рекомендаций этой проверки повышает вероятность создания кода, соответствующего MISRA C:2012, для встраиваемых приложений, а также кода, соответствующего стандартам CERT C и CWE.

Результаты и рекомендуемые действия

РезультатРекомендуемое действие
Сбой, модель несовместима

Устраните несовместимость модели. Посмотрите

Также см. раздел Обработка несовместимости с автоматическим блокированием.

Нарушение минимума и/или максимума, обнаруженных в модели

Для просмотра условий, вызывающих нарушение, создайте модель электрического жгута. При моделировании электрического жгута входные данные повторяют ошибку. Щелкните Просмотреть тестовый случай (View test case) в отчете Model Advisor.

См. также

Обнаружение нарушений доступа к хранилищу данных

Код чека: mathworks.sldv.dsmaccessviolations

Обнаружение нарушений доступа к хранилищу данных в модели.

Описание

Эта проверка обнаруживает следующие нарушения доступа к хранилищу данных:

  • Чтение перед записью

  • Запись после чтения

  • Запись после записи

Результаты и рекомендуемые действия

РезультатРекомендуемое действие
Сбой, модель несовместима

Устраните несовместимость модели. См.:

Обнаружены нарушения доступа к хранилищу данных

В отчете Model Advisor щелкните Просмотр тестового случая. Программа создает модель кабельных трасс, а блок «Построитель сигналов» отображает тестовый пример, который воспроизводит ошибку.

См. также

Обнаружение нарушений диапазона входных данных блоков

Код чека: mathworks.sldv.blockinputrangeviolations

Обнаружение нарушений входного диапазона блоков в модели.

Описание

Эта проверка выявляет нарушения диапазона ввода для блоков со следующими настройками:

Примечание

Проверка не помечает нарушения входного диапазона для n-D блоков таблицы поиска, если для метода интерполяции установлено значение Akima spline или Cubic spline.

Результаты и рекомендуемые действия

РезультатРекомендуемое действие
Сбой, модель несовместима

Устраните несовместимость модели. См.:

Обнаружены нарушения диапазона ввода блоков

В отчете Model Advisor щелкните Просмотр тестового случая. Программа создает модель кабельных трасс, а блок «Построитель сигналов» отображает тестовый пример, который воспроизводит ошибку.

См. также

Проверка использования блоков математических функций (rem и обратных функций)

Код чека: mathworks.sldv.hismviolationshisl_0002

Описание

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

Результаты и рекомендуемые действия

СостояниеРекомендуемое действие
Модель или подсистема содержит математическую функцию - обратную (reciprocal) или остаток (rem) блоки, которые могут привести к получению несграничных выходных сигналов. Несграничные сигналы не поддерживаются во встроенных системах реального времени.При использовании блока Математическая функция (Math Function) с rem или reciprocalфункциональные блоки, защищают вход в блок от того, чтобы он был меньше или равен нулю.

См. также

Проверка использования блоков Sqrt

Код чека: mathworks.sldv.hismviolationshisl_0003

Описание

Определите блоки Sqrt с входами, которые могут быть отрицательными.

Результаты и рекомендуемые действия

СостояниеРекомендуемое действие
Один или несколько блоков Sqrt в модели имеют входные данные, которые могут быть отрицательными во время моделирования.Реконструкция для защиты входных данных блоков Sqrt от отрицательного изменения.

См. также

Проверка использования блоков математических функций (функции log и log10)

Код чека: mathworks.sldv.hismviolationshisl_0004

Описание

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

Результаты и рекомендуемые действия

СостояниеРекомендуемое действие
Один или несколько математических блоков в модели используют натуральный/базовый 10 логарифм (Log и Log10) блокирует и может требовать поддержки не конечного числа, которая не поддерживается во встроенных системах реального времени.Рассмотрите возможность защиты входа блоков таким образом, чтобы он не был меньше или равен нулю.

См. также

Проверка использования взаимных блоков Sqrt

Код чека: mathworks.sldv.hismviolationshisl_0028

Описание

Определяет взаимные блоки Sqrt с входами, которые могут быть нулевыми или отрицательными.

Результаты и рекомендуемые действия

СостояниеРекомендуемое действие
Один или несколько взаимных блоков Sqrt в модели имеют входные данные, которые могут быть нулевыми или отрицательными во время моделирования.Ремоделировать, чтобы защитить вход блоков обратного Sqrt от отрицательного.

См. также