Main Content

SIL/PIL 管理器

验证生成的代码

自 R2019b 起

说明

SIL/PIL 管理器简化您从模型中生成的代码的验证。

您可以:

  • 只需一次点击,通过运行背靠背模型仿真和软件在环 (SIL) 或处理器在环 (PIL) 仿真,测试模型和生成代码之间的数值等效性。

  • 配置 SIL 或 PIL 仿真以生成代码覆盖率、执行时间和堆栈使用量度量。

  • 为 SIL 仿真启用您的调试器。

  • Simulink® Test™ 导出自动生成的测试用例。

SIL/PIL Manager app

打开 SIL/PIL 管理器 App

在 Simulink 工具条上的 App 选项卡上,点击 SIL/PIL 管理器。或者,在 Embedded Coder 的 C 代码选项卡上,点击验证代码 > SIL/PIL 管理器

示例

全部展开

  1. 在命令行窗口中,输入:

    openExample('ecoder/SILPILVerificationExample', ...
                 supportingFile='SILTopModel.slx')
    模型在 Simulink 编辑器中打开,并显示 SIL/PIL 选项卡。

  2. SIL 和 PIL 仿真不支持代码执行时间探查和代码覆盖率分析。对于此示例,禁用代码覆盖率:

    1. 准备部分中,点击设置

    2. 覆盖率下,点击覆盖率收集按钮将其关闭。

  3. 运行自动验证部分中,点击运行验证

    SIL/PIL 管理器以背靠背方式运行这些仿真:

    • 普通模式下的 SILTopModel

    • SIL 模式下的 SILTopModel。启用时间探查控件后,SIL 仿真还会进行代码执行探查。

    您可以通过诊断查看器监控仿真进度。

    在第二次仿真结束时:

    • SIL/PIL 管理器会在代码视图中显示生成的代码,因此您能够分析生成的代码,查看代码度量,并在模型元素和生成的代码之间进行追溯。

    • 仿真数据检查器将来自模型的结果与来自生成代码的结果进行比较。

    • 要查看执行时间度量,请在模型视图中,点击蓝色区域。

      要详细查看结果,请通过点击链接打开代码探查分析器。

  1. 在命令行窗口中,输入:

    openExample('ecoder/SILPILVerificationExample', ...
                 supportingFile='SILTopModel.slx')
    模型在 Simulink 编辑器中打开,并显示 SIL/PIL 选项卡。

  2. 对于此示例,禁用代码执行时间探查和代码覆盖率:

    1. 准备部分中,点击设置

    2. 时间探查下,点击任务探查按钮并关闭函数按钮。

    3. 覆盖率下,点击覆盖率收集按钮将其关闭。

  3. 在第二次仿真结束时:

    • 检查来自模型的结果和来自生成代码的结果在数值上是否等效。在结果库中的数值等效结果下,点击比较运行数据检查器

    • 导出 Simulink Test 的一个测试用例。在 Simulink Test 下,点击导出到测试管理器。然后,在“导出 SIL/PIL 测试用例”对话框中,使用默认设置,并点击确定

      SIL/PIL 管理器:

      • SILTopModel_TestFile.mldatx 中创建测试用例,您可以在当前工作文件夹中找到它。

      • 打开包含测试用例的测试文件。

        有关在 Simulink Test 中运行测试用例的信息,请参阅Import Test Cases for Equivalence Testing (Simulink Test)

  1. 在命令行窗口中,输入:

    openExample('ecoder/SILPILVerificationExample', ...
                 supportingFile='SILTopModel.slx')
    模型在 Simulink 编辑器中打开,并显示 SIL/PIL 选项卡。

  2. 模式部分中,选择仅 SIL/PIL 仿真

  3. 准备部分中,打开设置库:

    1. 时间探查下,点击任务探查按钮并关闭函数按钮。

    2. 覆盖率下,点击覆盖率收集按钮将其关闭。

    3. 堆栈探查下,点击堆栈探查按钮将其打开。

  4. 运行部分中,点击运行 SIL/PIL

    SIL 仿真将堆栈使用量数据流式传输到仿真数据检查器。仿真完成后,SIL/PIL 管理器会打开该模型的代码堆栈探查报告。

  5. 要详细检查结果,请使用代码探查分析器。在结果库中的堆栈探查结果下,点击代码探查分析器按钮。

相关示例

版本历史记录

在 R2019b 中推出