检测违反高完整性系统建模规范的情形
Simulink® Design Verifier™ 设计错误检测分析可检测以下违反高完整性系统建模规范的情形:
余数和倒数运算的使用 - hisl_0002
平方根运算的使用 - hisl_0003
log 和 log10 运算的使用 - hisl_0004
Reciprocal Square Root 模块的使用 - hisl_0028
余数和倒数运算的使用 - hisl_0002
指定是否检查导致非有限结果的 rem 和 reciprocal 运算的使用。
这对应于高完整性系统建模的 hisl_0002 检查。有关详细信息,请参阅 hisl_0002:Math Function 模块的使用(rem 和 reciprocal)。
平方根运算的使用 - hisl_0003
指定是否检查输入可能为负值的 Square Root 运算的使用。
这对应于高完整性系统建模的 hisl_0003 检查。有关详细信息,请参阅 hisl_0003: Square Root 模块的使用。
log 和 log10 运算的使用 - hisl_0004
指定是否检查导致非有限结果的 log 和 log10 运算的使用。
这对应于高完整性系统建模的 hisl_0004 检查。有关详细信息,请参阅 hisl_0004: Math Function 模块的使用(自然对数和以 10 为底的对数)。
Reciprocal Square Root 模块的使用 - hisl_0028
指定是否检查输入可能为零或负值的 Reciprocal Square Root 模块的使用。
这对应于高完整性系统建模的 hisl_0028 检查。有关详细信息,请参阅 hisl_0028: Reciprocal Square Root 模块的使用。
检测违反高完整性系统建模规范的情形
此示例说明如何检测违反高完整性系统建模规范的情形。
1.打开模型
此示例模型解释余数和倒数运算的使用、平方根运算的使用、log 和 log10 运算的使用以及 Reciprocal Square Root 模块的使用。
open_system('sldvexHislChecks');

2.执行设计错误检测分析
此模型预配置了以下高完整性系统建模检查:余数和倒数运算的使用 - hisl_0002、平方根运算的使用 - hisl_0003、log 和 log10 运算的使用 - hisl_0004 以及 Reciprocal Square Root 模块的使用 - hisl_0028。有关详细信息,请参阅Design Verifier 窗格:设计错误检测。
要执行设计错误检测分析,请在 Design Verifier 选项卡的模式部分中,选择设计错误检测。然后点击检测设计错误。
软件会分析模型是否存在违反高完整性系统建模规范的情形,并在“结果摘要”窗口中显示结果。结果表明,29 个目标中有 15 个被证伪。

3.查看分析结果
点击在模型上突出显示分析结果。导致违反高完整性系统建模规范的模块会以红色突出显示。
a.点击以红色突出显示的 Rem 和 Reciprocal 模块。结果检查器会显示违反 hisl_0002 规范的摘要。

b.点击以红色突出显示的 Sqrt 模块。结果检查器会显示违反 hisl_0003 规范的摘要。

c.点击以红色突出显示的 Log 和 Log10 模块。结果检查器会显示违反 hisl_0004 规范的摘要。

d.点击以红色突出显示的 Reciprocal Square Root 模块。结果检查器会显示违反 hisl_0028 规范的摘要。

e.点击以红色突出显示的 MATLAB Function 模块。结果检查器会显示 hisl_0002、hisl_0003 和 hisl_0004 检查的摘要。

4.查看详细分析报告
要查看详细的分析报告,请在“结果摘要”窗口中点击 HTML。报告会显示模型中所有高完整性系统建模违规发生情况的摘要。
5.清理
要完成此示例,请关闭模型。
close_system('sldvexHislChecks', 0);