主要内容

使用代码生成顾问为代码生成目标配置模型

考虑您的应用程序目标,例如效率、可跟踪性和安全性,如何映射到模型配置集中的代码生成参数。您在Configuration Parameters对话框中设置的参数指定模拟中模型的行为以及为模型生成的代码。

在生成代码之前,或者作为代码生成过程的一部分,您可以使用代码生成顾问来检查模型。当您选择在生成代码之前评审一个模型时,您需要指定代码生成顾问评审哪个模型、子系统或引用模型。当您选择将检查模型作为代码生成过程的一部分时,代码生成顾问将检查整个系统。代码生成顾问使用中提供的信息型号配置参数的推荐设置摘要确定满足您的目标的参数值。当多个目标之间存在冲突时,优先级较高的目标优先。

设置代码生成目标,然后运行代码生成Advisor提供了关于如何满足模型的代码生成目标的信息。代码生成顾问不会更改生成的代码。您可以使用代码生成顾问对模型进行建议的更改。只有在修改模型并重新生成代码之后,才会更改生成的代码。当您使用代码生成Advisor来设置代码生成目标并检查您的模型时,生成的代码包括标识您指定的目标的注释、代码生成Advisor在模型上运行的检查以及运行检查的结果。

如果一个模型使用配置引用,您可以运行代码生成顾问来检查配置参数设置。但是,代码生成Advisor不能修改配置参数设置。

高级代码生成目标

根据您的模型所代表的应用程序的类型,您可能有特定的高级代码生成目标。例如,安全性和可跟踪性比内存的有效使用更重要。如果您有特定的目标,您可以通过从这些代码生成目标中选择和优先级来快速配置您的模型以满足这些目标:

  • 执行效率(所有目标)-配置代码生成设置,以实现快速执行时间。

  • ROM效率(基于ert的目标)—配置代码生成设置以减少ROM的使用。

  • RAM效率(基于ert的目标)-配置代码生成设置以减少RAM的使用。

  • 可追溯性(基于ert的目标)——配置代码生成设置,以提供模型元素和代码之间的映射。

  • 安全预防措施(基于ert的目标)——配置代码生成设置,以增加代码的清晰度、确定性、健壮性和可验证性。

  • 调试(所有目标)——配置代码生成设置,以调试代码生成构建过程。

  • MISRA C:2012指南(基于ert的目标)-配置代码生成设置,以增加与MISRA C:2012指南的一致性。

  • Polyspace(基于ert的目标)——配置代码生成设置,为Polyspace准备代码®分析。

如果你选择MISRA C:2012指南代码生成目标,代码生成顾问:

  • 检查模型配置设置是否符合MISRA C:2012配置设置建议。

  • 检查MISRA C:2012兼容的代码生成中不支持或不推荐的代码块。

在参考模型中指定目标

当您在代码生成过程中检查模型时,您必须在顶级模型和引用模型中指定相同的目标。如果您为顶级模型和引用模型指定不同的目标,构建过程将生成一个错误。

为了为顶级模型和每个引用的模型指定不同的目标,在不生成代码的情况下分别检查模型。

使用代码生成顾问配置模型

这个例子展示了如何使用代码生成顾问检查和配置你的模型,以满足代码生成的目标:

  1. C代码选项卡上,单击C / c++代码的顾问

  2. 在System Selector窗口中,选择您想要检查的模型或子系统,然后单击好吧

  3. 在代码生成Advisor中目标代码生成窗格中,选择代码生成目标。当您选择目标时,在左侧窗格中,代码生成顾问更新它在您的模型上运行的检查列表。如果您的模型配置了基于ert的目标,则有更多的目标可用。对于本例,模型配置了一个基于ert的目标。如果你的目标是执行效率和可追溯性,那么优先级是:

    1. 可用的目标,双击执行效率执行效率被添加到选定的目标——优先排序

    2. 可用的目标,双击可追溯性可追溯性被添加到选定的目标——优先排序执行效率

  4. 要运行代码生成Advisor左窗格中列出的检查,请右键单击代码生成的顾问文件夹并选择选择运行检查

  5. 在“代码生成Advisor”窗口中,查看的结果根据代码生成目标检查模型配置设置从左窗格中选择它。检查的结果显示在右窗格中。

    根据代码生成目标检查模型配置设置触发以下问题的警告:

    • 参数被设置为与指定代码生成目标的推荐值不同的值。

    • 所选的代码生成目标与模型中设置的目标不同。

    点击修改参数设置:

    • 参数设置为为指定的代码生成目标推荐的值。

    • 模型中的代码生成目标与代码生成顾问中指定的目标相匹配。

  6. 在代码生成顾问窗口中,通过从左侧窗格中选择其余检查的结果来查看结果。检查的结果显示在右窗格中。

  7. 检查检查结果后,您可以选择修复警告和故障,如修复模型顾问检查警告或失败

当指定效率或安全预防措施目标时,代码生成Advisor包含附加检查。当您对这些附加检查之一进行更改时,以前的检查结果可能无效,需要重新运行。

使用配置参数对话框配置代码生成目标的模型

这个例子展示了如何通过配置参数对话框来配置和检查你的模型以满足代码生成的目标:

  1. 打开“配置参数”对话框。选择代码生成

  2. 指定系统目标文件。如果指定基于ert的目标,则有更多的目标可用。对于本例,选择一个基于ert的目标,例如ert.tlc

  3. 点击设定目标

  4. 设置目标-代码生成顾问对话框,明确你的目标。例如,如果你的目标是执行效率和可跟踪性,那么优先级是:

    1. 可用的目标,双击执行效率执行效率被添加到选定的目标——优先排序

    2. 可用的目标,双击可追溯性可追溯性被添加到选定的目标——优先排序执行效率

    3. 要接受目标,请单击好吧.在“配置参数”对话框中,代码生成>优先考虑的目标是更新。

  5. 代码生成窗格中,单击检查模型

  6. 在System Selector窗口中,选择您想要检查的模型或子系统,然后单击好吧.代码生成顾问打开并检查您指定的模型或子系统。

  7. 在“代码生成顾问”窗口中,通过从左侧窗格中选择一个检查来查看结果。该检查的结果显示在右窗格中。

  8. 检查检查结果后,您可以选择修复警告和故障,如修复模型顾问检查警告或失败

当指定效率或安全预防措施目标时,代码生成Advisor包含附加检查。当您对这些附加检查之一进行更改时,以前的检查结果可能无效,需要重新运行。

有关更多信息,请参见设置目标-代码生成顾问对话框

相关的话题

Baidu
map