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

Как часть процесса разработки моделей, важно, чтобы код С, сгенерированный 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 Process для идентификации нарушений инструкций MISRA C:2012 в сгенерированном коде C

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

ПродуктЦель
Simulink Создайте/обеспечьте модели.
Stateflow Создайте/обеспечьте модели.
Fixed-Point Designer™ Создайте/обеспечьте модели.
Embedded Coder

Сгенерируйте код С.

Simulink Check™

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

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) и предоставить информацию о нарушениях.

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

Примечание

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