为接受覆盖的对象建模
特定的模型金宝app®对象可以接受任何类型的模型覆盖。其他Simu金宝applink对象只能接收某些类型的覆盖,如下表所示。单击第一列中的链接,以获得关于特定模型对象覆盖率的更详细信息。
所有Si金宝appmulink对象都可以获得Execution覆盖,除了虚拟块和:
合并块
范围块
宽度块
显示块
到工作空间块
有关虚拟块的列表,请参见非虚拟块和虚拟块.
有关未接收覆盖的Simulink对象的金宝app完整列表,请参见建模不接受覆盖的对象.
对于Stateflow®状态、事件和状态时序逻辑决策,模型覆盖提供了决策覆盖。对于状态流转换,模型覆盖提供了决策、条件和MCDC覆盖。模型覆盖为状态和转换中的赋值语句中的逻辑表达式提供了条件和MCDC覆盖。有关更多信息,请参见状态流程图的模型覆盖报告.
模型对象 |
决定 |
条件 |
MCDC |
查找表 |
金宝appSimulink设计验证器™ |
饱和整数溢出 |
关系边界 |
---|---|---|---|---|---|---|---|
延迟和可重置延迟 | |||||||
离散时间积分器(启用或重置饱和度限制时) |
|||||||
索引向量 | |||||||
消息发送 | |||||||
另请参阅触发模式. |
|||||||
(相对于回转率) |
|||||||
变子系统,变模型,变源,变汇 | |||||||
腹肌
Abs块接收决策覆盖。决策覆盖率基于:
块的输入小于零。
输入信号的数据类型。
对于块的输入小于零,决策覆盖率度量为:
块输入的时间步数小于零,表示一个正确的决策。
块输入的时间步数不小于零,表示错误决策。
如果您选择饱和整数溢出覆盖率度量,即腹肌块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
的输入数据类型腹肌块uint8
,uint16
,或uint32
,金宝app仿真软件覆盖™软件报告没有覆盖该块。该软件设置块输出等于块输入而不做决定。的输入数据类型腹肌block为布尔值,则发生错误。
的腹肌块包含输入与零的隐式比较。因此,如果您选择关系边界覆盖率度量,即腹肌块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
偏见
如果您选择饱和整数溢出覆盖率度量,即偏见块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
组合逻辑
组合逻辑块接收决策和条件覆盖。决策覆盖率基于实现真值表的每个输出行。决策覆盖率度量真值表的每个输出行设置为块输出的时间步数。
条件覆盖率测量每个输入为假(等于零)的时间步数和每个输入为真(不等于零)的时间步数。如果组合逻辑块只有一个输入元素,则金宝app仿真软件覆盖软件只报告决策覆盖率,因为决策覆盖率和条件覆盖率是等价的。
如果所有真值表值都设置为至少一个时间步骤的块输出,则决策覆盖率为100%。否则,软件报告的覆盖率为至少在一个时间步骤中输出的真值表值的数量,除以真值表值的总数。因为这个块总是在真值表中至少有一个值作为输出,所以报告的最小覆盖率是1除以真值表值的总数。
如果所有块输入至少有一个时间步骤为假,至少有一个时间步骤为真,则条件覆盖率为100%。否则,软件报告覆盖率为在至少一个时间步骤的每个输入中实现一个假值,加上在至少一个时间步骤中实现一个真值,除以2的输入总数的幂(即2^)number_of_inputs).报告的最小覆盖率是输入总数除以2的总输入数的幂。
与常量比较
的与常量比较块接收条件覆盖。
条件覆盖措施:
输入与指定常数之间的比较为真的次数。
输入与指定常量之间的比较为假的次数。
的与常量比较块包含输入与常量的比较。因此,如果您选择关系边界覆盖率度量,即与常量比较块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
与零比较
的与零比较块接收条件覆盖。
条件覆盖措施:
输入和零之间的比较为真的次数。
输入和0之间的比较为假的次数。
的与零比较块包含输入与零的比较。因此,如果您选择关系边界覆盖率度量,即与零比较块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
数据类型转换
如果您选择饱和整数溢出覆盖率度量,即数据类型转换块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
死区
死区块接收决策覆盖。的金宝app仿真软件覆盖软件报告这些参数的决策覆盖率:
死亡区开始
死亡区域的尽头
的死亡区开始参数指定死区下限。为死亡区开始参数,决策覆盖措施:
块输入大于或等于下限的时间步数,表示正确的决策。
块输入的时间步数小于下限,表示错误决策。
的死亡区域的尽头参数指定死区上限。为死亡区域的尽头,决策覆盖措施:
块输入的时间步数大于上限,表示正确决策。
块输入的时间步数小于或等于上限,表示错误决策。
当上限为真时,软件不进行测量死亡区开始该时间步骤的覆盖率。因此,总的数量死亡区开始决策等于时间步数死亡区域的尽头是假的。
如果您选择饱和整数溢出覆盖率度量,即死区块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
的死区块包含输入的上限值和下限值的隐式比较。因此,如果您选择关系边界覆盖率度量,即死区块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
延迟和可重置延迟
的延迟而且复位延迟块接收决策覆盖,如果您设置外部复位块参数为除的任何选项没有一个
,或选择显示启用端口块参数。
为外部复位块参数,决策覆盖率测量时间步长的真结果,其中块重置,时间步长的假结果,其中块未重置。为了获得100%的决策覆盖率,块必须至少重置一个时间步骤,并且至少不重置一个时间步骤。
为显示启用端口块参数时,决策覆盖率对启用块的时间步长测量一个真结果,对未启用块的时间步长测量一个假结果。要获得100%的决策覆盖率,块必须至少在一个时间步骤上启用,并且至少在一个时间步骤上不启用。
直接查表(n-D)
直接查找表(n-D)块接收查找表覆盖。对于一个n-维度查找表时,输出断点的数量是每个表维度的所有断点数量的乘积。
查找表覆盖度量:
在模拟过程中,维度输入值的每个组合位于每个断点之间的次数。
在模拟过程中,维度输入值的每个组合低于每个表维度的最低断点而高于最高断点的次数。
的覆盖点的总数n-维度查找表是每个表维度中的断点数加1的乘积。在覆盖率报告中,一个不断增加的白到绿的颜色刻度,有六个从零开始的均匀间隔的数据范围,表示软件测量每个插值或外推点的时间步长的数量。
该软件通过测量总插值点和外推点来确定总覆盖率的百分比,这些插值点和外推点在断点之间或终点之外的模拟过程中实现了至少一个时间步骤的测量。
离散滤波器
的离散滤波器块接收决策覆盖,如果您设置外部复位块参数为除的任何选项没有一个
.决策覆盖率测量的是块重置的时间步长的真结果,而块未重置的时间步长的假结果。为了获得100%的决策覆盖率,块必须至少重置一个时间步骤,并且至少不重置一个时间步骤。
如果您选择饱和整数溢出覆盖参数,离散滤波器块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
离散FIR滤波器
的离散FIR滤波器块接收决策覆盖,如果您设置外部复位块参数为除的任何选项没有一个
,或选择显示启用端口块参数。
为外部复位块参数,决策覆盖率测量时间步长的真结果,其中块重置,时间步长的假结果,其中块未重置。为了获得100%的决策覆盖率,块必须至少重置一个时间步骤,并且至少不重置一个时间步骤。
为显示启用端口块参数时,决策覆盖率对启用块的时间步长测量一个真结果,对未启用块的时间步长测量一个假结果。要获得100%的决策覆盖率,块必须至少在一个时间步骤上启用,并且至少在一个时间步骤上不启用。
如果您选择饱和整数溢出覆盖率度量,即离散FIR滤波器块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
离散时间积分器
离散时间积分器块接收决策覆盖。金宝app仿真软件覆盖报告这些参数的决策覆盖率:
外部复位
限制输出
如果你设置外部复位来没有一个
,金宝app仿真软件覆盖不报告重置决策的决策覆盖率。否则,决策覆盖率度量为:
块输出被重置的时间步数,表示一个真实的决策。
块输出未重置的时间步数,表示错误决策。
如果不选择限制输出时,软件不会报告该决策的决策覆盖率。否则,软件报告决策覆盖率饱和下限和饱和上限.
为饱和上限,决策覆盖措施:
积分结果大于或等于上限的时间步数,表示正确的决策。
积分结果的时间步数小于上限,说明决策错误。
为饱和下限,决策覆盖措施
积分结果小于或等于下限的时间步数,表示正确的决策。
积分结果大于下限的时间步数,表示错误决策。
对于上限为true的时间步长,软件不进行测量饱和下限报道。因此,下限决策的总数等于上限为假的时间步数。
如果您选择饱和整数溢出覆盖率度量,即离散时间积分器块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
离散传输Fcn
的离散传输Fcn块接收决策覆盖,如果您设置外部复位块参数为除的任何选项没有一个
.决策覆盖率测量的是块重置的时间步长的真结果,而块未重置的时间步长的假结果。为了获得100%的决策覆盖率,块必须至少重置一个时间步骤,并且至少不重置一个时间步骤。
如果您选择饱和整数溢出覆盖参数,离散传输Fcn块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
点积
如果您选择饱和整数溢出覆盖率度量,即点积块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
启用子系统
Enabled Subsystem块接收决策、条件和MCDC覆盖。
决策覆盖措施:
块被启用的时间步数,表示一个真正的决策。
该块被禁用的时间步数,表示错误的决定。
如果至少有一个时间步骤为真,至少有一个时间步骤为假,则决策覆盖率为100%。如果没有时间步骤为真,或者没有时间步骤为假,则决策覆盖率为50%。
的金宝app仿真软件覆盖只有当启用输入是一个矢量时,软件才会测量启用输入的条件覆盖率。对于启用输入,条件覆盖率测量启用输入的每个元素的时间步数为真,启用输入的每个元素的时间步数为假。该软件根据可能的条件总数以及至少一个时间步骤中有多少为真,至少一个时间步骤中有多少为假来报告条件覆盖率。
只有当使能输入是矢量时,软件才测量使能输入的MCDC覆盖范围。因为子系统的enable是或
对于向量输入,如果在至少一个时间步中,每个向量使能输入独家为真,并且如果在至少一个时间步中,所有向量使能输入为假,则MCDC覆盖率为100%。对于MCDC覆盖测量,软件将矢量的每个元素视为单独的条件。
启用和触发子系统
启用和触发子系统块接收决策、条件和MCDC覆盖。决策覆盖措施:
当块被启用时,触发边发生的时间步数,表示一个真正的决策。
当块被启用或块被禁用时,指示错误决策的触发边不发生的时间步数。
如果至少有一个时间步骤为真,至少有一个时间步骤为假,则决策覆盖率为100%。如果没有时间步骤为真,或者没有时间步骤为假,则决策覆盖率为50%。
该软件分别测量启用输入和触发输入的条件覆盖率:
对于启用输入,条件覆盖率测量启用输入为true的时间步数,启用输入为false的时间步数。
对于触发器输入,条件覆盖率测量触发边发生的时间步数(指示为真)和触发边不发生的时间步数(指示为假)。
该软件根据可能条件的总数以及至少一个时间步骤中有多少条件为真,至少一个时间步骤中有多少条件为假来报告条件覆盖率。该软件将矢量的每个元素作为单独的条件覆盖测量。
该软件测量MCDC覆盖使能输入和触发输入组合。因为子系统的使能输入是和
在这两个输入中,如果出现以下所有情况,MCDC覆盖率为100%:
在至少一个时间步骤中,两个输入都为真。
在至少一个时间步中,使能输入为真,触发边为假。
在一个时间步长中,使能输入为假,触发边为真。
该软件将每个矢量元素作为单独的MCDC覆盖测量。它针对每个启用输入元素测量每个触发边缘元素。但是,如果触发器和使能输入中的元素数量都超过12,软件就不会报告MCDC覆盖率。
Fcn
的Fcn块接收条件和MCDC覆盖。的金宝app仿真软件覆盖软件报告条件或MCDC覆盖范围Fcn仅当顶级操作符是布尔(& &
,||
,或!
).
条件覆盖基于块中布尔运算符的输入值或算术表达式。条件覆盖率测量:
每次输入布尔运算符的时间步数为真(不等于零)。
每次输入布尔运算符的时间步数为假(等于零)。
如果所有布尔运算符输入至少有一个时间步骤为假,至少有一个时间步骤为真,则条件覆盖率为100%。否则,软件将根据可能的条件总数以及至少在一个时间步骤中有多少为真,至少在一个时间步骤中有多少为假来报告条件覆盖率。
该软件测量MCDC覆盖布尔表达式在Fcn块。如果在至少一个时间步骤中,每个条件独立地将表达式的输出设置为true,并且如果在至少一个时间步骤中,每个条件独立地将表达式的输出设置为false,则MCDC覆盖率为100%。否则,软件将根据可能条件的总数,以及在至少一个时间步骤中每个条件独立将输出设置为true的次数,以及在至少一个时间步骤中有多少条件独立将输出设置为false来报告MCDC覆盖率。
如果Fcn块包含关系操作,并且选择关系边界覆盖率度量,即Fcn块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
For迭代器,For迭代器子系统
For迭代器块和For迭代器子系统得到决策覆盖。的金宝app仿真软件覆盖软件测量循环条件值的决策覆盖率,该值由以下之一决定:
迭代值等于或低于迭代限制,表示为true。
迭代值高于迭代限制,指示为false。
软件报告每个循环条件评估为true和false的总次数。如果循环条件至少一次为真,至少一次为假,则决策覆盖率为100%。如果没有循环条件为真,或者没有循环条件为假,则决策覆盖率为50%。
获得
如果您选择饱和整数溢出覆盖率度量,即获得块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
如果,如果动作子系统
的如果导致If动作子系统执行接收条件、决策和MCDC覆盖的块:
该软件测量决策覆盖率
如果
条件和全部elseif
在如果块。如果
如果
条件或任何elseif
Conditions包含具有多个条件的逻辑表达式,例如U1 u2 u3
,该软件还测量表达式中每个条件的条件和MCDC覆盖率,u1
,u2
,u3
在前面的例子中。
该软件不直接测量其他的
条件。当没有elseif
条件下,其他的
Condition是the的直接补语如果
条件,或者其他的
Condition是最后一个词的直接补语elseif
条件。
该软件报告的总时间步数,每个如果
而且elseif
条件的计算结果为true和false。如果如果
或elseif
Condition至少一次为真,至少一次为假,决策覆盖率为100%。如果没有如果
或elseif
条件为真,或者不为如果
或elseif
条件为假,决策覆盖率为50%。如果之前的如果
或elseif
条件永远不会计算为false,因此elseif
条件可以有0%的决策覆盖率。
的如果块包含其输入之间的比较。因此,如果您选择关系边界覆盖率度量,即如果块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
索引向量
的索引向量块接收基于将矢量信号输入的每个元素传递到块的输出的决策覆盖。
如果每个向量索引传递到块输出至少一个时间步骤,则决策覆盖率为100%。否则,Simulink金宝app Coverage将覆盖率报告为输入信号中传递到输出的矢量指标总数的百分比。
如果您选择饱和整数溢出覆盖率度量,即索引向量块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.
使用预查找的插值
的使用预查找的插值块接收查找表覆盖。对于一个n-D查找表时,输出断点的数量等于每个表维度的所有断点的数量的乘积。查找表覆盖率度量:
在模拟过程中,维度输入值的每个组合位于每个断点之间的次数。
在模拟过程中,维度输入值的每个组合低于每个表维度的最低断点而高于最高断点的次数。
的覆盖点的总数n-维度查找表是每个表维度中的断点数加1的乘积。在覆盖率报告中,一个不断增加的白到绿的颜色刻度,有六个从零开始的均匀间隔的数据范围,表示软件测量每个插值或外推点的时间步长的数量。
该软件通过测量总插值点和外推点来确定总覆盖率的百分比,这些插值点和外推点在断点之间或终点之外的模拟过程中实现了至少一个时间步骤的测量。
如果您选择饱和整数溢出,使用预查找的插值块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
Library-Linked对象
金宝app链接到库对象的Simulink块和状态流图得到的覆盖范围与不链接到库对象时相同。的金宝app仿真软件覆盖软件为模型中的每个库对象单独记录覆盖率。如果您的模型包含同一个库对象的多个实例,那么每个实例都会接收自己的覆盖数据。
逻辑运算符
逻辑操作符块接收条件和MCDC覆盖。的金宝app仿真软件覆盖度量块的每个输入的条件覆盖范围。条件覆盖率测量:
每个输入的时间步数为真(不等于零)。
每个输入的时间步数为假(等于零)。
如果所有块输入至少有一个时间步骤为假,至少有一个时间步骤为真,则条件覆盖率为100%。否则,条件覆盖率基于可能条件的总数,以及至少在一个时间步骤中有多少为真,至少在一个时间步骤中有多少为假。
金宝app仿真软件覆盖测量所有输入块的MCDC覆盖范围。如果在至少一个时间步骤中,每个条件独立地将块的输出设置为true,并且如果在至少一个时间步骤中,每个条件独立地将块的输出设置为false,则MCDC覆盖率为100%。否则,金宝app仿真软件覆盖根据可能条件的总数,以及每个条件至少在一个时间步骤中独立地将输出设置为true的次数,以及至少在一个时间步骤中独立地将输出设置为false的次数,报告MCDC覆盖率。
对于一个逻辑运算符block接收MCDC作为逻辑级联的一部分,必须满足以下所有条件:
块输入和输出信号都是标量
逻辑块操作不是XOR/NXOR
逻辑块具有多个输入信号(除非其操作为NOT)
有关逻辑级联的详细信息,请参见逻辑运算符级联模式.
一维查找表
1-D查找表块接收查找表覆盖;对于一维查找表,输入和输出断点的数量是相等的。查找表覆盖度量:
在模拟过程中,输入和输出值位于每个断点之间的次数。
在模拟过程中输入和输出值低于最低断点和高于最高断点的次数。
一维查找表的覆盖点总数等于表中的断点数加1。在覆盖率报告中,一个不断增加的白到绿的颜色刻度,有六个从零开始的均匀间隔的数据范围,表示软件测量每个插值或外推点的时间步长的数量。
该软件通过测量总插值点和外推点来确定总覆盖率的百分比,这些插值点和外推点在断点之间或终点之外的模拟过程中实现了至少一个时间步骤的测量。
如果您选择饱和整数溢出覆盖率度量,即一维查找表块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
二维查找表
的二维查找表块接收查找表覆盖。对于二维查找表,输出断点的数量等于行断点的数量乘以列输入的数量。查找表覆盖度量:
在模拟过程中,行输入值和列输入值的每个组合位于每个断点之间的次数。
在模拟过程中,行输入和列输入值的每个组合低于每一行和每列的最低断点而高于每一行和每列的最高断点的次数。
二维查找表的覆盖点总数是表中的行断点数加1,乘以表中的列断点数加1。在覆盖率报告中,一个不断增加的白到绿的颜色刻度,有六个从零开始的均匀间隔的数据范围,表示软件测量每个插值或外推点的时间步长的数量。
如果您选择饱和整数溢出覆盖率度量,即二维查找表块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
n-D查找表
的n-D查找表块接收查找表覆盖。对于一个n-维度查找表时,输出断点数等于每个表维度的所有断点数的乘积。查找表覆盖度量:
在模拟过程中,维度输入值的每个组合位于每个断点之间的次数。
在模拟过程中,维度输出值的每个组合低于每个表维度的最低断点而高于最高断点的次数。
的覆盖点的总数n-维度查找表是每个表维度中的断点数加1的乘积。在覆盖率报告中,一个不断增加的白到绿的颜色刻度,有六个从零开始的均匀间隔的数据范围,表示软件测量每个插值或外推点的时间步长的数量。
该软件通过测量总插值点和外推点来确定总覆盖率的百分比,这些插值点和外推点在断点之间或终点之外的模拟过程中实现了至少一个时间步骤的测量。
如果您选择饱和整数溢出覆盖率度量,即n-D查找表块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
数学函数
如果您选择饱和整数溢出覆盖率度量,即数学函数块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
MATLAB函数
有关保险类型的信息金宝app仿真软件覆盖软件报告的MATLAB®函数块,看MATLAB函数的模型覆盖.
MATLAB系统
金宝app仿真软件覆盖仅记录MATLAB的Decision、Condition和MCDC覆盖率系统块。
消息发送
的消息发送块接收决策覆盖,如果您选择显示启用端口块参数。决策覆盖率测量启用该块的时间步骤的真实结果,以及未启用该块的时间步骤的虚假结果。要获得100%的决策覆盖率,块必须至少在一个时间步骤上启用,并且至少在一个时间步骤上不启用。
极大极小
的极大极小块接收基于将每个输入传递到块的输出的决策覆盖。
对于基于将每个输入传递到块的输出的决策覆盖率,覆盖率测量模拟将每个输入传递到块输出的时间步数。决策点的数量取决于块的输入数量以及它们是标量、向量还是矩阵。
如果所有输入都传递给块输出至少一个时间步骤,则金宝app仿真软件覆盖软件报告的决策覆盖率为100%。否则,软件报告覆盖率为在至少一个时间步骤中传递到输出的输入数量,除以输入的总数量。
如果您选择饱和整数溢出覆盖率度量,即极大极小块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
模型
的模型Block不直接接收覆盖;块引用的模型得到覆盖。如果将引用模型的仿真模式设置为正常的
,金宝app仿真软件覆盖软件报告所引用模型中所有对象的覆盖率。如果将引用模型的仿真模式设置为银
或公益诉讼
你有嵌入式编码器®安装,金宝app仿真软件覆盖如果模拟模式被设置为值以外的值,则软件将报告由模型生成的代码的覆盖率正常的
,银
,或公益诉讼
,该软件不能度量参考模型的覆盖率。
在报道窗格中的配置参数对话框,选择您想要报告覆盖率的引用模型。软件为您选择的每个参考模型生成覆盖率报告。
如果您的模型包含相同引用模型的多个实例,软件将记录该模型的所有实例的覆盖率模型Block被设置为正常的
.该引用模型的覆盖率报告结合了该模型的所有正常模式实例的覆盖率数据。
模型引用层次结构中所有已分析模型的覆盖报告都从摘要报告中链接。
请注意
有关如何选择引用模型以报告覆盖率的详细信息,请参见引用模型.
多端口切换
的多端口切换块接收基于将每个输入(不包括第一个控制输入)传递到块的输出的决策覆盖。
对于基于将每个输入(不包括第一个控制输入)传递到块输出的决策覆盖率,覆盖率测量每个输入传递到块输出的时间步数。决策点的数量基于块的输入数量以及控制输入是标量还是矢量。
如果除第一个控制输入外的所有输入都传递到块输出至少一个时间步,则决策覆盖率为100%。否则,金宝app仿真软件覆盖软件报告覆盖率为在至少一个时间步骤中传递到输出的输入数量,除以总输入数量减1。
如果您选择饱和整数溢出覆盖率度量,即多端口切换块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
观察者模式
的观察者参考Block不直接接收覆盖;块引用的观察者模型接收该模型中块的覆盖度量。只有观察者模型正常的
模式分析覆盖范围。
您可以选择覆盖的观察者模型,方法与选择引用模型相同。有关选择用于分析的模型的更多信息,请参见引用模型.
只有从顶部模型引用的观察者模型在模拟期间是活动的,并且可以接收覆盖。终止函数位于观察者模型内部的块不接收覆盖。
每个Observer模型的覆盖结果分别被捕获cvdata
对象。从观察者模型引用的每个模型都被认为是观察者模型,并且有自己的模型cvdata
对象。如果您在一个模型引用层次结构中记录多个模型的覆盖率,则结果将被收集到cv.cvdatagroup
对象。摘要报告链接到层次结构中所有已分析模型的覆盖报告。
PID控制器,PID控制器(2 DOF)
如果您选择饱和整数溢出覆盖率度量,即PID控制器而且PID控制器(2自由度)块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
产品
如果您选择饱和整数溢出覆盖率度量,即产品块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
证明假设
假设证明块接收金宝appSimulink设计验证器报道。金宝appSimulink设计验证器覆盖范围基于块对话框中定义的点和间隔。金宝appSimulink设计验证器覆盖率度量块中定义的每个点或间隔满足的时间步数。客观结果的总数基于假设证明块中定义的点或区间的数量。
如果块中定义的所有点和间隔至少满足一个时间步长,金宝appSimulink设计验证器覆盖率是100%。否则,金宝app仿真软件覆盖软件将覆盖率报告为至少一个时间步骤中满足的点和间隔的数量,除以为块定义的点和间隔的总数。
客观的证据
证明目标块接收金宝appSimulink设计验证器报道。金宝appSimulink设计验证器覆盖范围基于块对话框中定义的点和间隔。金宝appSimulink设计验证器覆盖率度量块中定义的每个点或间隔满足的时间步数。客观结果的总数基于目标证明块中定义的点或区间的数量。
如果块中定义的所有点和间隔至少满足一个时间步长,金宝appSimulink设计验证器覆盖率是100%。否则,金宝app仿真软件覆盖软件将覆盖率报告为至少一个时间步骤中满足的点和间隔的数量,除以为块定义的点和间隔的总数。
速度限制器
速率限制器块接收决策覆盖。的金宝app仿真软件覆盖软件报告决策覆盖范围回转速率上升而且回转速率下降参数。
为回转速率上升,决策覆盖措施:
块输入变化的时间步数大于或等于上升速率,表示正确的决策。
块输入变化的时间步数小于上升速率,表明决策错误。
为回转速率下降,决策覆盖措施:
块输入变化的时间步数小于或等于下降速率,表示正确的决策。
块输入变化的时间步数大于下降速率,表明决策错误。
软件不能测量回转速率下降覆盖一个时间步长的时候回转速率上升是真的。因此,总的数量回转速率下降决策等于时间步数回转速率上升是假的。
如果至少有一个时间步骤为真,至少有一个时间步骤为假,则该块的两个单独决策的决策覆盖率为100%。如果没有时间步骤为真,或者没有时间步骤为假,则决策覆盖率为50%。该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
的速度限制器Block隐式地将输入信号的导数与上限值和下限值进行比较。因此,如果您选择关系边界覆盖率度量,即速度限制器块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
关系操作符
的关系操作符块接收条件覆盖。
条件覆盖措施:
指定的关系操作为真的次数。
指定的关系操作为假的次数。
的关系操作符块包含其输入之间的比较。因此,如果您选择关系边界覆盖率度量,即关系操作符块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
继电器
Relay块接收决策覆盖。金宝app仿真软件覆盖报告决策覆盖范围开关点和开关点参数。
为开关点,决策覆盖措施:
块输入大于或等于的连续时间步数开关点,表示一个真实的决定。
块输入的连续时间步数小于开关点表示错误的决定。
为开关点,决策覆盖措施:
块输入小于或等于的连续时间步数开关点,表示一个真实的决定。
块输入大于的连续时间步数开关点表示错误的决定。
软件不能测量开关点当开关阈值为真时,时间步长的覆盖范围。因此,总的数量开关点决策等于时间步数开关点是假的。
如果至少有一个时间步骤为真,至少有一个时间步骤为假,则该块的两个单独决策的决策覆盖率为100%。如果没有时间步骤为真,或者没有时间步骤为假,则决策覆盖率为50%。该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
的继电器块包含其第二个输入与阈值的隐式比较。因此,如果您选择关系边界覆盖率度量,即继电器块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
需求表
的需求表块接收决策、条件、MCDC、关系边界和包含在逻辑的整数溢出覆盖的饱和度先决条件中的每个需求的需求表选项卡。的后置条件列和假设表TAB不接收覆盖。
金宝app仿真软件覆盖报告覆盖范围先决条件列类似于状态流程图或MATLAB函数块。例如,如果一个先决条件指定后置条件必须满足时A < c1 && b ~= c2
,金宝app仿真软件覆盖可以分析并报告此语句的覆盖结果。
C / c++函数
C/ c++ S-Functions金宝app支持模型覆盖。模型的覆盖率报告包含对象的每个实例的结果功能块在模型中。研究的结果功能块链接到块中C/ c++代码的单独覆盖率报告。
为s - function生成覆盖率报告:
当创建s - function时,启用覆盖率支持。金宝app有关更多信息,请参见使s -函数与模型覆盖率兼容.
当生成覆盖率报告时,启用对S-Functions的支持。金宝app有关更多信息,请参见为S-Function生成覆盖率报告.
s - function报告了以下覆盖类型:
涵盖报表的百分比
S-Function块的覆盖率数据通过以下方法获得:
块的覆盖结果是块中所有文件的结果的加权平均值。
例如,一个S-Function块有两个文件,
file1.c
而且file2.c
.决策覆盖率file1.c
75%(3/4的结果覆盖)file2.c
是50%(10/20结果覆盖)。该区块的决策覆盖率为13/24≈54%。对于每个文件,覆盖率结果是文件中所有函数的加权平均值。
对于每个函数,覆盖结果是函数中接受该覆盖的所有语句的结果的加权平均值。
请注意
s - function的模型覆盖有以下限制:
覆盖范围只支持Level-2 C/ c++ s - function。金宝app有关二级C s函数的示例,请参见创建一个基本的C MEX S-Function.
c++类模板不是用于覆盖的。
饱和
金宝app仿真软件覆盖报告决策覆盖范围上限而且下限参数说明饱和的块和关系边界覆盖饱和块。
为上限,决策覆盖措施:
块输入大于上限的时间步数,表示一个真实的决策结果,并且块输出在上限处饱和。
块输入的时间步数小于或等于上限,这表示错误的决策结果。
为下限,决策覆盖措施:
块输入大于或等于下限的时间步数,这表示一个真实的决策结果。
块输入小于下限的时间步数,表示错误的决策结果,并且块输出在下限处饱和。
金宝app仿真软件覆盖不测量覆盖率下限当上限为真时,在某个时间步骤上进行决策。因此,总的数量下限决策计算的时间步数等于上限是假的。金宝app仿真软件覆盖报告的覆盖率为0%下限决定是否上限决策在每一步都是正确的。
对于每一个决定,金宝app仿真软件覆盖如果决策返回至少一个时间步骤的真结果和至少一个时间步骤的假结果,则报告100%的覆盖率。如果一个决定没有真结果或假结果,金宝app仿真软件覆盖报告该决策的50%覆盖率。决策覆盖范围为饱和块是覆盖的总和上限而且下限决策。例如,如果a饱和块获得100%的覆盖上限决定,和50%的覆盖率下限决定,然后饱和Block总共获得75%的决策覆盖率,4个决策结果中有3个令人满意。
如果输入信号到饱和块是一个矢量或矩阵,每个元素是一个单独的覆盖度量。例如,一个两元素向量的输入信号会在的范围内导致总共8个决策结果饱和方块而不是方块。
的饱和块包含输入的上限值和下限值的隐式比较。因此,如果您选择关系边界的覆盖率度量报道窗格中的“配置参数”窗口,则饱和块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
饱和动态
如果您选择饱和整数溢出覆盖率度量,即饱和动态块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
金宝app设计验证器函数MATLAB函数块
下面是MATLAB中的函数函数块接收金宝appSimulink设计验证器覆盖范围:
sldv.condition
(金宝appSimulink Design Verifier)sldv.test
(金宝appSimulink Design Verifier)sldv.assume
(金宝appSimulink Design Verifier)sldv.prove
(金宝appSimulink Design Verifier)
每个函数求一个表达式的值expr
,例如,sldv.test (
,在那里expr
)expr
是任意有效的MATLAB布尔表达式。金宝appSimulink设计验证器覆盖率度量表达式的时间步数expr
计算结果为true。
如果expr
至少对一个时间步成立,金宝appSimulink设计验证器该功能的覆盖率为100%。否则,金宝app仿真软件覆盖软件报告该功能的覆盖率为0%。
根号,签名根号,对等根号
如果您选择饱和整数溢出覆盖率度量,即√6,签署√6,互惠√6块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
和,加,减,元素和
如果您选择饱和整数溢出覆盖率度量,即总和,添加,减去,元素和块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
开关
Switch块根据块的控制输入接收决策覆盖。决策覆盖措施:
控制输入计算为true的时间步数。
控制输入计算为false的时间步数。
决策点的数量取决于控制输入是标量还是矢量。
如果您选择饱和整数溢出覆盖率度量,即开关块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
的开关块包含其第二个输入与阈值的隐式比较。因此,如果您选择关系边界覆盖率度量,即开关块接收关系边界覆盖。有关更多信息,请参见相关边界覆盖范围.
SwitchCase,SwitchCase行动子系统
的SwitchCase块和SwitchCase动作子系统接受决策覆盖。的金宝app仿真软件覆盖软件对块中定义的每个开关情况和默认情况分别测量决策覆盖率。决策结果的数量等于情况条件的数量加上默认的
Case,如果定义了。
软件报告每个案例计算为true的总时间步数。如果每个情况(包括默认情况)至少有一次评估为真,则决策覆盖率为100%。该软件通过至少一个时间步评估为真的案例数量除以案例总数来确定决策覆盖率。
如果SwitchCase块不包含默认的
在案例中,软件衡量决策覆盖率的时间步骤数,其中没有一个案例被评估为真。在覆盖率报告中,该覆盖率报告为隐性违约.
测试条件
测试条件块接收金宝appSimulink设计验证器报道。金宝appSimulink设计验证器覆盖范围基于块对话框中定义的点和间隔。金宝appSimulink设计验证器覆盖率度量块中定义的每个点或间隔满足的时间步数。客观结果的总数基于测试条件块中定义的点或间隔的数量。
如果块中定义的所有点和间隔至少满足一个时间步长,金宝appSimulink设计验证器覆盖率是100%。否则,金宝app仿真软件覆盖软件将覆盖率报告为至少一个时间步骤中满足的点和间隔的数量,除以为块定义的点和间隔的总数。
测试的目标
测试目标块接收金宝appSimulink设计验证器报道。金宝appSimulink设计验证器覆盖范围基于块对话框中定义的点和间隔。金宝appSimulink设计验证器覆盖率度量块中定义的每个点或间隔满足的时间步数。客观结果的总数基于测试目标块中定义的点或间隔的数量。
如果块中定义的所有点和间隔至少满足一个时间步长,金宝appSimulink设计验证器覆盖率是100%。否则,金宝app仿真软件覆盖软件将覆盖率报告为至少一个时间步骤中满足的点和间隔的数量,除以为块定义的点和间隔的总数。
触发模式
一个模型块可以引用在模型的根级包含基于边缘的触发器端口的模型。触发的模型接收决策、条件和MCDC覆盖。
决策覆盖措施:
触发引用模型的时间步数,表示一个真实的决策。
引用模型未触发的时间步数,表示错误的决策。
如果至少有一个时间步骤为真且至少有一个时间步骤为假,则决策覆盖为模型引用触发模型的块为100%。如果没有时间步骤为真,或者没有时间步骤为假,则决策覆盖率为50%。
只有当触发输入是一个向量时,才会触发金宝app仿真软件覆盖软件测量参考模型中触发端口的条件覆盖率。对于触发端口,条件覆盖措施:
触发端口的每个元素的时间步数为真。
触发端口每个元素的时间步数为false。
该软件根据可能的条件总数以及至少一个时间步骤中有多少为真,至少一个时间步骤中有多少为假来报告条件覆盖率。
如果触发端口是矢量,则软件仅测量触发端口的MCDC覆盖范围。因为引用模型的触发端口是或
对于矢量输入,如果在至少一个时间步中,每个矢量触发端口独家为真,并且如果在至少一个时间步中,所有矢量触发端口输入为假,则MCDC覆盖率为100%。该软件将矢量的每个元素作为MCDC覆盖测量的单独条件。
触发子系统
触发子系统块接收决策、条件和MCDC覆盖。
决策覆盖措施:
触发块的时间步数,表示真正的决策。
未触发块的时间步数,表示错误的决定。
如果至少有一个时间步骤为真,至少有一个时间步骤为假,则决策覆盖率为100%。如果没有时间步骤为真,或者没有时间步骤为假,则决策覆盖率为50%。
的金宝app仿真软件覆盖只有当触发器输入是一个矢量时,软件才会测量触发器输入的条件覆盖率。对于触发器输入,条件覆盖度量:
触发边的每个元素为真时的时间步数。
触发边的每个元素为假的时间步数。
该软件根据可能的条件总数以及至少一个时间步骤中有多少为真,至少一个时间步骤中有多少为假来报告条件覆盖率。
如果触发输入是矢量,则软件仅测量触发输入的MCDC覆盖范围。因为子系统的触发边是或
对于所述矢量输入,如果在至少一个时间步中,每个矢量触发边输入独家为真,并且如果在至少一个时间步中,所有矢量触发边输入为假,则MCDC覆盖率为100%。该软件将矢量的每个元素作为MCDC覆盖测量的单独条件。
真值表
真值表块是一个状态流块,允许您在Simulink模型中直接使用真值表逻辑。金宝app真值表块接收条件、决策和MCDC覆盖。有关使用状态流真值表的模型覆盖的更多信息,请参见状态流真值表的模型覆盖.
一元-
如果您选择饱和整数溢出覆盖率度量,即一元-块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
加权抽样时间数学
如果您选择饱和整数溢出覆盖率度量,即加权抽样时间数学块接收饱和的整数溢出覆盖。有关更多信息,请参见饱和整数溢出覆盖.该软件将矢量或矩阵的每个元素作为单独的覆盖测量。
While迭代器,While迭代器子系统
While迭代器块和While迭代器子系统得到决策覆盖。决策覆盖率是根据而
条件值,该值由而
条件满足时(为真),或而
条件未被满足(假)。金宝app仿真软件覆盖软件报告的总次数,每个而
条件的计算结果为true和false。如果而
条件的计算结果至少一次为真,至少一次为假,决策覆盖而
条件是100%。如果没有而
条件为真,或者不为而
条件为假,决策覆盖率为50%。
如果迭代限制被超过(true)或没有超过(false),软件将独立地测量决策覆盖率。如果迭代限制至少有一次为真,至少有一次为假,则迭代限制的决策覆盖率为100%。如果没有迭代限制为真,或者没有迭代限制为假,则决策覆盖率为50%。如果你设置最大迭代次数来-1
(没有限制),迭代限制的决策覆盖率对于所有迭代为真,对于零迭代为假,决策覆盖率为50%。