Анализируйте большую модель

Типы проблем большой модели

Программное обеспечение Simulink® Design Verifier™ может столкнуться с некоторыми из этих проблем при анализе большой модели:

  • Невыполнимые цели — программное обеспечение, доказанное там, не является никакими тестами, которые осуществляют эти цели тестирования и не сгенерировали тестов.

  • Нерешенные цели — программное обеспечение не смогло удовлетворить или сфальсифицировать эти цели.

  • Цели с ошибками — Эта проблема обычно происходит, когда компонент модели использует нелинейную арифметику, которая может влиять на цель тестирования.

  • Не может завершить анализ в выделенное время — Эта проблема может указать на область вашей модели, где возникшие проблемы программного обеспечения, или вы, возможно, должны увеличить значение параметра Maximum analysis time.

  • Анализ зависает — Если количество обработанных целей остается постоянным долго, программное обеспечение, вероятно, столкнулось со сложностью между моделью и ее целями.

  • Не достигает высокого процента покрытия модели — Когда вы запускаете тесты на модели тестовой обвязки, процент покрытия модели недостаточен для вашего проекта.

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

Обобщите иерархию модели и совместимость

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

Советник по вопросам Генерации тестов выполняет высокоуровневый анализ и быстрое обнаружение мертвой логики. Можно использовать результаты лучше изучить модель, особенно большие модели, сложные модели или модели, для которых вы не уверены в их совместимости с Simulink Design Verifier. Например, вы можете:

  • Идентифицируйте несовместимости с генерацией теста.

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

  • Определите экземпляры мертвой логики.

  • Получите сводные данные иерархии компонентов.

  • Получите рекомендуемые параметры генерации тестов.

Чтобы получить доступ к Советнику по вопросам Генерации тестов, на вкладке Design Verifier, в разделе Mode, нажимают Test Generation. В разделе Prepare нажмите Advisor. Для получения дополнительной информации смотрите Советника по вопросам Генерации тестов Использования, чтобы Идентифицировать Поддающиеся анализу Компоненты.

Используйте значения параметров по умолчанию

Когда вы генерируете тесты, необходимо обычно начинать путем анализа модели с помощью значений параметров значения по умолчанию Simulink Design Verifier:

  1. Проверяйте, чтобы видеть, совместима ли ваша модель с Simulink Design Verifier, как описано в Совместимости Модели Проверки.

  2. Используя значения параметров по умолчанию, анализируйте модель. В следующей таблице перечислены значения по умолчанию для параметров в диалоговом окне Configuration Parameters, которое вы можете изменить при анализе больших моделей.

    Параметр Значение по умолчаниюОписание
    Maximum analysis time (s)300 секунды

    Если анализ не заканчивается в течение требуемого времени, анализ испытывает таймаут и завершает работу.

    Test suite optimizationCombinedObjectives (Nonlinear extended)

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

    Model coverage objectivesCondition/Decision

    Генерирует тесты, которые достигают условия и Decision Coverage.

  3. Рассмотрите следующую информацию в логарифмическом окне Simulink Design Verifier, в то время как анализ запускается:

    • Количество целей обработало — Сколько целей было обработано? Анализ зависал после обработки определенного числа целей? Ответы на эти вопросы могут дать вам ключ к разгадке то, где проблема может заключаться.

    • Количество целей удовлетворяло/Нумеровало сфальсифицированных целей — Какие цели были сфальсифицированы?

    • Время протекло — Убрал аналитическое время, или это заканчивалось в течение заданного максимального аналитического времени?

  4. Когда анализ завершается, можно подсветить результаты в модели и индивидуально рассмотреть анализ каждого объекта модели, как описано в Подсвеченных Результатах на Модели. Можно также сгенерировать и рассмотреть отчет HTML Simulink Design Verifier. Этот отчет содержит ссылки на элементы модели для которым удовлетворяют и сфальсифицированных целей, таким образом, вы видите, какие фрагменты силы модели имеют проблемы. Для получения дополнительной информации см. Отчеты Simulink Design Verifier.

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

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

Примечание

Большой процент сфальсифицированных целей и плохого покрытия модели часто указывает, что необходимо изменить значения параметра модели, чтобы получить полный обзор. Это может произойти, когда у вас есть настраиваемые параметры в блоках Константа, которые соединяются с активированными подсистемами или с триггерными входными параметрами блоков switch. В этих ситуациях сконфигурируйте поддержку параметра Simulink Design Verifier как описано в примере, Задают Ограничительные Значения Параметра для Полного охвата.

Измените аналитические параметры

Если анализ удовлетворил больше всего, но не все цели, попробуйте следующие шаги:

  1. Увеличьте параметр Maximum analysis time. Это дает анализу больше времени, чтобы удовлетворить всем целям.

  2. Установите параметр Model coverage objectives на Decision. Выбирание этой опции генерирует только тесты, которые достигают Decision Coverage. Эти тесты являются подмножеством MCDC опция.

  3. Повторно выполните анализ и рассмотрите отчет.

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

Используйте оптимизацию большой модели

Установите параметр Test suite optimization на LargeModel или LargeModel (Nonlinear Extended), и повторно выполненный анализ Simulink Design Verifier.

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

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

Остановите анализ перед завершением

См. значение Objectives processed в логарифмическом окне. Если приблизительно 50 процентов параметра Maximum analysis time протекли, и это значение не увеличивается, анализ модели может испытать затруднения при обработке определенных целей. Если анализ не прогрессирует, возьмите следующие шаги:

  1. Нажмите Stop в логарифмическом окне.

    Диалоговое окно появляется, сообщая вам, что анализ был прерван и выяснение у вас, если вы все еще хотите привести к результатам.

  2. Нажмите Yes, чтобы сохранить результаты анализа до сих пор.

    Логарифмическое окно перечисляет следующие опции, в зависимости от которого аналитического режима вы запустились:

    • Highlight analysis results on model

    • Generate detailed analysis report

    • Create harness model

    • Simulate tests and produce a model coverage report

  3. Нажмите Generate detailed analysis report.

  4. В отчете HTML рассмотрите следующие разделы, чтобы идентифицировать элементы модели, которые вызывают проблемы:

    • Objectives Undecided when the Analysis was Stopped

    • Objectives Producing Errors

  5. Рассмотрите элементы модели, которые имеют нерешенные цели или цели с ошибками видеть, присутствует ли какая-либо из следующих проблем. Консультируйтесь с соответствующей документацией для определенных методик, чтобы улучшить анализ.

    Проблема в вашей моделиБольше информации

    Входные параметры с плавающей точкой

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

    Нелинейные операции

    Большие пространства состояний

    Модели с большим пространством состояний верификации

    Большие таймеры и задержки

    Счетчики и таймеры