中文 英语

如何实现功能安全自动化

与会专家:既有老牌公司,也有新玩家,都渴望在汽车领域发挥作用,那么汽车行业是如何走向自动化的呢?(第一部分)

受欢迎程度

半导体工程坐下来讨论功能安全的思想,技术和自动化的方法与Mike Stellfox,研究员节奏;Bryan Ramirez,战略营销经理Mentor是西门子旗下的企业;Jörg Grosse,功能安全产品经理OneSpin解决方案;以及汽车验证解决方案产品营销高级总监Marc SerughettiSynopsys对此.以下是那次谈话的节选。


左-右:Stellfox, Ramirez, Grosse, Serughetti。

SE:随着行业从人工操作到功能安全,再到更加自动化和理论上风险更低的方法,这将带来哪些挑战?

Grosse:我们希望尽可能地自动化FMEDA[故障模式、影响和诊断分析]过程。我个人的观点是,你不能有一个FMEDA工具。我不认为它存在。你必须有几个构建模块。你必须有一部分用于硬件安全分析,一部分用于处理诊断覆盖率分析和确定,还有一部分用于计算模型。这就是我们正在研究和自动化这个过程的地方。

Stellfox:我在Cadence有一个团队,他们在一起功能安全解决方案主要集中在FMEDA验证。我们正试图尽可能多地实现流程的自动化。当然,功能安全已经存在很长时间了,但在半导体行业,特别是在ADAS这样的大规模复杂应用中,它是非常新的,在如何进行真正强大有效的安全验证方面,行业还不太成熟。从FMEDA开始,有一个很大的机会来实现许多部件的自动化,但我仍然认为最重要的事情之一是需要在我们的半导体行业培养更多的专家。这可能是最大的挑战。

Serughetti功能安全对我们的许多客户来说已经变得极其重要。我们需要回到司机的问题上——为什么人们会关注这个问题。显然,对于复杂的芯片,很多功能安全在过去已经在更简单的芯片上完成了,所以这就是驱动因素。我认为功能安全有两部分。第一个是专业知识。我同意这方面严重缺乏专业知识。今天,我们知道客户雇佣的人只有功能安全专业知识,根本没有半导体背景,所以专业知识非常缺乏。第二部分是自动化,这是非常重要的。这不是一个单一的工具。这是一系列可以自动化的事情,在这些活动中有很大的自动化机会,特别是在验证领域。 Also, you have to think about what that effects throughout the supply chain because functional safety is not a one company issue.知识产权soc这些soc的客户等等。这一领域的生态系统也在不断变化。

拉米雷斯:在其他人所说的之上,一个有趣的领域是,尽管自动化是伟大的,但我们需要这样做——特别是在处理能力增加和专业知识缺乏的问题上。但你如何将这与仍然需要专家判断相结合?你能摆脱不需要这些专家的情况吗?试图弄清楚这两个世界如何最有效地融合在一起以实现最终目标是非常有趣的。

SE: FMEDA的哪些部分可以自动化,哪些不能?

Grosse:分析过程不能自动化。你必须有工程师在那里做硬件安全分析的部分。一旦有效地完成了这一点,那么你就可以使用IC的模型来自动化很多工作,特别是所有的计算部分都可以高度自动化。我们认为我们应该摆脱电子表格,它不能实现可重复的过程,诸如此类的事情。这就是我们作为EDA可以发挥作用的地方,通过手头的IC模型并提取我们所需的所有信息,我们可以提供很大的帮助。在它上面,显然是做验证的部分。

Serughetti:实际上有三个方面。专业知识,第一。然后,验证,并且验证可以自动进行。第三部分是流程管理。如果今天你不需要这些,这将是如此简单,但今天的客户会说,‘我在公司这边的人不和那边的人说话。他所掌握的信息,对他们的理解不同。因此,流程管理方面也可以实现自动化。

SE:如今功能安全专家的专家判断如何体现?

Grosse这可能会让人有点困惑,因为专家的判断可能会有很大帮助。它可以从基本的论文分析开始,看看标准,安全机制会给我什么。但也可能有更合格的专家判断,我实际上是在看设计本身,确保我的判断是正确的,并部分地做一些验证。这个术语有点不清楚。有些人可能会理解,其他人只是写下一个数字,就是这样。或者你做更专业的判断。我想说,合格的专家判断是,‘这是我们需要去的地方。’

拉米雷斯:我同意。我们称之为验证专家的假设。你需要做手部分析因为你需要在设计之前做。但是,只要您能够在进行昂贵的错误活动或其他活动之前验证这些数字,您就希望更快地进行这些迭代。越早进行迭代,并确定安全架构是否正确,效果就越好。

