验证和确认计划
验证和确认流程也必须在安全功能实现之前计划好。所有的设计阶段都要选择故障避免文档中的措施进行验证。计划的措施必须阐明目前的项目将在真实情况中如何表现。举个例子,计划的措施可以是静态代码分析。那么对应的验证和确认计划应当覆盖所有将由代码检查器检验的软件模块(SW-Module),包含使用该工具的流程并将如何对结果进行处理、分析和存档的说明。
另一个例子是FPGA设计过程中的网表检查。第一步是明确这个步骤必须完成,谁来执行这个任务以及输入和输出的文件是什么。下一步是定义进行该任务需要使用的工具以及发布流程。
该计划可用作针对所有验证和确认流程的检查表,能够为所有计划流程的完成度提供完整的概览。
工具认证
针对在生命周期中的所有阶段密集使用任何类型软件工具的情况,所有将用于实现安全部分的工具将按照它们对于安全功能的影响进行分析。这意味着,首先需要列出所有的工具,然后将所有的软件工具根据工具重要性等级(IEC61508-4:2010标准中的T1、T2、T3等级)进行分类。
表4:工具重要性等级
表4展示了标准中的相关定义以及莱迪思工具列表,后者按照使用FPGA实现安全相关任务时的相应等级进行分类。在真实的项目中,该列表需要填上所有使用到的工具。知晓某个工具在项目中的重要性是有用的,但这并不会让人们获得更加安全的系统。这就是为什么要进行额外的工作,比如说进行工具认证让工程师对使用的工具有把握。有把握的意思是能够确认或知晓工具发生的错误。如果该工具能够正确地满足规范要求并且使用者已经获得了该工具经过确认的凭据,那么他就可以不受任何约束地使用该工具。如果该工具无法按照规范要求工作,用户则需要相关错误的信息并暂时避开导致错误发生的情况。如果分析人员得出的结论是工具的输出不可信或规范还不够详细,用户就必须制定其他方法来检测上述错误。
分析过程有可能为用户带来潜在问题。如果用户自身不具备有关该工具的足够知识、经验或数据,就会产生问题。在这种情况下,如果该工具的制造商能够为客户提供相关支持,比如所有必要的数据,则会非常有帮助,如果工具制造商还能提供由独立机构认证和批准的数据和文档,那就更为理想了。
莱迪思已邀请TÜV Rheinland按照IEC61508标准对“Diamond 2.1”工具套件进行了高达SIL 3级别的审核。这为安全项目团队提供了使用该工具链以及所有相关文档和安全手册的便利,使用者无需进行额外的确认。审核所获的结果节约了项目相关的成本和时间,并简化了为安全应用选择莱迪思FPGA的决策过程。同上述工具一道,莱迪思还可提供经过量产验证的 FPGA,可靠并且具备认可的失效概率数据。由相关机构颁发的认证让评估人员更加信任莱迪思的产品,并能加速型号审核流程。
安规产品设计的工作流程
除了所有的功能安全管理,还要实现安全设计流程以确保产品安全。让我们假设有一个需要实现SIL 2或SIL 3级别设备的项目。
项目第一步是建立安全方案。安全方案能够勾勒出具备相关细节的大致架构,如包含单通道或双通道架构、通信路径、输入和输出接口、电源等信息。安全要求规范(safety requirement specification, SRS)由安全方案和产品规范衍生。为了使方案确定下来,推荐在块层面执行第一次失效模式和影响分析(Failure Modes and Effect Analysis, FMEA)。通常情况下,FMEA结果会推进要求列表的制定。IEC61508标准提供了一些失效控制措施,包括复杂电子元器件故障模式和指令故障检测模式,用于支持结构化分析。在双通道或多通道架构中,共因失效必须得以定位和消除。对于安全设计来说,环境和EMC情况也是非常重要的。根据应用的情况,应当按需参照其他标准进行确认和检视。所有的要求都确定下来之后,就可以按照由高到低,从架构到模块的顺序开始设计。请记住一定要建立所有步骤的规范和描述,因为这些输入文件将用于所有的审核以及测试阶段。为了项目流程的顺利推进,所有的测试应当与开发同时进行。
在所有的原理图和电路导出之后,部分FMEA必须完成,随后进行安全参数的计算。部分FMEA也会被用做故障导入测试(Fault Insertion Test, FIT)规范中的输入信息。软件应当按照图2所示的流程来实现。
在完成系统和型号等所有测试后,该设计应当能够满足所有安全要求。最后一点特别关键,所有安全相关的信息必须写入新产品的用户手册中。
第一次实行这样的流程和设计可能会碰到一些困难。无论如何,良好的计划以及安全设计方面的专业技术将帮助您在市场上推出质量和安全性都很优秀的产品。为了降低启动成本,Innotec(http://www.innotecsafety.com/)可提供安全设计的审核服务,帮助您解决从方案到整合过程中的问题。
评论
查看更多