汽车芯片和集成电路(IC)是高级驾驶员辅助系统(advanced driver assistance systems-ADAS)和联网自动驾驶汽车(connected autonomous vehicles-CAV)的基础。尽管IC已经变的非常可靠和耐用,但依然会发生故障。例如物理现象(如电迁移)可以引起开路和短路,从而对IC造成永久损害。宇宙辐射中的阿尔法粒子会撞击集成电路并破坏存储器的内容。最终,这些事件可能导致故障,甚至可能导致人命丧失。丰田意外加速事件就是电子设备故障如何导致车祸的一个不幸地证明。一项备受瞩目的研究得出的结论是,受影响的丰田车型,其中一个关键问题与IC存储器中的纠错功能发生故障(或缺少该功能)有关联。此外,该研究估计,对于大量的汽车,危险故障几乎每天都会发生。

与丰田案中涉及的芯片相比,今天的集成电路要复杂几个数量级。即使是中端车辆,其功能也远远超出自动加速和制动,还包括自动转向(主动车道保持辅助系统)。晶体管尺寸的缩小和降低功耗的需求意味着破坏集成电路状态所需的能量更少,使其更加脆弱。

为了防止或控制故障,现代汽车IC包括各种附加功能,称为安全机制(safety mechanisms-SM)。专门用于内存保护,并且被广泛使用的SM包括提供单错误纠正和双错误检测(single-error correction and double-error detection-SECDED)甚至双错误纠正和三重错误检测(double-error correction and triple-error detection-DECTED)的错误纠正代码(error-correcting code-ECC)模块。

测量芯片安全

ISO 26262是道路车辆电子系统的功能安全标准,它定义了四个汽车安全完整性等级(ASIL-A,ASIL-B,ASIL-C和ASIL-D)的关键指标和目标。与控制转向系统的IC(可能为ASIL-D)相比,控制尾灯的IC所要求的完整性等级(例如ASIL-A)更为宽松。根据要求的ASIL,开发汽车电子产品的工程师必须实施SM并提供证据。

故障模式、效果和诊断分析(FMEDA)是一个已建立的、系统的过程,用于对IC的故障模式和诊断能力进行定量分析(见下图)。即使对于ASIL-B目标,这也是一项耗时且昂贵的任务。FMEDA过程包括三个关键步骤:(1)验证IC安全体系结构以及根据故障模式对硬件功能和故障进行划分;(2)确定诊断范围,以衡量安全机制防止违反安全目标的能力;(3)计算ISO 26262硬件安全指标。

ISO 26262的关键安全指标是单点故障指标(single-point fault metric-SPFM),潜在故障指标(latent fault metric-LFM)和随机硬件故障的概率指标(probabilistic metric for random hardware failure-PMHF),单点故障或残留故障会导致违反安全目标。SM旨在减少残留故障的数量,从而实现目标SPFM。另一方面,潜在故障本身不会导致违反安全目标,但是如果发生第二个故障,则可能会违反安全目标。潜在故障也称为多点故障(二级)。例如,一个影响SM的故障可能是潜在的,并会损害其功能。一个可能发生在很久以后的二次故障(理应被SM检测并指示出来),可能会被漏掉并导致危险的IC故障。

还值得注意的是,SM中的故障也可能残留。这是一种不幸的情况,其中保护功能的故障可能导致IC故障。尽管此类故障应按比例减少(否则,SM会使安全指标恶化而不是改善安全指标),但只有全面的分析才能确认这一点。

次优的FMEDA流程依赖于容易出错且费力的安全架构。此外,验证和安全工程师经常使用大量的故障模拟来确定安全指标。故障模拟具有三个关键缺陷:(1)它只能提供依赖于激励的指标,从而影响对结果有效性的信心,尤其是对于脱离环境的安全元素(safety elements out of context-SEooC);(2)需要大量的计算资源;(3)建立,分析结果并提高刺激质量需要大量的工程工作。另一方面,基于形式化方法的故障分类更为严格,不需要激励,但可能会导致复杂性问题,从而限制了其适用性。

FMEDA过程的三个关键步骤:(1)安全架构分析;(2)确定诊断范围;(3)计算ISO26262安全指标。

安全意识的硬件分区

