0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

实施各种软件值得付出努力吗?

星星科技指导员 来源:ADI 作者:ADI 2023-06-28 15:34 次阅读

功能安全需要应对随机故障和系统故障。软件只有系统故障,因为软件没有随机故障,因为如果出现相同的情况,软件故障通常每次都以相同的方式导致系统故障。达到更高安全水平的一种方法是实施双通道系统,每个通道中都有不同的软件。具有相同软件的冗余通道会将软件作为单点故障。如果两个通道具有不同的软件,那么争论是它们不太可能同时以相同的方式失败,从而允许更高的SIL索赔。听起来不错,但有问题吗?让我们在博客中更深入地或尽可能深入地了解。

首先,让我们看一下IEC 61508中提供了哪些指导,然后看看文献中提供了哪些指导以及一些基于多样性的设计模式。

在IEC 61508-3:2010中,以下子条款涵盖了这一点

wKgZomSb6VmARZNbAAEgfGlMYms433.png

图 1 - IEC 61508-3 的相关摘录

看看IEC 61508-2:2010子条款7.4.3说SC(系统能力)最多只能提高一个级别。因此,例如,如果两个软件的SIL声明为SIL 1,那么组合最多为SIL 2。我想最多只允许增加一个的限制是存在的,因为将这两个项目结合起来的人不知道各个开发的细节,也许可能存在一些隐藏的常见原因故障,例如使用的工具。如果从头开始开发这两个软件,你可能会做得更好。

IEC 61508-3 附录 A 中的表格提供了一些指导,表 A.2 提供了不同架构的四种替代版本,表 A.10 要求对软件进行 CCF(常见原因故障)分析,此措施建议在 SIL 2 中,强烈建议用于更高的 SIL。

wKgaomSb6V6AGrf8AAFOED8TWZQ370.png

图 2 - IEC 61508-3:2010 摘录

但是开发各种软件有多难。Philip Koopman在他的优秀著作“更好的嵌入式系统软件”第26.3.3节中对这个话题有一个很好的评论。在本节中,他指出,实现真正多样化的软件确实很困难,但很容易获得一定程度的多样性。他指出,量化所实现的多样性也很难,这并不奇怪,因为硬件CCF分析在标准中有更多的指导,仍然更多的是工程判断而不是科学。Philip Koopman进一步警告说,“许多人(包括我们)认为,如果你的时间和资源有限,你最好制作一个真正好的软件版本,而不是试图制作两个独立的版本,而这两个版本本身就没有那么好。两个版本中可能会有太多相同的错误。

我看了看是否有任何研究来支持这一观点。我看到的关于这个主题最有趣的笔记是下面显示的,他们给 27 名学生提供了一个规范,并要求他们编写软件来实现它,然后检查有多少不同的软件以同样的方式失败。它确实支持了编写各种软件确实很难的观点。

wKgZomSb6WSAH3p_AAJZD87N1Mc334.png

图3 - 关于不同软件价值的有趣实验论文

然后是HSE数据,它们显示了编码阶段(设计和实现)中很少的错误,这表明除非规范具有多样性,否则您不会获得很多好处。

wKgaomSb6WmANVagAADQryqv5_Q366.png

图4 - 系统因HSE而失败的原因

为波音777开发电传飞行软件的团队似乎已经采用了三种不同的软件,开发了三种不同的规格,使用三个不同的开发团队,他们不应该相互交谈,运行在三台不同的(不同的)计算机上控制飞机。然后,当其中一个产出与其他产出不一致时,使用选民来选择行动方案。

航天飞机使用了一种类似的架构,使用五台计算机,四台相同,一台不同。各种微型计算机上的软件也多种多样。

基于多样性的功能安全软件的一种设计模式是N版本编程,它使用根据同一组需求开发的不同代码的多个版本,并对其输出进行投票。

wKgZomSb6XKAY5FqAACbhJ0wOEg428.png

图 5 - N 版本编程模式的绘制(安全关键型嵌入式系统的设计模式))

如果我们将上述内容视为可靠性框图,那么投票者是CCF来源的明显弱点,除非投票者是超可靠的,否则从高值N中获得的好处将是有限的。

让我们将多样化的软件方法与一些替代方案进行比较。双核锁步微控制器不实现软件分集,而是一种硬件安全机制,因为两个内核将运行相同的软件。相比之下,软件锁步/软件 RMT 与逐周期锁步不同,可以实现软件多样性,但比时钟逐周期锁步方法检测差异的时间更长。软件锁步可以在不同的处理器上运行,甚至可以在单个处理器的冗余线程上运行,并在选定的观察点比较它们的输出。

