Программное обеспечение Simulink® Design Verifier™ может столкнуться с некоторыми из этих проблем при анализе большой модели:
Невыполнимые цели — программное обеспечение, доказанное там, не является никакими тестами, которые осуществляют эти цели тестирования и не сгенерировали тестов.
Нерешенные цели — программное обеспечение не смогло удовлетворить или сфальсифицировать эти цели.
Цели с ошибками — Эта проблема обычно происходит, когда компонент модели использует нелинейную арифметику, которая может влиять на цель тестирования.
Не может завершить анализ в выделенное время — Эта проблема может указать на область вашей модели, где возникшие проблемы программного обеспечения, или вы, возможно, должны увеличить значение параметра Maximum analysis time.
Анализ зависает — Если количество обработанных целей остается постоянным долго, программное обеспечение, вероятно, столкнулось со сложностью между моделью и ее целями.
Не достигает высокого процента покрытия модели — Когда вы запускаете тесты на модели тестовой обвязки, процент покрытия модели недостаточен для вашего проекта.
Следующие несколько разделов описывают шаги начальной буквы, чтобы взять при анализе большой модели. Несмотря на то, что эти шаги обращаются к генерации тестов, можно использовать аналогичный подход при обнаружении ошибок проектирования или доказательстве свойств в модели.
Можно использовать Советника по вопросам Генерации тестов, чтобы обобщить совместимость генерации тестов, условие и цели решения и мертвую логику для компонентов модели и компонентов модели.
Советник по вопросам Генерации тестов выполняет высокоуровневый анализ и быстрое обнаружение мертвой логики. Можно использовать результаты лучше понять модель, особенно большие модели, сложные модели или модели, для которых вы не уверены в их совместимости с Simulink Design Verifier. Например, вы можете:
Идентифицируйте несовместимости с генерацией теста.
Идентифицируйте комплексные компоненты, которые могут быть длительными, чтобы анализировать.
Определите экземпляры мертвой логики.
Получите сводные данные иерархии компонентов.
Получите рекомендуемые параметры генерации тестов.
Можно получить доступ к Советнику по вопросам Генерации тестов из панели меню путем нажатия на Analysis > Design Verifier > Generate Tests > Advisor. Для получения дополнительной информации смотрите Советника по вопросам Генерации тестов Использования, чтобы Идентифицировать Поддающиеся анализу Компоненты.
Когда вы генерируете тесты, необходимо обычно начинать путем анализа модели с помощью значений параметров значения по умолчанию Simulink Design Verifier:
Проверяйте, чтобы видеть, совместима ли ваша модель с Simulink Design Verifier, как описано в Совместимости Модели проверки.
Используя значения параметров по умолчанию, анализируйте модель. В следующей таблице перечислены значения по умолчанию для параметров в диалоговом окне Configuration Parameters, которое вы можете изменить при анализе больших моделей.
Параметр | Значение по умолчанию | Описание |
---|---|---|
Maximum analysis time (s) | 300 (секунды) | Если анализ не заканчивается в течение требуемого времени, анализ испытывает таймаут и останавливается. |
Test suite optimization | CombinedObjectives (Nonlinear extended) | Генерирует тесты, которые обращаются больше чем к одной цели тестирования, как с опцией |
Model coverage objectives | Condition/Decision | Генерирует тесты, которые достигают условия и Decision Coverage. |
Рассмотрите следующую информацию в логарифмическом окне Simulink Design Verifier, в то время как анализ запускается:
Количество целей обработало — Сколько целей было обработано? Анализ зависал после обработки определенного числа целей? Ответы на эти вопросы могут дать вам ключ к разгадке то, где проблема может заключаться.
Количество целей удовлетворяло/Нумеровало сфальсифицированных целей — Какие цели были сфальсифицированы?
Время протекло — Убрал аналитическое время, или это заканчивалось в течение заданного максимального аналитического времени?
Когда анализ завершается, можно подсветить результаты в модели и индивидуально рассмотреть анализ каждого объекта модели, как описано в Подсвеченных Результатах на Модели. Можно также сгенерировать и рассмотреть отчет HTML Simulink Design Verifier. Этот отчет содержит ссылки на элементы модели для удовлетворенных и сфальсифицированных целей, таким образом, вы видите, какие фрагменты силы модели имеют проблемы. Для получения дополнительной информации см. Отчеты Simulink Design Verifier.
Для анализа генерации тестов, если все цели тестирования были удовлетворены, запускают тесты на модели тестовой обвязки, чтобы определить покрытие модели.
Если покрытие модели достаточно для вашего проекта, вы не должны делать ничего больше. Если покрытие недостаточно, сделайте дополнительные шаги, чтобы улучшать аналитическую производительность, как описано в следующих разделах.
Большой процент сфальсифицированных целей и плохого покрытия модели часто указывает, что необходимо изменить значения параметра модели, чтобы получить полный обзор. Это может произойти, когда у вас есть настраиваемые параметры в блоках Константа, которые соединяются с активированными подсистемами или с триггерными входными параметрами блоков switch. В этих ситуациях сконфигурируйте поддержку параметра Simulink Design Verifier, как описано в примере, Задают Ограничительные Значения Параметра для Полного охвата.
Если анализ удовлетворил больше всего, но не все цели, попробуйте следующие шаги:
Увеличьте параметр Maximum analysis time. Это дает анализу больше времени, чтобы удовлетворить все цели.
Установите параметр Model coverage objectives на Decision
. Выбор этой опции генерирует только тесты, которые достигают Decision Coverage. Эти тесты являются подмножеством опции MCDC
.
Повторно выполните анализ и рассмотрите отчет.
Если результаты все еще не являются удовлетворительными, попробуйте методы, описанные в следующих разделах.
Установите параметр Test suite optimization на LargeModel
или LargeModel (Nonlinear Extended)
, и повторно выполните анализ Simulink Design Verifier.
Стратегии оптимизации большой модели разработаны для больших, сложных моделей. Стратегия LargeModel (Nonlinear Extended)
включает улучшенную поддержку нелинейной арифметики. Эти две стратегии могут или не могут улучшить результаты вашего анализа достаточно, чтобы полностью протестировать ваш проект.
Если у вас есть выдающиеся цели, вы хотите, чтобы программное обеспечение сгенерировало, продолжило следующие методы.
См. значение Objectives processed в логарифмическом окне. Если приблизительно 50 процентов параметра Maximum analysis time протекли, и это значение не увеличивается, анализ модели может испытать затруднения при обработке определенных целей. Если анализ не прогрессирует, возьмите следующие шаги:
Нажмите Stop в логарифмическом окне.
Диалоговое окно появляется, сообщая вам, что анализ был прерван и выяснение у вас, если вы все еще хотите привести к результатам.
Нажмите Yes, чтобы сохранить результаты анализа до сих пор.
Логарифмическое окно перечисляет следующие опции, в зависимости от которого аналитического режима вы запустились:
Highlight analysis results on model
Generate detailed analysis report
Create harness model
Simulate tests and produce a model coverage report
Нажмите Generate detailed analysis report.
В отчете HTML рассмотрите следующие разделы, чтобы идентифицировать элементы модели, которые вызывают проблемы:
Objectives Undecided when the Analysis was Stopped
Objectives Producing Errors
Рассмотрите элементы модели, которые имеют нерешенные цели или цели с ошибками видеть, присутствует ли какая-либо из следующих проблем. Консультируйтесь с соответствующей документацией для определенных методик, чтобы улучшить анализ.
Проблема в вашей модели | Больше информации |
---|---|
Входные параметры с плавающей точкой | |
Нелинейные операции | |
Большие пространства состояний | |
Большие таймеры и задержки |