exponenta event banner

Разработка заявления о соответствии MISRA C:2012

В процессе разработки модели важно, чтобы код C, созданный Embedded Coder ® от Simulink ® и Stateflow ®, соответствовал отраслевым стандартам кодирования.

Используя MISRA C:2012, кодирующий рекомендации, чтобы оценить качество Вашего сгенерированного кода C, Вы требуетесь за раздел 5.3 Рекомендаций MISRA C:2012 для Использования языка C в документе Critical Systems подготовить заявление соблюдения к оцениваемому проекту. Чтобы помочь вам в разработке этого заявления о соответствии требованиям, MathWorks ® оценивает рекомендации MISRA по C:2012 в сравнении с кодом C, созданным с помощью встроенного кодера, и предоставляет следующую информацию:

  • Сводные таблицы соответствия, в которых определяется метод, используемый для получения соответствия для каждого правила и директивы.

  • Отклонения, которые определяют правила или директивы, которые не соответствуют требованиям.

Для получения информации о процессе, который MathWorks использует для оценки сгенерированного кода C в соответствии с рекомендациями MISRA C:2012, см. Процесс MathWorks для выявления нарушений MISRA C:2012 в сгенерированном коде C.

Дополнительные сведения об организации MISRA ®, их руководстве по кодированию и временной шкале публикации MISRA см. в разделе www.misra.org.uk.

Отказ от ответственности

Несмотря на то, что соблюдение рекомендаций MISRA C:2012 Соответствие и отклонения для кода, генерируемого с помощью документации Embedded Coder, уменьшит риск появления ошибки во время разработки и ее обнаружения, не является гарантией безопасности разрабатываемой системы. И наоборот, если некоторые рекомендации не выполняются, это не означает, что разрабатываемая система будет небезопасной.

Процесс MathWorks для выявления нарушений правил MISRA C:2012 в сгенерированном коде C

Для определения любых потенциальных нарушений в сгенерированном коде MathWorks поддерживает обширный набор тестовых моделей, которые охватывают стандартное использование совместимых блоков. Для каждого выпуска MathWorks использует эти тестовые модели со следующими продуктами для оценки моделирования, генерации кода и анализа сгенерированного кода.

ПродуктЦель
Simulink Создание/ведение моделей.
Stateflow Создание/ведение моделей.
Designer™ с фиксированной точкой Создание/ведение моделей.
Встроенный кодер

Создать код C.

Симулинк Check™

Выполните проверки MISRA C:2012 Model Advisor. [a]

Ошибка Polyspace ® Finder™

Выявление ошибок/дефектов кодирования.

Используйте средство поиска ошибок Polyspace MISRA C:2012 Checker (Polyspace Bug Finder), чтобы проанализировать сгенерированный код в соответствии с директивами и правилами MISRA C:2012 (Polyspace Bug Finder) и предоставить информацию о нарушениях.

Код Polyspace Prover™

Доказать отсутствие ошибок во время выполнения.

Используйте средство проверки MISRA C:2012 (средство проверки кода Polyspace) для анализа созданного кода в соответствии с директивами и правилами MISRA C:2012 и предоставления информации о нарушениях.

[a] Проверки MISRA C:2012 доступны только при наличии лицензии Simulink Check или Embedded Coder.

Примечание

Анализ соответствия, выполняемый средством проверки C:2012 MISRA Polyspace, оценивает код C, сгенерированный встроенным кодером. Оценка цепочки инструментов Embedded Coder не проводится. Рукописный код C и библиотеки сторонних производителей, которые используются с кодом, сгенерированным Embedded Coder, не рассматриваются. Другие инструменты анализа кода MISRA C могут давать разные результаты.