检测违反高完整性系统建模规范的行为
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.打开模型
此示例模型解释了余数和倒数运算、平方根运算、对数和 log10 运算以及 Reciprocal Square Root 模块的用法。
open_system('sldvexHislChecks');

2.执行设计错误检测分析
该模型预先配置了高完整性系统建模检查、余数和倒数运算的使用 - hisl_0002、平方根运算的使用 - hisl_0003、对数和 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.点击以红色突出显示的倒数平方根模块。结果检查器显示违反 hisl_0028 规范的摘要。

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

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