安全分析步骤使用了安全感知的硬件分区过程,通过故障贡献分析(Fault
Contribution
Analysis-FCA)的应用实现自动化。失效模式与由关键设计信号界定的设计子部分相关,这些设计信号包括预期功能的受保护输出以及SM的诊断输出。每个SM子部件可以分为两类:(1)如果其故障可以传播到预期功能的输出(观察点),则处于活动状态;(2)如果其故障只能传播到SM的诊断输出(诊断点),则为被动。子部件被处理以生成故障列表和属性(例如,估算硅面积),可用于故障分析和其他后续步骤。值得注意的是,安全分析步骤可扩展到大型复杂的设备,从而避免了故障仿真和标准形式技术的缺点。

硬件分区步骤的结果立即提供了保守估计的安全指标。如果估计结果未达到目标ASIL,则故障模拟或基于形式的故障分析只能用于特定的子部分。故障传播分析(Fault
Propagation Analysis-FPA)应用程序和故障检测分析(Fault Detection
Analysis-FDA)应用程序可自动执行此附加故障分析步骤,这实际上有效地减少了估计指标的悲观预期,从而改善了结果。FPA应用程序会识别安全故障,这些故障不会导致违反安全目标,因为它们不会传播到安全关键输出。FDA应用程序可以识别故障,这些故障将始终由SM检测和指示。

最后,每个子部分的故障分析结果可以组合起来,以得出整个SoC的安全指标。此步骤也可以通过硬件度量计算(Hardware Metrics Computation-HMC)应用程序自动执行。

结论

满足ISO

26262的要求具有一定的挑战性。根据目标ASIL,提供SPFM和LFM达到足够高值的证明,可能需要准确识别残留故障和潜在故障。在SM中潜在的残留故障和潜在故障需要详细分析。对于具有多个SM的大型SoC来讲,硬件安全指标的计算通常依赖于专家的手动分析和故障仿真。手动分析需要大量的工作且容易出错。故障仿真需要大量的计算资源,以及大量的工程工作来开发一个测试平台并证明合适的工作负载。

OneSpin的研究介绍了一种可替代的、可扩展的硬件安全指标计算方法。大型SOC可以使用安全意识分区工具分解为部件和子部件,这些工具需要最少的用户输入。可以快速估计各子部件的故障分类结果。如果保守估计未达到目标,则可以有选择地部署准确的故障分类。这可能包括识别具有或不具有纠错功能的SM中的安全,残留和潜在故障。通过使用基于形式的技术,可以在不需要测试平台或故障仿真的情况下,执行自动的、严格的故障分类。

当前,提供汽车SoC和半导体IP的大型组织经常依靠内部工具来改善其IC开发流程。小型和初创企业在安全合规性方面苦苦挣扎,因为他们需要将投资重点放在其独特的功能上,并且可能会很难雇用安全专家。汽车行业需要成熟且易于使用的电子设计自动化(electronic
design
automation-EDA)解决方案,这些解决方案需要是在多家公司和IC项目中实践的最佳结果,从而降低安全合规成本和专家需求。OneSpin的解决方案解决了这些挑战。

-版权所有,抄袭必究-

更多信息:http://www.softtest.cn/

