中文 英语

汽车测试进入系统

确保安全关键系统继续运行是复杂但必要的。

受欢迎程度

随着汽车的电气化,仅仅在制造过程的最后阶段对新的电子设备进行彻底的测试是不够的。现在的安全标准要求测试在现场进行,并有测试失败的应急计划。

amd高级解决方案副总裁Dennis Ciplickas表示:“我们看到汽车半导体供应链对专门针对系统内监控的设计功能有明确的需求PDF的解决方案.这种监视可以包括结构测试和性能监视。

安全机制必须包括在操作期间运行测试的计划。虽然启动和关闭是触发测试的重要事件,但有些必须在车辆运行时运行。在任何标准中都没有明确规定什么时候运行,但这样的计划必须是安全机制的一部分,成为认证过程的一部分。

为什么需要测试和监控
每一辆车上路都有生命危险。的ISO 26262标准规定了如何确保安全性的一般要求,并且与大多数电子系统不同,其中包括对车辆寿命进行定期芯片测试。该公司汽车IC测试解决方案经理Lee Harrison表示:“如果你从整个范围来看,我们有结构测试,我们已经做了多年西门子EDA.“最近,我们开始在系统内进行这项工作。”

对于车辆中的某些系统,这是必不可少的。奥迪汽车业务发展经理Fabio Pizza表示:“ISO 26262标准要求,在整个汽车生命周期内,定期检查量产道路车辆中的电气和/或电子系统的功能安全性效果显著

这个测试主要有三个原因:

  • 测试逃脱是不可避免的事实,数据也证明了这一点。“如果你的良率在70、80、90,而你的测试覆盖率是98%,那么你将得到一个不可接受的百万分之数,”杰·拉瑟特说,战略合作的高级主管心理契约.“根据数学计算,在百万分之1500到2500之间的某个地方可以逃过测试。”
  • 需要定期保证自上次测试以来车辆没有任何变化。
  • 即使没有任何破坏性事件,老化也会影响汽车中的电子设备。因此,测试机制需要密切关注性能,以适应任何芯片老化,并确保持续安全运行。

设备在最低水平上的性能或老化程度取决于设备之间可能发生的变化。不同的设备将以不同的方式运行,测试和可靠性统计数据可能会或可能不会准确地反映特定的设备。

个人拥有汽车的时代正在改变,这些汽车会长时间停放,否则就会通勤、跑腿,有时晚上还会外出。拉瑟特说:“我们正朝着全天候共享汽车的方向发展,这将彻底改变磨损模式。”

要运行什么样的测试
ISO 26262没有指定必须运行的特定测试。相反,它更广泛地谈论“安全机制”,这是由开发团队、一级供应商和原始设备制造商商定的。这使得他们可以灵活地使用他们认为最有效的工具,并在新想法出现时纳入其中。“(有)逻辑测试和记忆测试,但它可能是其他类型的标准逻辑,看门狗,传感器或监视器,”Robert Ruiz说,产品营销总监,功能安全实践者,数字设计组Synopsys对此

运行过程中安全检查的两种主要机制是测试和监控。测试反映了制造流中使用的相同测试,并进行了一些可能的修改或添加。它寻找结构性问题。另一方面,监控则密切关注性能,寻找任何异常或其他迹象,表明在不久的将来安全性可能存在风险。

测试和监控器都可以将结果传输到云。但通常情况下,测试失败会导致车内立即采取行动,而无需云的帮助。与此同时,监控数据很可能被传输到云端进行分析和跟踪。虽然汽车将有许多其他专用传感器组件将数据发送到云端,但这些传感器组件正在监视特定的高级汽车参数。相比之下,芯片监视器监视电路。两者都很重要,但处理和管理方式可能不同。

该公司汽车业务总经理Gal Carmel表示:“监控允许车辆和云之间的计算协同,实现实时决策和云上的数据分析proteanTecs.“我们的系统评估边缘电子设备的完整性,并将相关数据传输到云端,以进行预测和诊断。这不仅可以延长系统的使用寿命,还可以进行快速的根本原因分析和OTA调试。”

虽然汽车将有许多其他专用传感器组件将数据发送到云端,但这些传感器组件正在监视特定的高级汽车参数。相比之下,芯片监视器监视电路。两者都很重要,但处理和管理方式可能不同。


图1:包含系统内反应和云分析的监控架构。来源:西门子

