Идентификатор: Заголовок | hisl_0020: Блоки, не рекомендуемые для податливости C:2012 MISRA | ||
---|---|---|---|
Описание | Для улучшения MISRA C :2012 податливости сгенерированного кода: | ||
A | Используйте только блоки, которые поддержка генерацию кода, как задокументировано в Simulink® Block Support Table. | ||
B | Не используйте блоки, перечисленные как «Не рекомендуемые для производственного кода» в таблице поддержки блоков Simulink. | ||
C | Не используйте блоки Lookup Table с помощью кубических методов сплайн интерполяции или экстраполяции. Конкретными блоками являются:
| ||
D | Не используйте устаревшие блоки Lookup Table. Устаревшие блоки Интерполяционной таблицы являются Lookup и Lookup2D. | ||
E | Не используйте S-Function Builder блоки в модели или подсистеме. | ||
F | Не используйте From Workspace блоки в модели или подсистеме. | ||
G | Не используйте эти строки в модели или подсистеме:
| ||
Примечания | Если вы следуете этому и другим руководствам по моделированию, можно исключить конструкции модели, которые не подходят для генерации производственного кода C/C + +, в то же время увеличьте вероятность генерации кода, который соответствует стандарту C:2012 MISRA. Используйте блок Block Support Table для просмотра Block Support Table. Блоки со сноской (4) в Block Support Table классифицируются как «Не рекомендуемые для производственного кода». | ||
Объяснение | A, B, C, D, E, F, G | Улучшите качество и MISRA C:2012 податливость сгенерированного кода. | |
Проверки Model Advisor | Для A, B, C, D, E, F и G: Проверяйте блоки, не рекомендованные для C:2012 MISRA (Simulink Check) Для A и B: Проверьте блоки, не рекомендованные для развертывания производственного кода C/C + + (Simulink Check) | ||
Ссылки |
| ||
Последнее изменение | R2018b |
Идентификатор: Заголовок | hisl_0101: Избегайте инвариантных операций сравнения, чтобы улучшить податливость C:2012 MISRA |
---|---|
Описание | Чтобы улучшить MISRA C:2012 податливость сгенерированного кода, избегайте операций сравнения с инвариантными результатами. Операции сравнения выполняются следующими блоками:
|
Примечание | Для выполнения анализа можно использовать функцию поиска ошибок проектирования в Verifier™ Simulink Design. Для получения дополнительной информации см. Раздел «Обнаружение мертвой логики» (Simulink Design Verifier). Если у вас есть лицензия Simulink Design Verifier, можно использовать проверку Model Advisor Обнаружить мертвую логику (Simulink Design Verifier). |
Объяснение | Улучшите MISRA C:2012 податливость сгенерированного кода. |
Проверки Model Advisor | Соблюдение этого руководства по моделированию не может быть проверено с помощью проверки Model Advisor. |
Ссылки |
|
Последнее изменение | R2018a |
Пример | Инвариантные сравнения могут происходить в простых или составных операциях сравнения. В операциях сравнения соединений отдельные компоненты могут быть переменными, когда полное вычисление инвариантно. Простой: A
Простой: A
Соединение: Операции сравнения являются взаимоисключающими
Stateflow® :
|
Идентификатор: Заголовок | hisl_0102: Тип данных переменных управления цикла для улучшения MISRA C:2012 податливости |
---|---|
Описание | Чтобы улучшить податливость MISRA C:2012 сгенерированного кода, используйте целочисленный тип данных для переменных, которые используются в качестве переменных счетчика управления циклом в:
|
Объяснение | Улучшите MISRA C:2012 податливость сгенерированного кода. |
Проверки Model Advisor | Проверяйте тип данных переменных управления циклом (Simulink Check) |
Ссылки |
|
Последнее изменение | R2018a |