汽车芯片如何高效符合ISO 26262功能安全标准的更多相关文章

  1. 保证软件开发过程遵循ISO 26262功能安全标准的十个主要进阶步骤

    保证软件开发过程遵循ISO 26262功能安全标准的十个主要进阶步骤 为保障汽车软件质量,使软件开发符合ISO 26262功能安全标准,需要我们对开发流程做出改进,并与2018年的更新同步. 本视频课 ...

  2. 功能更新 | medini analyze — 符合ISO 26262的功能安全平台工具

            汽车电子电气系统的功能安全随着智能驾驶.新能源等新兴技术的发展而愈发受到重视.在国际功能安全标准ISO 26262的落地过程中遇到了很多的棘手问题:如何正确而有效地实施HARA以得到合 ...

  3. 如何完成符合ISO 26262要求的基于模型设计(MBD)的测试

    背景介绍 随着汽车行业的迅速发展,汽车的复杂程度不断增加,越来越多的汽车电子控制系统具有与安全相关的功能,因此对ECU的安全要求也越来越高.复杂的软件功能,将会带来大量的软件风险问题,如何保证软件的安 ...

  4. Helix QAC/QAC++—代码静态测试工具介绍—符合功能安全标准MISRA ISO26262

    Helix QAC是静态代码分析工具,依据C和C++编码规则自动扫描代码对规则的违背.开发团队在开发过程的早期就可以用它来检测缺陷,因为此时修改代码是最方便也最经济的.Helix QAC因此自动化强制 ...

  5. 用Java实现异构数据库的高效通用分页查询功能

    不同数据库的分页查询语句有着较大区别,其中MySQL数据的limit offset语法最为简单,而SQL Server数据库和Oracle数据库的分页就比较复杂了. 网上常见的SQL Server和O ...

  6. 推荐一个高效,易用功能强大的可视化API管理平台

    项目管理 提供基本的项目分组,项目管理,接口管理功能 接口管理 友好的接口文档,基于websocket的多人协作接口编辑功能和类postman测试工具,让多人协作成倍提升开发效率 MockServer ...

  7. 【DSP开发】【计算机视觉】TI 视觉软件开发套件ADAS

    关键字:TI  视觉软件开发套件  ADAS 日前,德州仪器 (TI) 宣布推出其视觉软件开发套件(SDK),从而为开发人员提供了一款灵活的框架.一组丰富齐全的硬件设备驱动程序和一套适用的开发工具,可 ...

  8. 外部NORFlash是第一个以硬件为基础的信任

    外部NORFlash是第一个以硬件为基础的信任 External NOR Flash memory is first with hardware root-of-trust 英飞凌科技公司宣布了它声称 ...

  9. TI推出SimpleLink低能耗蓝牙CC2541

    TI推出SimpleLink低能耗蓝牙CC2541 日前,德州仪器 (TI) 宣布推出 SimpleLink™ 低能耗蓝牙 (Bluetooth®Low Energy) CC2541-Q1, 这是一款 ...

随机推荐

  1. SEO(Search Engine Optimization)优化

    SEO(Search Engine Optimization)汉议为搜索引擎优化,是一种利用搜索引擎的规则提高网站在有关搜索引擎内自然排名的方式. SEO的目的是对网站进行深度的优化,从而帮助网站获取 ...

  2. java 匿名对象与内部类

    一 匿名对象 1.匿名对象的概念 匿名对象是指创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量. 例如: public class Person{ public void eat(){ ...

  3. 利用BeautifulSoup去除HTML指定标签和去除注释

    去除指定标签 from bs4 import BeautifulSoup #去除属性ul [s.extract() for s in soup("ul")] # 去除属性svg [ ...

  4. Android开发进程0.1 轮播图 Scrollview Fragment

    轮播图的实现 轮播图通过banner可以较为便捷的实现 1.添加本地依赖,在dependence中搜索相关依赖 2.添加banner的view组件 3.创建适配器GlideImageLoader ex ...

  5. Python参数解析工具ArgumentParser

    通过命令行运行Python脚本时,可以通过ArgumentParser来高效地接受并解析命令行参数. 流程 新建一个ArgumentParser类对象,然后来添加若干个参数选项,最后通过parse_a ...

  6. Provisional headers are shown 问题的一种情况

    Provisional headers are shown 出现在请求头的报错里面,意思为 显示临时的头部,真实的意思是,请求没有收到服务器返回.如果出现类似情况, 可以在服务端找一找,是否没有给该请 ...

  7. Spring事务专题(五)聊聊Spring事务到底是如何实现的

    前言 本专题大纲: 本文为本专题倒数第二篇文章. 在上篇文章中我们一起学习了Spring中的事务抽象机制以及动手模拟了一下Spring中的事务管理机制,那么本文我们就通过源码来分析一下Spring中的 ...

  8. 无法将“vue”项识别为 cmdlet、函数、脚本文件或可运行程序的名称

    状况 如果在使用 vue 初始化项目的时候提示: vue : 无法将“vue”项识别为 cmdlet.函数.脚本文件或可运行程序的名称.请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次. ...

  9. C++ Templates(1.3 多模板参数 Multiple Template Parameters)

    返回完整目录 目录 1.3 多模板参数 Multiple Template Parameters 1.3.1 为返回类型设置模板参数参数 Template Parameters for Return ...

  10. cni-ipam-etcd demo

    链接:https://github.com/jeremyxu2010/cni-ipam-etcd 测试demo: package main import ( "fmt" " ...