Serughetti:在专业知识方面发生变化的另一个原因是,它不仅仅是核心半导体专业知识。您需要了解您的SoC将被用于何处。你必须具备了解客户的专业知识。这也是很多人能力的变化。是的,他们理解,但他们从来没有跟踪过这方面。

Stellfox:用例非常关键。一些系统公司实际上是在设计他们自己的芯片,然后他们有点优势,他们有很好的用例知识,即使它可能是分开的组。但如果你是作为一家半导体公司开发通用芯片,你需要交付,用例就不是你只能在事后才看的东西。为了安全起见,你必须事先考虑到这一点,因为用例真的决定了你设计的安全架构是否能以安全的方式使用。

SE:除了用例之外,我们还如何在EDA内部培养功能安全专家?

Grosse把安全专家和验证专家关在一个房间里一周,要求他们开始相互交谈,因为这是一个巨大的障碍。安全工程师非常了解FMEDA流程,但他们不了解设计。你需要非常小心你在和谁说话,以及你在使用哪种语言。

Stellfox这对我的团队来说完全正确。我有安全专家,我把他们和一些验证专家放在一起,他们相互交流,因为他们都有各自的优势。我通常在我们的客户群中看到的是,没有那么多安全工程师,所以验证工程师不得不扩大他们的范围。你需要能够用验证工程师理解的术语和方式来翻译或交谈,并且验证工程师有适当的背景来扩展到这个领域。概念,抽象是他们思考的东西。我们用一种简单的方式来谈论它。功能验证是关于验证设计如何以积极的方式工作,而抽象层面的安全验证是消极的测试,即,它在这些条件下是否有效?这就是验证工程师倾向于思考问题的方式即使他们不具备所有安全概念的专业知识。

Serughetti如你应该看看市场。已经有人从事功能安全研究很多年了,这些人了解功能安全。他们的挑战更多的是,‘我的下一个设计要大得多,我该怎么办?他说,然后又有很多人突然想要进入市场,而这些人的情况则完全不同。‘为什么它和功能验证不一样?在这些情况下,你需要接受不同类型的教育。但我同意功能验证工程师的观点。有一种方法可以让他们实现功能安全,但需要进行大量的教育,让他们了解两者的区别,以及他们试图做的不同之处,因为在这一点上,他们使用了很多相似的技术。它是理解你想要达到的目标,为什么它是不同的,以及是什么引导你完成它。

拉米雷斯:它有点像时间的同义词OVM技术而且UVM出来了。让验证工程师写Verilog面向对象是一个真正的挑战。在这个领域一直缺乏专家。因此,人们经常雇佣c++专家,教他们验证。我们正在经历一个类似的阶段,你会增加一些不理想的人。但这需要时间,需要把这些想法结合起来。

SE:所以就概念本身而言,这并不是一个无法解决的问题,对吗?这不是一个完全不同的世界。验证工程师可以跟上进度。

Stellfox:这仍然是一个相当大的学习曲线。像我自己一样,三年前我对安全一无所知,现在我也远非专家,但这是一大堆事情。它是工具,方法论分析,我看到了这个领域的巨大创新机会,特别是EDA将这些东西结合在一起,使其在半导体层面更加系统化。我想说的是,在系统层面上,这是系统性的,尽管有一些新的ADAS产品出现,但有很多公司都在尝试在系统层面上做同样的事情——验证汽车与芯片。

SE:在过去的三年里,你发现了哪些与以前不同的东西?这真的是你处理这些问题的思维方式的改变吗?与验证相比,你如何界定或分类功能安全的思想?

Stellfox大多数人开始时会说,‘我只需要运行一堆故障模拟。这是最重要的。或者,‘我们将不得不在整个芯片上运行故障模拟。“这是每个人首先想到的事情。第一件事就是理解你想要达到的目标。其实没那么复杂。您拥有旨在捕捉随机故障的安全机制,并且您需要设计一个方法通过它你可以定义设备可能发生故障的方式。对于验证工程师来说,这是一个非常自然的过程,因为我们做验证计划。这只是将验证计划扩展到考虑设备如何可能失败,然后确保你有安全机制来捕捉它。一旦你把这些类比放在一起,这与验证工程师所拥有的技能非常相似。最难的是捕捉FMEDA。就像一个好的验证工程师,最难教的事情是如何做好的验证计划,这是它的关键部分。如何分解问题?在FMEDA中,你是如何提出需要规划的高层次的东西的呢?

Serughetti:安全架构,安全架构师,了解故障可能出现的位置。安全机制是什么?这是前面很大的部分。这就是专业知识。

Grosse我相信这个类比是可以接受的验证计划但要做到这一点,还需要一定程度的额外专业知识,而不仅仅是考虑安全机制。你有一些场景,其中有分层的安全机制,这使得它非常复杂。然后,您必须将相关故障分析纳入其中。我喜欢它。这是向前看的正确方式。但是,不仅仅是将您的验证计划工具转换为FMEDA分析。

