Как часть процесса разработки моделей, важно, чтобы код С, сгенерированный Embedded Coder® от Simulink® и Stateflow®, выполнил промышленные стандарты кодирования.
При использовании MISRA C:2012, кодирующего инструкции, чтобы оценить качество вашего сгенерированного кода C, вы требуетесь на раздел 5.3 из Инструкций MISRA C:2012 для Использования языка C в Критическом Системном документе, чтобы подготовить оператор соответствия к оцениваемому проекту. Чтобы помочь вам в разработке этого оператора соответствия, MathWorks® оценивает инструкции MISRA C:2012 против кода С, сгенерированного при помощи Embedded Coder, и предоставляет следующую информацию:
Сводные таблицы соответствия, которые идентифицируют метод, раньше получали соответствие для каждого правила и директивы.
Отклонения, которые идентифицируют правила или директивы, которые несовместимы.
Для получения информации о процессе использование MathWorks, чтобы оценить сгенерированный код C против инструкций MISRA C:2012, смотрите MathWorks Process для Идентификации Нарушений Инструкций MISRA C:2012 в Сгенерированном коде C.
Для получения дополнительной информации об организации MISRA® их инструкции по кодированию и временная шкала публикации MISRA, видят www.misra.org.uk.
При соблюдении рекомендаций в Соответствии MISRA C:2012 и Отклонениях для Кода Сгенерированная документация Embedded Coder использования снизит риск, что ошибка введена во время разработки и не быть обнаруженной, это не гарантия, что разработанная система будет безопасна. С другой стороны, если некоторые рекомендации не сопровождаются, это не означает, что разработанная система будет небезопасна.
Чтобы определить любые потенциальные нарушения в сгенерированном коде, MathWorks поддерживает обширный набор тестовых моделей, которые покрывают стандартное использование совместимых блоков. Для каждого релиза MathWorks использует эти тестовые модели со следующими продуктами, чтобы оценить моделирование, генерацию кода и анализ сгенерированного кода.
Продукт | Цель |
---|---|
Simulink | Создайте/поддержите модели. |
Stateflow | Создайте/поддержите модели. |
Fixed-Point Designer™ | Создайте/поддержите модели. |
Embedded Coder | Сгенерируйте код С. |
Simulink Check™ | |
Polyspace® Bug Finder™ | Идентифицируйте дефекты ошибки/кодирования. Используйте Polyspace Bug Finder Средство проверки MISRA C:2012 (Polyspace Bug Finder), чтобы анализировать сгенерированный код против Директив MISRA C:2012 и Правил (Polyspace Bug Finder) и предоставить информацию о нарушениях. |
Polyspace Code Prover™ | Докажите отсутствие ошибок времени выполнения. Используйте Polyspace Code Prover средство проверки MISRA C:2012 (Polyspace Code Prover), чтобы анализировать сгенерированный код против Директив MISRA C:2012 и Правил (Polyspace Code Prover) и предоставить информацию о нарушениях. |
Анализ соответствия, выполняемый Polyspace Средство проверки MISRA C:2012, оценивает код С, сгенерированный Embedded Coder. Никакая оценка не сделана из набора инструментальных средств Embedded Coder. Рукописный код С и сторонние библиотеки, которыми пользуются с кодом, сгенерированным Embedded Coder, не рассматриваются. Другие аналитические инструменты кода С MISRA могут привести к различным результатам.