Рассмотрите, как ваши цели приложения, такие как КПД, трассируемость, и безопасность, сопоставляют с опциями генерации кода в наборе конфигурации модели. Параметры, которые вы устанавливаете в диалоговом окне Configuration Parameters, задают поведение модели в симуляции и кода, сгенерированного для модели.
Прежде, чем сгенерировать код, или как часть процесса генерации кода, можно использовать Советника Генерации кода, чтобы рассмотреть модель. Когда вы принимаете решение рассмотреть модель прежде, чем сгенерировать код, вы задаете, какая модель, подсистема, или ссылаемый моделирует Советника Генерации кода отзывы. Когда вы принимаете решение рассмотреть модель как часть процесса генерации кода, Советник Генерации кода рассматривает целую систему. Советник Генерации кода использует информацию, представленную в Рекомендуемых Сводных данных Настроек для Параметров конфигурации Модели (Simulink Coder), чтобы определить значения параметров, которые достигают ваших целей. Когда существует конфликт между несколькими целями, более высокая приоритетная цель более приоритетна.
Установка целей генерации кода, и затем выполнение Советника Генерации кода предоставляют информацию о том, как достигнуть целей генерации кода для вашей модели. Советник Генерации кода не изменяет сгенерированный код. Можно использовать Советника Генерации кода, чтобы внести предложенные изменения в модель. Сгенерированный код изменяется только после того, как вы измените свою модель и регенерируете код. Когда вы используете Советника Генерации кода, чтобы установить цели генерации кода и проверять вашу модель, сгенерированный код включает комментарии, идентифицирующие, какие цели вы задали, проверки, Советник Генерации кода работал на модели и результатах осуществления проверок.
Если модель использует ссылку настройки (Simulink), можно запустить Советника Генерации кода, чтобы рассмотреть настройки параметра конфигурации. Однако Советник Генерации кода не может изменить настройки параметра конфигурации.
В зависимости от типа приложения, которое представляет ваша модель, у вас, вероятно, будут определенные высокоуровневые цели генерации кода. Например, безопасность и трассируемость могут быть более очень важными, чем эффективное использование памяти. Если у вас есть определенные цели, можно быстро сконфигурировать модель, чтобы достигнуть тех целей путем выбора и приоритизации из этих целей генерации кода:
КПД выполнения (все цели) — Конфигурирует настройки генерации кода, чтобы достигнуть быстрого времени выполнения.
КПД ROM (основанные на ERT цели) — Конфигурирует настройки генерации кода, чтобы уменьшать использование ROM.
КПД RAM (основанные на ERT цели) — Конфигурирует настройки генерации кода, чтобы уменьшать Использование оперативной памяти.
Трассируемость (основанные на ERT цели) — Конфигурирует настройки генерации кода, чтобы обеспечить отображение между элементами модели и кодом.
Меры безопасности (основанные на ERT цели) — Конфигурируют настройки генерации кода, чтобы увеличить ясность, детерминизм, робастность и verifiability кода.
Отладка (все цели) — Конфигурирует настройки генерации кода, чтобы отладить процесс сборки генерации кода.
Инструкции MISRA C:2012 (основанные на ERT цели) — Конфигурируют настройки генерации кода, чтобы увеличить податливость с инструкциями MISRA C:2012.
Polyspace (основанные на ERT цели) — Конфигурирует настройки генерации кода, чтобы подготовить код к анализу Polyspace®.
Если вы выбираете цель генерации кода инструкций по MISRA C:2012, Советника Генерации кода:
Проверяет настройки конфигурации модели на податливость с рекомендациями параметра конфигурации MISRA C:2012.
Проверки на блоки, которые не поддержаны или рекомендованы для MISRA C:2012 совместимую генерацию кода.
В этом примере показано, как использовать Советника Генерации кода, чтобы проверять и сконфигурировать вашу модель, чтобы достигнуть целей генерации кода:
На вкладке C Code нажмите C/C++ Code Advisor.
В Системном окне Селектора выберите модель или подсистему, которую вы хотите рассмотреть, и затем нажать OK.
В Советнике Генерации кода, на панели Code Generation Objectives, выбирают цели генерации кода из выпадающего списка (основанные на GRT цели). Когда вы выбираете цели на левой панели, Советник Генерации кода обновляет список проверок, это будет работать на вашей модели. Если ваша модель сконфигурирована с основанной на ERT целью, больше целей доступно.
Нажмите Run Selected Checks, чтобы осуществить проверки, перечисленные на левой панели Советника Генерации кода.
В окне Code Generation Advisor рассмотрите результаты для Check model configuration settings against code generation objectives путем выбора его из левой панели. Результаты для той проверки отображены на правой панели.
Check model configuration settings against code generation objectives инициировал предупреждение для этих проблем:
Параметры устанавливаются на значения кроме значения, рекомендуемого для заданных целей генерации кода.
Выбранные цели генерации кода отличаются от набора целей в модели.
Нажмите Modify Parameters, чтобы установить:
Параметры к значению рекомендованы для заданных целей генерации кода.
Цели генерации кода в модели к целям заданы в Советнике Генерации кода.
В окне Code Generation Advisor анализ результаты для остающегося проверяет выбор их от левой панели. Результаты для проверок отображаются на правой панели.
После рассмотрения результатов проверки можно принять решение зафиксировать предупреждения и отказы, как описано в Фиксации Предупреждение Проверки Model Advisor или Отказ (Simulink).
Когда вы задаете цель КПД или Мер безопасности, Советник Генерации кода включает дополнительные проверки. Когда вы вносите изменения в одну из этих дополнительных проверок, предыдущие результаты проверки могут потенциально стать недопустимыми и должны быть повторно выполнены.
В этом примере показано, как проверять и сконфигурировать цели генерации кода в диалоговом окне Configuration Parameters:
Откройте диалоговое окно Configuration Parameters и выберите Code Generation.
Выберите или подтвердите выбор Системного конечного файла.
Задайте цели с помощью Select objectives выпадающий список (основанные на GRT цели) или нажав кнопку Set Objectives (основанные на ERT цели). Нажатие на Set Objectives открывает диалоговое окно Set Objectives — Code Generation Advisor Dialog Box (Simulink Coder).
Нажмите Check Model, чтобы осуществить проверки модели. Диалоговое окно Code Generation Advisor открывается. Советник Генерации кода использует цели генерации кода определить, который модель проверяет к запущенному.
На левой панели Советник Генерации кода перечисляет проверки, работает на модели и результатах. Кликните по каждому предупреждению видеть предположения для изменений, что можно сделать к модели, чтобы передать проверку.
Определите который изменения сделать к вашей модели. На правой панели Советника Генерации кода следуйте инструкциям, перечисленным для каждой проверки, чтобы изменить модель.