即使您实施了各种软件,用于生产软件的工具呢?这些也可能是常见原因故障的根源,但如果在CCF中考虑到这一点并选择了不同的工具,或者选择的工具以满足整体安全功能的SIL要求,或者您使用适合组合元件SIL的工具,您可能很高兴。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    6812

    浏览量

    147648
  • 处理器
    +关注

    关注

    68

    文章

    18288

    浏览量

    222176
  • 嵌入式
    +关注

    关注

    4983

    文章

    18286

    浏览量

    288506
收藏 人收藏

    评论

    相关推荐

    在我们得到的时候是否需要付出

    本帖最后由 eehome 于 2013-1-5 10:09 编辑 现在有很多人进入到了电子行业,行业内也存在着很多的精英和初学者,很多人想 着免费索取,但是又有很多人想有偿付出,这是一个矛盾的表现,那么是否我们在索取的时候应该付出些什么,怎么去表现我们的
    发表于 08-06 11:07

    付出等于收获,那是自以为~~~

    付出等于收获,那是自以为~~~{:4_130:}
    发表于 12-10 12:38

    各种资料 值得一看

    各种资料值得一看顶起!!!
    发表于 06-23 15:40

    项目管理软件软件实施服务行业的运用

    捷为软件—一以项目管理为核心2013.10.12行业背景介绍软件产品与其它产业产品相比,具有非物质性、零边际成本、收益递增、共享性等特点。软件实施服务服务更是体现了就是以服务为导向、以
    发表于 10-12 16:05

    芈月传中值得我们温度传感器厂家学习的一句话“您付出多少,就会回报多少”

    芈月传最近很火,就像当年的甄嬛传,很喜欢孙俪,剧中扮演的角色都心存感恩,现实生活中我们也应该如此,剧中很多都值得我们学习,就像我们的工作,生活,不努力怎么会成功,作为温度传感器厂家的我们也是如此,一直努力做好产品,
    发表于 01-04 15:47

    CRM软件成功实施的6个步骤?!

    有助于你避免错误的产生,还可以缩短实施周期。 6、开发、部署、测试、正式投入使用 CRM方案的设计,需要企业与CRM软件供应商两方的共同努力。为使CRM项目顺利实施,企业应与供应商之间
    发表于 07-10 10:43

    企业为什么需要实施MES系统软件

    ,是生产活动与管理活动信息沟通的桥梁。不实施MES系统软件,管控一体化只是一句空话。对于面向制造加工业和过程工业的ERP,脱离MES系统软件将无法根据市场需求去组织、管理和优化生产。 在实施
    发表于 10-15 20:34

    如何实施软件AES以及AES加密/解密

    应用:通过软件实施高级加密标准 BSP 版本: NUC230/240 Series BSP v3.01.002 硬件: NuTiny - EVB - NUC240 - LQFP100 V1.0
    发表于 08-22 06:41

    ARMv8-A TrustZone软件实施SVE的系统的影响

    本文档介绍ARMv8-A[ARMv8]的可伸缩向量扩展[SVE]对在应用程序处理器上以安全状态执行的软件的影响。 本文档考虑了部署现有ARMv8-A TrustZone软件实施SVE的系统的影响,并为
    发表于 08-23 06:17

    基于开源软件软件工程实施系统研究

    文章介绍了开源软件软件工程实施各阶段提供的支持,并根据软件工程实施的实际需求,建立了一个基于开源软件
    发表于 12-22 13:49 6次下载

    基于CMMI的软件项目实施策略研究_张敏

    基于CMMI的软件项目实施策略研究_张敏
    发表于 03-19 11:33 0次下载

    软件实施工程师是干什么的 前景又怎么样

    软件实施工程师的工作是软件产品服务主线的一个决定性环节,软件的成功离不开实施。那什么才是成功的实施
    的头像 发表于 03-19 10:32 6.9w次阅读

    构建智慧城市和可持续社区需有哪些技术付出

    构建智慧城市和可持续社区需要付出哪些努力?查看ADI工业传感部门总经理Michael Murray关于“构建全集成智慧城市需要付出哪些努力”的小组讨论节选。
    的头像 发表于 07-04 06:00 1246次阅读

    软件定义存储的实施是对的吗

    在合理实施的情况下,软件定义存储能够在应用和物理存储资源之间建立硬件独立和负载无关的存储应用层。与任何技术实现一样,在实施软件定义存储抽象层时也有正确和错误的方式。
    发表于 03-20 16:14 389次阅读

    美国对EDA软件实施新的出口管制

    美国对EDA软件实施新的出口管制 昨天美国又启动了新一轮的EDA软件出口管制,美国商务部对设计GAAFET(全栅场效应晶体管)结构集成电路所必须的EDA软件
    发表于 08-16 15:02 862次阅读