并不是所有的显示器都一样。“我们有两种类型的监视器,”哈里森解释说。“我们有被动式监控器,我们只用它来收集数据。然后我们有反应式监控器,如果我们确实检测到意外情况,那么像公交车哨兵这样的东西就可以完全关闭公交车。”

何时运行测试
需要执行测试的事件或时间有三种:打开、在操作期间进入系统以及关闭。

Synopsys公司数字设计组产品营销总监Giri Podichetty说:“开机后,你可以开始测试系统是否正常。“在运行过程中,我们可以进行定期测试,检查设备的实际状态。最后,我们关闭了电源,然后我们有更多的时间来做更多的(测试)。”

当发动机启动时,汽车已经进行了一些测试。鲁伊斯说:“当你一开始看到仪表盘上的灯时,就意味着进行了大量的初始测试。虽然额外的测试可能需要一些时间,但可用的时间并不多,因为驾驶员希望在几秒钟后开始驾驶。所以对于芯片测试本身,可用的时间可能是200毫秒左右。

当汽车熄火时,有更多的时间可用。从理论上讲,开发者谈论的是无限时间。虽然这显然不是真的——有人可以在几秒钟内重新启动汽车——但关键测试的时间预算是以秒为单位的。“当你熄火时,你可能还可以再等10秒钟,”鲁伊斯说。“当然,在半导体领域,几秒钟是很长的时间。”

在这个关闭阶段可以运行更广泛的测试集。哈里森指出:“这就像在你的记忆中运行一个基本的棋盘式算法来打开钥匙,或在你的记忆中运行一个全面的压力测试来关闭钥匙。”

在开机时测试的电路可能需要也可能不需要在系统中进一步测试。这就是ASIL评级重要的地方。哈里森说:“对于像信息娱乐系统这样的东西,你的开机测试没问题。“但当你开始研究先进的ABS系统时,例如,这就变得更加重要了。”

此外,对于机器人出租车和其他类似的车辆,几乎没有机会进行开关测试。哈里森解释说:“按键可能每10个小时才会出现一次。”“所以你需要能够进行这些在线测试,以确保一切仍然安全。”

因此,挑战在于如何在电路运行时对这些电路进行测试。测试的内容和时间部分取决于安全水平。当然,最糟糕的情况是ASIL-D,这是对车辆最安全关键部件最严格的评级。关键的测试将需要定期进行,无论车辆在做什么。

监控与车辆的运行状态并没有那么紧密的联系。proteanTecs的Carmel说:“深度数据监控可以实现24/7的可用性,无论车辆处于开机或关机状态。“与BIST相反,它在线运行,非侵入性,不会中断功能运行。在开机时,它可以识别并警告可靠性下降和安全威胁,从而实现规定性维护。在预定的维护时间内,原始设备制造商可以物理连接和调试问题,以保持服务可用性并延长运行寿命。”

同时进行测试和操作
如果管理不当,大多数测试都可能是破坏性的。比如,在汽车等红灯的时候安排测试是不可能的,因为无法保证何时会发生这种情况,也无法保证这种情况会持续多长时间。因此,无论车辆当时在做什么,都必须为测试做好安排。

解决这个问题的一种方法是通过冗余。内核和内存可以被复制,而不是一个单独的内核使用自己的内存运行。控制可以在它们之间来回传递,这样,当一个核心正在测试时,另一个核心将处理驱动任务。然后,可以将其反转,以确保两个集合都处于工作状态。

这类似于双核锁步操作,但与双核锁步操作不同。在这种情况下,两个核心总是以相同的方式运行,目标是识别两者之间的任何分歧,作为存在问题的指标。然而,在测试中,这两套设备不会同步。相反,他们将进行标签合作,以便测试和操作可以无缝进行。

这种冗余为测试提供了操作余地。“一些架构师可能会决定,‘我有四个处理器,所以以循环方式,我可以让一个脱机并测试它。我仍然有三个运行,仍然能够运行得很好,’”Ted Chua说,他是Tensilica IP组的产品营销总监节奏

冗余的需求并不局限于功能性电路。测试电路也是必要的。“测试还需要有冗余,”Chua指出。

内存可以在访问之间进行部分测试——所谓的“透明”测试。Synopsys的Podichetty说:“我们以时间切片的形式进行无损记忆测试,这样就不会占用太多时间。”更广阔的内存内置自检(MBiST)测试可以在内存脱机时执行。

对于soc上的逻辑测试,测试功能主要利用针对测试(DFT)基础设施已经在芯片上,用于制造测试。为了增加更多的通道以获得更好的可见性,可能需要对电路进行一些修改,但这种更改通常是为了减少测试时间,帮助补偿所需的额外硅面积。

