exponenta event banner

Определения измененных условий и решений (MCDC) в покрытии Simulink

Simulink ® Coverage™ по умолчанию использует определение маскирующего измененного условия и покрытия принятия решений (MCDC) для записи результатов покрытия MCDC. Хотя можно изменить определение MCDC, которое Simulink Coverage использует во время анализа, на определение MCDC с уникальной причиной, существуют некоторые различия в том, как Simulink Coverage регистрирует покрытие для моделей в зависимости от используемого определения.

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

Маскирование MCDC учитывает маскирование условий во вложенных выражениях, что позволяет увеличить число удовлетворенных целей MCDC по сравнению с определением уникальной причины MCDC. В результате некоторые модели Simulink, которые получают менее полного покрытия MCDC, используя определение MCDC уникальной причины, получают увеличенное покрытие при использовании маскирующего определения MCDC. Рассмотрим следующий пример, когда два входа в диаграмму Stateflow ®, условие A и условие C, не могут изменяться независимо:

Эта входная зависимость приводит к зависимым условиям выражения, содержащегося в диаграмме Stateflow:

Для выражения (A | | B) & & (C | | D) изменение значения условия C также изменяет значение условия A. Из-за взаимозависимости условий A и C, уникальная причина MCDC для условия C не может быть достигнута:

Однако маскирование MCDC для условия C может быть достигнуто, поскольку маскирование MCDC позволяет изменять значение условия A в паре независимости для условия C, пока остается истинным подэкспрессия (A | | B):

Вопросы сертификации для покрытия MCDC

DO-248C В дискуссионном документе № 13 «Обсуждение покрытия ведомостей, покрытия решений и покрытия измененных условий/покрытия решений» говорится, что маскирование MCDC приемлемо для достижения цели MCDC по сертификации DO-178B.

Установка определения (MCDC), используемого для анализа покрытия Simulink

По умолчанию в Simulink Coverage во время анализа покрытия используется маскирующее определение MCDC. Существует два способа изменения определения MCDC, используемого для анализа покрытия Simulink Coverage:

Использование параметров конфигурации модели для задания используемого определения MCDC

  1. Откройте диалоговое окно «Параметры конфигурации».

  2. Установите CovMcdcMode параметр для Masking или Unique-Cause.

Используйте cvtest Объект для задания используемого определения MCDC

Создать cvtest объект для модели, чтобы задать mcdcMode кому 'Masking' или 'UniqueCause':

cvt = cvtest(model)
cvt.options.mcdcMode = 'UniqueCause'
covdata = cvsim(cvt)

Измененное условие и покрытие принятия решений в Simulink Design Verifier

Настройка CovMcdcMode кому 'UniqueCause' может привести к различиям между отчетами MCDC в Simulink Coverage и генерацией тестов в Simulink Design Verifier™. Simulink Design Verifier всегда использует маскирующее определение MCDC для создания тестового примера. Дополнительные сведения см. в разделе Модифицированное условие и покрытие принятия решений в программе Simulink Design Verifier.

Связанные темы

  • MCDC (Simulink Design Verifier)