Полный рабочий процесс для Simulink® Code Inspector™ и встречающегося DO 178 целей охватывает эти подрабочие процессы:
Проверка совместимости модели: Проверяйте модель Simulink на совместимость с правилами Simulink Code Inspector.
Проверка совместимости модели может значительно уменьшать количество времени, чтобы достигнуть удовлетворительных результатов инспекции кода путем представления проблем рано в процессе разработки моделей. Проверки совместимости также продвигают модель, блок и шаблоны использования кодера, которые имеют тенденцию выравниваться с потребностями приложений повышенной надежности, такими как поддержание высокой степени трассируемости. Проверка совместимости модели является инкрементным и итеративным процессом. Для большего количества детали о проверке совместимости модели смотрите, что Совместимость Модели Проверяет.
Инспекция кода: Запустите Simulink Code Inspector, чтобы сравнить сгенерированный код C с его исходной моделью.
Во время инспекции кода Simulink Code Inspector систематически исследует блоки, параметры и настройки в модели, чтобы определить, эквивалентны ли они структурно операциям, операторам и данным в сгенерированном коде, и генерирует структурную эквивалентность и отчеты трассируемости, которые могут использоваться, чтобы поддержать сертификацию программного обеспечения. Инспекция кода является инкрементным и итеративным процессом. Для большего количества детали об инспекции кода см. Обзор Инспекции кода.
Сертификация программного обеспечения: Используйте отчеты инспекции кода в качестве части пакета сертификации, чтобы удовлетворить программному обеспечению DO 178, кодирующему цели верификации.
Продукт DO Qualification Kit обеспечивает менеджера артефактов, который позволяет вам управлять пакетом сертификации для своего DO - 178C проект. Набор также предоставляет подробную информацию о том, как применить Модельно-ориентированное проектирование к DO - 178C. Для получения дополнительной информации смотрите Рабочий процесс Модельно-ориентированного проектирования в DO - 178C (DO Qualification Kit) и https://www.mathworks.com/products/do-178.html.
Квалификация инструмента: Используйте отчеты инспекции кода в качестве части квалификации Simulink Code Inspector для проектов на основе DO - 178C стандарт.
MathWorks® обеспечивает продукт DO Qualification Kit, который поддерживает вас в квалификации Simulink Code Inspector и других инструментов верификации MathWorks для проектов на основе DO - 178C стандарт. Для получения дополнительной информации смотрите Рабочий процесс Модельно-ориентированного проектирования в DO - 178C (DO Qualification Kit), Артефакты Квалификации инструмента (DO Qualification Kit) и https://www.mathworks.com/products/do-178.html.
Сквозной общий рабочий процесс для Simulink Code Inspector следующие:
Откройте модель. Если вы хотите работать с рабочей копией модели, сохраните копию модели к рабочей папке и директорию изменения к папке работы.
Сконфигурируйте проверки совместимости модели.
Установите параметр модели AdvancedOptControl
к значению '-SLCI'
, если это уже не установлено. Эта установка ограничивает оптимизацию кода, которую Embedded Coder® использует для подмножества, которое совместимо с инспекцией кода. Когда вы используете эту установку, сгенерированный код может отличаться от кода, сгенерированного без '-SLCI'
установка. Однако различия не влияют на поведение сгенерированного кода.
С выбранным окном топ-модели дайте следующую команду:
>> set_param(gcs, 'AdvancedOptControl', '-SLCI')
Из окна топ-модели, на вкладке Apps, выбирают Code Inspector. Это открывает диалоговое окно Simulink Code Inspector.
Исследуйте параметры диалогового окна, которые применяются к проверке совместимости модели. Если вы проверяете модель, которая ссылается на другие модели, можно принять решение проверять только топ-модель или целую иерархию модели - ссылки. При выбирании опции Inspect all referenced models включает модели, на которые ссылаются, в проверку совместимости модели, а также инспекцию кода.
Осуществите проверки совместимости модели. Нажмите Check this model или Check all models. Программа контроля совместимости отображает индикатор выполнения.
Анализируйте результаты проверки совместимости модели.
Если вы решили проверять только топ-модель, результаты отображены непосредственно в диалоговом окне Model Advisor. Можно использовать диалоговое окно, чтобы исследовать и повторно выполнить отдельные проверки и сохранить результаты.
Если вы решили проверять все модели, результаты отображены в командном окне и в окне сводного отчета HTML. Можно щелкнуть по ссылкам в сводном отчете HTML, чтобы просмотреть подробный Отчет Model Advisor для каждой модели и модели, на которую ссылаются, которая проверялась.
Если проверки передают, модель готова к инспекции кода. Если о несовместимостях сообщают, фиксируют или работают вокруг проблем и перепроверяют модель на совместимость.
Проверьте функциональность во время выполнения модели. Если вы изменили модель, чтобы обратиться к несовместимостям, повторно проверьте функциональность модели с помощью тестов симуляции. Перед продолжением инспекции кода ваша модель должна симулировать без ошибок.
Сгенерируйте код С для модели, если это не было уже сгенерировано. Можно сгенерировать код неявно как часть инспекции кода (использующий опцию диалогового окна Simulink Code Inspector Generate code before code inspection) или использовать Embedded Coder отдельно, чтобы сгенерировать типовой кодекс. Если код был сгенерирован ранее и поместил в системе управления конфигурацией, убедитесь, что код доступен и готов к контролю.
Сконфигурируйте инспекцию кода.
Откройте диалоговое окно Simulink Code Inspector, если это не уже открыто.
Исследуйте и сконфигурируйте параметры диалогового окна, которые применяются к инспекции кода.
Если вы смотрите модель, которая ссылается на другие модели, можно принять решение смотреть только топ-модель или целую иерархию модели - ссылки. При выбирании опции Inspect all referenced models включает модели, на которые ссылаются, в проверку совместимости модели, а также инспекцию кода.
Если ваш сгенерированный код не использует структуру папок Embedded Coder по умолчанию, созданную генерацией кода, обновляет параметр Code placement соответственно.
Опционально, можно изменить местоположение, к которому инспекция кода пишет отчет инспекции кода, с помощью параметра диалогового окна Report folder.
Смотрите сгенерированный код. Нажмите Inspect Code или Generate and inspect code. Simulink Code Inspector отображает индикатор выполнения.
Анализируйте результаты инспекции кода.
Если вы решили смотреть только топ-модель, результаты отображены непосредственно в подробном отчете инспекции кода для топ-модели.
Если вы решили смотреть все модели, результаты отображены в окне сводного отчета HTML. Можно щелкнуть по ссылкам в сводном отчете HTML, чтобы просмотреть подробный отчет инспекции кода для каждой модели и модели, на которую ссылаются, которая смотрелась.
Если все модели получают полный инспекционный пройден результат, инспекция кода завершена. Если состояние Warning или Failed возвращено для модели, зафиксируйте или работайте вокруг условий, о которых сообщают, и повторно смотрите модель.
Если вы будете использовать отчеты инспекции кода в качестве части пакета сертификации, чтобы удовлетворить программному обеспечению DO 178, кодирующему цели верификации, дальнейшие шаги будут определены большим процессом сертификации. Для получения информации о том, как применить Модельно-ориентированное проектирование к встрече DO - 178C цели, смотрите Рабочий процесс Модельно-ориентированного проектирования в DO - 178C (DO Qualification Kit), Артефакты Квалификации инструмента для Simulink Code Inspector (DO Qualification Kit) и https://www.mathworks.com/products/do-178.html.