系统内逻辑测试通常包括逻辑内置自检(LBiST)。这包括使用贯穿测试的种子向量,这些测试的结果被组合成一个签名。对该签名的验证构成了系统该部分的通过/失败信号。LBiST域的大小取决于可用的测试时间。


图2:与嵌入式确定性测试(EDT)共享的示例LBIST块。来源:西门子

Cadence公司的产品管理总监、数字和签名组Rob Knoth指出:“当你在路上行驶时,可以有一个紧密的环路来快速测试某些东西,而LBiST则包裹在更大的电路区域内,在开键或关键时完成。”

还可以调用软件在硬件上运行测试。“这可能包括用于检查设备启动顺序和自检工作正常的部分,并检测与应用程序电路(传感器、接口、摄像头、总线等)交互中可能出现的问题,”Advantest的Pizza说。然而,这种测试可能是侵入性的,它的时间必须仔细计划。

测试需要多长时间
总的来说,三个测试阶段的时间,包括系统内间隔,将由功能安全经理为每个应用程序设置。波迪凯蒂说:“这主要来自功能安全要求,即我们每次测试有多少时间。”

Harrison补充道:“我们与客户一起做了大量工作,以尽量减少我们用于系统内测试的时间。由于某些测试的持续时间和某些soc的功能,将测试划分为块是有意义的。所以你可以把它分成10个部分,每几百毫秒运行一个部分。”

当然,测试时间可以成为提供测试IP的公司之间的竞争指标。Harrison说:“我们已经能够将BiST测试的运行时间降低10到20倍,这真的有助于在一个时间间隔内完成一个完整的测试,而不必将测试分开。”

通过更好的压缩来减少制造测试时间的努力也可以累积到系统内测试中。Knoth说:“你的制造测试时间要短得多,但由于我们在LBiST上复制和使用了相同的结构,突然之间,你的LBiST在现场运行得更快了。”

什么时候测试也可以是一个动态的考虑,而不是一个紧凑的时间表。蔡美儿指出:“如果你正在紧急刹车,你甚至一秒钟都不会进入测试。如果考试时间是在紧急情况下,那就不难了。“但如果你正在测试,然后你遇到了这种紧急或危险的情况怎么办?你关心安全,这就是为什么你要做测试,但你不想做测试,然后危及安全。”

响应失败的测试
测试计时还必须考虑到测试失败时可能需要的响应类型。如果测试通过,则操作继续进行。但如果测试失败,那么安全计划就必须考虑到反应。不管触发器是什么,响应意味着将汽车移动到安全状态。确切地说,这种状态是安全计划的一部分。

如果检测到故障,则允许将车辆移动到安全状态的时间预算。Ruiz说:“规范规定,如果出现故障,有一定的时间来检测它,有一定的时间来记录它,然后采取一些措施。”从检查一个故障到检查另一个故障的间隔时间称为容错时间间隔(FTTI)。

FTTI在检测到测试失败时启动,包括在返回检测下一个故障之前将系统置于安全状态所需的任何响应。在这个级别上,假定这样的测试失败不会是灾难性的,但是会允许一些能力来补救这种情况。


图3:FTTI包括检测故障、对检测到的故障做出反应以及在执行下一次测试之前进入安全状态的三个时间间隔。来源:节奏

这类似于“检查引擎”灯亮起时的情况。拉瑟特解释说:“你的仪表盘上会有一个警告灯,说明你的制动ECU坏了。“你得到了一个警示灯,在你需要它的时候它没有坏,这是个好消息。但是你的车还是有个坏零件,以后你还得去维修中心。”

Knoth用另一种方式表达。“所以你发现‘核2’是坏的。现在我要告诉运行我系统的软件,‘不要再使用核2了。你只能使用1号,3号和4号核。“系统会进行登记,并进入新的安全状态。也许它不再允许你使用完整的ADAS,也许它只会使用车道回避或类似的东西。”

没有人强制要求整个车辆的FTTI。Chua说:“根据设备应用的不同,不同模块可能有不同的FTTI。”

芯片内必须有一个中央控制点来管理所有与安全和测试相关的事件。这可以被称为“安全岛”或“安全管理器”。前一个术语有时与另一个概念相混淆,后者将安全岛定义为物理布局中的隔离区域。

