主要内容

万博1manbetx优化和模型覆盖

在“配置参数”对话框中,有3个Simulink万博1manbetx®可能影响模型覆盖率数据的优化参数:

内联参数

若要将可调模型参数转换为用于代码生成的常量值,请在“配置参数”对话框中数学和数据类型窗格中,设置默认参数行为内联

当参数转换为常数时,Simulink可能会消除模型中的某些决策。万博1manbetx您无法实现已消除决策的覆盖率,因此将显示覆盖率报告0/0为了那些决定。

块减少

要在模型模拟期间和生成的代码中实现更快的执行,请在“配置参数”对话框中选择块减少参数。Simu万博1manbetxlink软件可以将特定组的块分解成一个更有效的块,或者将它们完全移除。

其中一个模型覆盖选项,强制压块复位,允许您忽略块减少参数时收集模型覆盖率。

如果不选择块减少参数,或者根据您的选择强制压块复位,万博1manbetx仿真软件覆盖™软件为模型中收集覆盖率的每个块提供覆盖率数据。

如果您选择块减少参数,不设置强制压块复位,覆盖率报告列出了将收集覆盖率的减少的块。

条件输入分支执行

条件输入分支执行参数可能导致低于预期万博1manbetx仿真软件覆盖结果。

案例1:上游开关块完全优化

一个常数块设置为连接到控制输入上C_Switch2导致真正的的情况下C_Switch2不发生条件输入分支执行优化C_Switch1结果出局了。万博1manbetx仿真软件覆盖报告0%的覆盖率C_Switch1

因为C_Switch1块是死逻辑,覆盖率报告生成一个从覆盖率分析中消除的块。

案例2:上游交换机块部分优化失效

一个一步块转换为布尔数据类型输出而且真正的分别为步进时间的前后。

禁用条件输入分支执行提供全面的覆盖。启用条件输入分支执行提供部分保险A_Switch1因为A_Switch1不同时看到一个假案吗A_Switch2看到一个真实的案例。换句话说,两者皆有开关块为真,或者两个都为假。错误的情况A_Switch1不影响模型。覆盖率报告正确地报告50%的覆盖率A_Swtch1

解决覆盖不全问题

您可以在模型中解决不完整的覆盖条件输入分支执行参数由:

  • 修改模型设计。由于不完整的覆盖条件输入分支执行可能是模型设计的缺陷。

  • 如果模型中不可访问的逻辑是故意的,则说明缺失的覆盖。

  • 提供一个可以访问所有交换机决策的更健壮的测试用例。

  • 清算条件输入分支执行.这消除了不完整的问题开关覆盖,但没有处理不可访问的逻辑。

使用方法请参见条件输入分支执行

限制

条件输入分支执行不适用于状态流®图表。