用于验证和验证的MATLAB和Simulink

使用验证和验证嵌入式系统基于模型的设计

工程团队使用基于模型的设计使用MATLAB和Simulink设计复杂的嵌入式系统,并生成高质量的C、C++和HDL代码。通过遵循高完整性验证工作流,团队可以使用基于仿真的测试和静态分析,以严格和自动化的方式补充基于模型的设计,以尽早发现错误并实现更高的质量。

需求工程

非正式文本需求,可以存储在文档、电子表格或需求管理工具(如IBMRational DOORS)中。需求工具箱允许您导入、查看、编写和管理需求以及您的架构、设计、生成的代码和测试工件。你可以创建数字线程在System Composer、Simulink、Stateflow或SimulinkTest中的测试用例中从需求到设计。有了这种可追溯性,您可以确定实现或测试差距,并快速了解更改对设计或测试台的影响。

你可以使需求形式化并分析它们的一致性、完整性和正确性,以便使用需求工具箱中的需求表块提前验证它们。使用时间评估在Simulink测试中,您可以通过以可评估和调试的自然语言格式指定具有精确语义的评估来验证文本需求。


Simulink中的系统故障注入和FMEA

您可以使用模拟来分析故障和其他异常行为的影响,以制定安全要求并验证系统的稳健性。Simulink故障分析仪使用模拟进行系统故障影响和安全分析。产品性能无需修改设计的故障注入模拟。您可以管理在Simulink、Simscape和System Composer中建模的故障。Simulation Data Inspector可用于分析故障影响。您可以使用“多个仿真”面板进行故障敏感性分析。你可以执行安全性分析例如故障模式和影响分析(FMEA),同时利用模拟。Simulink Fault Analyzer允许您在故障、危险、故障检测和缓解逻辑以及其他工件之间创建正式连接(使用需求工具箱)。


符合认证标准

根据DO-178、,ISO 26262标准、IEC 61508、IEC 62304和MathWorks咨询委员会(MAB)样式准则。Simulink检查提供业界公认的检查和衡量标准,用于识别开发过程中违反标准和准则的行为。您可以创建自定义检查以满足自己的标准或准则。IEC认证工具包(用于ISO 26262和IEC 61508)和DO认证工具包(适用于DO-178和DO-254编号)提供工具鉴定工件、证书和测试套件,帮助您鉴定代码生成和验证产品,并简化嵌入式系统的认证。


证明没有错误并正式验证要求

正式验证发现隐藏的设计错误这会导致整数溢出、死逻辑、数组访问违规以及在不模拟设计的情况下被零除。Simulink Design Verifier可以正式验证您的设计是否没有错误或安全漏洞。Simulink Design Verifier还可以证明您的设计满足关键要求。如果该工具发现异常,则会生成一个反例用于调试。


模型测试覆盖率分析

确定测试中的差距、意外功能或需求错误非常重要。Simulink覆盖范围计算在测试期间执行了多少模型或生成的代码。它适用行业标准度量例如条件、决策、修改的条件/决策(MCDC)和自定义覆盖目标。Simulink设计验证程序可以自动生成测试用例分析不完整的覆盖并实现背对背测试的结构和功能覆盖目标。


静态代码分析

为了验证手写和生成的代码,Polyspace产品使用形式化方法查找错误并证明没有关键运行时错误,无需测试用例或代码执行。Polyspace Bug Finder检查并记录是否符合MISRA、ISO 26262、IEC 61508、DO-178和FDA法规等标准。您可以检查软件安全漏洞和标准,如CWE、CERT-C、ISO/IEC 17961等。Polyspace Code Proverr执行静态分析,以证明C和C++源代码中不存在溢出、被零除、出界数组访问以及其他运行时错误。