安全岛是一个处理器子系统,负责管理车辆中的各种安全机制。测试必须遵循的时间表成为测试和安全体系结构的一部分,并在早期建立。但该计划的执行——安排测试和处理结果——是由安全经理实时完成的。哈里森说:“安全管理器可以寻找危险信号,然后迅速将设备置于安全状态。”它可以在芯片或子系统级别上运行。


图4:连接到汽车集成电路的安全岛。来源:西门子

测试和监控只是确保安全运行的一部分
虽然系统内测试是安全计划的一个新组成部分,但它实际上是设计和制造早期开始的过程的最后一个后盾。

EDA工具必须意识到功能安全。测试和安全电路通常不符合优化工具的预期,因此工具必须在安全计划的指导下做出让步。他说:“你不希望为了让车辆更安全而进行改装,然后进行后续优化,然后说,‘好吧,我知道如何在这里节省很多面积。我将消除这种冗余,’”克诺斯说。

拥有EDA工具和IP预认证-特别是测试IP,如测试设计(DFT) -可以使这些工具和IP的用户的认证过程更加顺畅。哈里森说:“如果我们已经获得了ISO认证,这对采用这些技术确实有帮助。

生产检查,以及从观察到的操作反馈到生产的长循环反馈,是随着时间的推移提高安全性的另一种重要方式。晶圆厂和封装操作的质量越高,系统内测试失败的可能性就越小。如果身体特征与加速衰老相关,甚至衰老也可以减缓。所有东西都会老化,但老化更快的芯片可能会从供应链中淘汰。

拉瑟特说:“我们(检测行业)正在努力提高产量,让更少的东西进入测试,作为最后一道防线。”“测试人员专注于如何改进他们的测试游戏。当我们剥开洋葱,看看这个问题,第一是阻止缺陷的发生。第二是逃逸,逃逸的一部分是测试覆盖的事情,还有一部分是我们所谓的潜在缺陷。”

后者直到以后才会暴露,可能是在暴露于某些环境条件之后。根据定义,他们不会在生产测试中被发现。

拉瑟说:“我们有两种方法来解决这个问题。“一个是过程控制,我们停止制造缺陷。第二点是筛选——寻找那些看起来不正常的晶圆片或单个模具,我们不想进入供应链。然后是晶圆级探针,然后是单点测试和最终测试。我们试图将所有这些机会尽可能地插入上游,以阻止那些坏的死亡,这样你的内置自检结果总是干净的。”

蒂姆·斯库内斯,公司研发副总裁CyberOptics表示同意。他说:“对于汽车等安全关键应用,零缺陷是至关重要的,对SMT/电子组装、晶圆级和先进封装实施有效的检测和计量流程,以控制工艺和产量是非常重要的。”“因此,这些100%检查的流程需要在到达车辆之前很久就到位。”

端到端,从规划到认证
该测试将如何实现取决于必须在开发工作的早期架构阶段到位的策略。在这个早期阶段加入一个安全团队有助于确保测试计划满足安全计划的需要。

还有许多利益相关者要参与。他们包括芯片开发、系统开发和软件团队。这样的协调是必要的,不仅要确保所有的考虑和场景都被考虑在内,而且要确保不同团队执行的测试之间没有重叠或冗余。给定一组测试,谁在何时执行哪些测试可以由所有相关人员在早期决定。

Knoth指出:“无论是生产测试还是现场测试,都需要多学科、大范围的方法来决定测试什么以及如何测试。”

结论
认证与大多数安全关键系统一样。在安全专家的监督下,你制定了一个计划,然后在最后证明你已经实现了既定的目标。在审查了所有的测试、监控和其他安全机制后,没有任何官方机构对车辆进行批准。在一天结束的时候,是OEM进行认证。人们的期望是,OEM有动力拥有一款安全的汽车,这样它的声誉就不会受损,也就没有必要召回。鲁伊斯将其称为“基于市场的安全”。

总而言之,系统内测试加入了其他功能安全和安全性考虑因素,作为这些滚动系统的新需求。与任何设计一样,在这些考虑因素之间也会有权衡,因为汽车制造商竞相为客户提供最好、最安全的体验。

Knoth总结了系统内测试的整体方法的好处:“市场上最成功的团队利用来自不同利益相关者的所有输入来提出优雅的解决方案,使他们能够拥有更低的开销,更高质量的测试,并实现更好的最终产品,而不是呆在自己的竖井里,把问题推到墙上,然后说,‘好吧,让测试人员来解决这个问题。’”



1评论

阿乔 说:

我明白你的意思。我是墙的另一边的测试工程师。好点。

留下回复


(注:此名称将公开显示)

Baidu