检测 AUTOSAR 软件组件模型中的设计错误
AUTOSAR 标准定义了在 AUTOSAR 运行时环境中运行的基础软件 (BSW) 服务。这些服务包括 NVRAM 管理器 (NvM) 诊断事件管理器 (Dem) 和功能抑制管理器 (FiM) 服务。下面的示例展示了如何使用 Simulink Design Verifier 在 AUTOSAR 组件模型上运行设计错误检查。
准备模型
打开 AUTOSAR 软件组件。本示例使用 AUTOSAR Simulink 模型 autosar_bsw_monitor.
model = 'autosar_bsw_monitor';
open_system(model);
监视组件 autosar_bsw_monitor 包含对 Dem 服务接口 DiagnosticMonitor 的一次调用和对 Dem 服务接口 DiagnosticInfo 的四次调用。四个 DiagnosticInfo 调用是使用基本软件库模块DiagnosticInfoCaller (AUTOSAR Blockset) 实现的。每个模块都配置为调用 DiagnosticInfo 操作 GetEventFailed。GetEventFailed 调用使用客户端端口 TPS1StuckLow、TPS1StuckHigh、TPS2StuckLow 和 TPS2StuckHigh。
执行设计错误检测分析
为了检测上述组件模型中的设计错误,请按如下方式配置 Design Verifier 选项:
opts = sldvoptions; opts.Mode = "DesignErrorDetection"; opts.DetectDeadLogic = 'on'; opts.DetectActiveLogic = 'on'; opts.DefectChecker = "off";
分析模型。
[ status, files ] = sldvrun('autosar_bsw_monitor', opts, true);
Simulink® Design Verifier™ 结果摘要窗口表明已创建分析框架模型 autosar_bsw_monitor_SldvStub。您还可以使用 sldvextract 函数生成相同的分析框架模型。
查看分析结果
Simulink Design Verifier 结果摘要窗口显示,模型中的 18 个目标中有 18 个是活动逻辑。

要查看详细的分析报告,点击结果摘要窗口中的 HTML 链接。设计错误检测目标状态部分包括模型的活动逻辑目标状态。

分析报告还在分析框架信息部分捕获有关用于分析模型的分析框架的信息。分析框架信息部分中的用于分析的桩件 Simulink 函数部分列出了桩件 Simulink 函数。

请注意,Simulink Design Verifier 假定当在单个步骤中多次调用函数时,桩件的 Simulink 函数的输出会被保留。