Полный рабочий процесс для 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), доступ к Документам Проверки для Simulink Code Inspector (DO Qualification Kit) и https://www.mathworks.com/products/do-178.html.
Сквозной общий рабочий процесс для Simulink Code Inspector следующие:
Откройте модель. Если вы хотите работать с рабочей копией модели, сохраните копию модели к рабочей папке и директорию изменения к папке работы.
Сконфигурируйте образцовые проверки совместимости.
Установите параметр модели AdvancedOptControl
на значение '-SLCI'
, если это уже не установлено. Эта установка ограничивает оптимизацию кода, которую Embedded Coder® использует для подмножества, которое совместимо с инспекцией кода. Когда вы используете эту установку, сгенерированный код может отличаться от кода, сгенерированного без установки '-SLCI'
. Однако различия не влияют на поведение сгенерированного кода.
С выбранным окном топ-модели дайте следующую команду:
>> set_param(gcs, 'AdvancedOptControl', '-SLCI')
Из окна топ-модели выберите Code> Simulink 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.