SE:接下来会发生什么?

Grosse:有一种方法与此相关。我们对芯片有一个非常等级的想法,但芯片的等级可能不能精确地映射到安全等级。

SE:就汽车级芯片而言,这意味着什么?

Grosse:当你根据标准将芯片划分为部件和子部件时,如果你根据安全架构划分芯片,那可能不能准确地映射到你的工具中有什么作为芯片的层次树。所以你可能有一个方块里面有两个安全机制,或者你可能有安全机制覆盖几个方块,或者只是方块的一部分。我们需要稍微改变一下思路。

SE:你的想法是什么?

Grosse思考是从安全架构的角度来看的。

SE:我们如何定义安全架构?

Grosse这是由需求和安全目标驱动的,你必须决定芯片上的内容。它基本上来自用例。首先,‘我有ASIL-B还是ASIL-D设备?“那我就知道该在系统中加入什么样的安全机制了。但是分析和验证部分应该以我定义的安全机制为中心。这也使我们能够更有效地考虑我们必须模拟什么,以及我们不需要模拟什么。

Serughetti在一天结束的时候,验证部分是关于验证安全机制做了他们应该做的事情。这必须是重点。你不能说,‘我必须在任何地方做所有的事情。在这方面你必须聪明,而这要从分析开始。

Stellfox又一次,它以“这是什么?”“从系统层面考虑,你正在设计一辆汽车,然后汽车中有一些子系统依赖于芯片的逻辑。所以你需要思考这个芯片的功能是什么?这是汽车这部分的功能,如果它偶然出了故障,会不会导致一些不安全的生命风险?一切都从用例开始。你必须真正理解这一点,才能为你的芯片提出一个良好的安全架构。这真的需要自上而下,更大的挑战是那些从移动或其他领域进入市场的人,他们试图使用他们拥有的大型计算密集型芯片,然后说,‘哦,让我们把它做成一个ADAS服务器引擎吧。“这真的需要自上而下地考虑,因为你有一个汽车系统,有什么用例,然后你要为此建立一个安全架构。然后你必须通过注入故障来验证安全架构,并确保安全机制检测到那些会导致芯片故障的东西,以某种方式,它必须进入某种安全状态。

Serughetti这就像你做的任何设计一样。您必须预先花费时间来正确地捕获您正在做的事情,否则您将花费大量时间进行毫无意义的验证。这是关键。这里的挑战又在于专业知识,因为这就是专业知识出现的地方,而专业知识可能是与客户的专业知识相结合的。现在,没有人为“一个”客户做芯片,所以半导体公司内部需要一些专业知识,但这必须与系统公司的专业知识相联系。

Grosse:现实是,我想说可能70%的设计都是这样的,‘我有一个设备,我如何使它安全?这就是现实,因为所有想要进入这一领域的半导体公司都已经有了现有的设计。也许他们已经有了一些安全机制,像ECC和奇偶校验这样的东西是常见的概念,但他们还需要在那里放什么呢?我们还必须处理一种自下而上的方法。

Serughetti:这是传统的方法——我有一些东西,我想让它安全,然后未来的一代人将更多地从设计的角度来看待这个问题。

SE:这对创建安全架构的自动化方面有什么影响?你如何处理现有的方法?

拉米雷斯:有机会帮助用户找出正确的安全架构是什么,并让他们以一种他们在过程早期迭代的方式来做,而不必经历这个昂贵的周期。我们作为EDA所能做的一切,帮助他们找出安全机制的正确组合,以获得他们在优化时所追求的ASIL水平功率,性能,面积-这是一方面。我们可以做一些事情来自动创建这些安全的设计,以缓解这样一个事实,即没有太多的工程师知道安全,他们知道这些遗留ip,他们需要将它们转换为安全。这是我们可以做的另一件事。然后通过高性能的故障注入或其他方法来证明它们是安全的,这有助于关闭这个循环吗?

Serughetti:我们在这里讨论了很多关于验证的问题,但是实现方面也发挥了作用。第三方IP—使用IP供应商现在提供的第三方IP。通过ISO 26262认证的IP。有很多片段可以组合在一起。

有关的故事
BiST在汽车行业成长
现有的测试概念正在以新的方式加以利用,以满足严格的汽车要求。
安全和保障的优化挑战
通往优化权衡自动化的道路还很长。在此过程中更改属性会使其变得更加困难。
实现汽车法规遵从的漫长而详细的道路
使工程组织跟上汽车安全标准是一个漫长而艰巨的过程。
如何制造汽车芯片
不断变化的标准、严格的要求和各种专业知识使得这个市场很难进入。



留下回复


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

Baidu