自动驾驶车SoC:芯片设计人员最可怕的梦魇
用于自动驾驶汽车和高级驾驶辅助系统(ADAS)的复杂芯片(SoC)的开发和验证是一片雷区,稍不注意,就会触雷。
每一个可预期或不可预期的微小变量,无论是车内还是无法预知的道路条件,都构成了一个难点。芯片设计人员经常在完成错综复杂的汽车芯片设计之后,又意识到他们必须回头重新编写,有时甚至需要不停地重复,直到得到满意的结果。
这种迭代设计的过程,是每个芯片设计师最可怕的梦魇。
“在开发和验证汽车芯片时,”西门子公司的自动驾驶与ADAS全球技术经理David Fritz解释说,“设计师要应对的输入是‘整个世界’,包括车辆可能遭遇的任何天气状况和任何道路状况。而输出则是保证他们的新芯片(新车)不会辗过任何人。”
换句话说,太多东西需要吸收和消化,而结果是至关重要的安全。
硅前验证
在此背景之下,西门子此前公布了一款名为PAVE360的硅前自主验证环境平台。
西门子的Fritz称PAVE360是设计AV/ADAS车辆的“第一个允许多部门、多企业合作的项目平台”。该平台允许多个汽车组件、软件和子系统供应商在设计高度自动化汽车时进行协作。
Tirias Research首席分析师Jim McGregor告诉我们,“目前业界已经可以在仿真环境中设计一颗定制芯片,但还是不能达到PAVE360的水平。”
PAVE360 (图片来源: 西门子)
他解释说,通过PAVE360,“你可以设计和测试一辆虚拟汽车,其中的虚拟芯片由虚拟零部件构成,而这个虚拟汽车在虚拟环境条件下在虚拟城市中行驶。”他指出,“PAVE360可以实现在汽车操作的整个流程中设计和测试芯片。并且可以更换汽车零件、修改设计或操作条件,在必要时近乎实时地测试甚至重新设计芯片。”
VSI实验室的创始人兼首席顾问Phil Magney解释了汽车芯片设计人员面临的挑战:“你面对的是各种数据轰炸,包括来自各种环境传感器的大量数据,以及来自其他ECU的大量数据,而这些数据最终将影响汽车性能。“
Magney称PAVE360是“非常独特”的,他说,“我还没有听说过如此完整的仿真环境。”西门子的PAVE360平台基于“数字孪生(digital twin)”这个概念,数字孪生是真实世界的复制(仿真)版本。Magney说,“对于汽车或零部件的开发人员来说,这意味着他们可以完全仿真其目标,无论是芯片、软件能力、ECU还是整车。”
McGregor还补充道,“如果我在通用动力公司从事火箭制造时就有这个工具,我会不惜一切得到它。”
智能手机应用处理器 vs. 汽车芯片
粗看之下,智能手机应用程序处理器和汽车芯片是两种截然不同的东西,它们在芯片复杂性、所需的计算能力、尺寸和功耗方面都完全不同。
而对功能安全性的严格要求,更是给汽车芯片设计人员带来额外的压力。他们设计的汽车芯片必须完全准确,因为汽车芯片出现的问题可能会导致人的死亡。而用于智能手机的应用程序处理器则不会造成这种危险。
但奇怪的是,虽然汽车芯片设计的复杂程度远远高于智能手机应用处理器的设计规格,但目前汽车行业常见的设计方法却不如智能手机行业那么精致。
曾在高通和英伟达(Nvidia)工作过的Fritz为我们提供了改变这种情况的方法。
汽车设计工程师一般会首先分析ADAS或AV SoC的需求并将其分解为各项功能,为每个功能块设置验证。然而最大的挑战在于变数越来越多。也许每个功能块已经过验证可以正常工作了,但当合并某些ADAS功能时,或者部署一个不同的传感器组合时,甚或插入一个不同供应商的ECU时,一切预设都会被推翻。汽车可能会突然出现一种全新的行为模式。这种根本性的变化可能会使汽车芯片设计人员陷入一种恶性循环,不断重新校验、重新验证和重新编写他们的SoC。
Fritz回顾他在高通担任高级总监时,智能手机芯片的开发环境完全不同。在智能手机领域,除非确信将X公司的硅方案放入Y公司的手机中能够满足所有需求,否则应用程序处理器的设计人员不会开始设计芯片。而这些需求的范围从基准测试直到功耗,它们不能超过设定的阈值,而且必须满足供应商所谓的“用例证据点(use-case proof points)”。
所有东西,包括由软件团队验证的软件,必须在芯片开始开发之前完成。而这保证了在智能手机中工作的芯片的高度准确性。
在Fritz看来,要模仿智能手机芯片的设计环境,汽车AV/ADAS SoC设计人员需要一个能让他们进行“严格硅前验证”的平台。而PAVE360就是这个平台,他说。
(图片来源: 西门子)
124亿美元投资
西门子之所以能够开发出这个完整的仿真平台,源于其多次战略性的收购。它将新购置的工具与现有的仿真模型拼接起来,使之协同工作,形成一个完整的平台。
在西门子于2017年收购Mentor Graphics之前,这家德国公司还收购了测试和机电一体化仿真软件供应商LMS International。之后又收购了一家全球仿真软件供应商TASS International,除了仿真软件,该公司还为汽车行业提供工程与测试服务。
“据我们所知,没有其他公司进行过这么多的投资(总计124亿美元,包括收购Mentor),以建立像PAVE360这样的全方位仿真平台,”Fritz声称。
汽车OEM可以开发自己的AV SoC?
上个月,特斯拉推出了自己的自动驾驶芯片,称其为“全自动驾驶”计算机。
当被问及其他汽车OEM是否也在设计他们自己的自动驾驶芯片时,Fritz肯定“特斯拉并不是唯一一个。”他指出,“当消费者认为,未来的汽车价值都体现在AI、算法、软件和芯片中时,汽车OEM们没有理由不想自己把握未来。”
McGregor证实,许多汽车OEM正在考虑“定制芯片设计”。但他补充道,“并非所有人都计划与特斯拉走同一条路,即自己招募一个SoC设计团队。许多公司选择与现有的半导体供应商和/或设计公司合作。”
他说,“但这并不意味着一定会找英伟达、恩智浦(NXP)、瑞萨(Renesas)、英特尔(Intel)或其他知名公司合作,就像智能手机、游戏机和云服务提供商一样,汽车OEM正在考虑根据其应用和工作负载量身定制芯片解决方案。”
Magney也对此表示赞同。“尽管许多人发现加速计算解决方案具有优异的性能,但很多开发人员正试图通过将他们的算法,与处理器紧密结合来实现指令集的优化。”然而,Magney提醒道,“这对很多人来说可能不太实际。除非你真有些与众不同的东西,否则没有必要浪费时间做无用功。”
对于汽车OEM来说,PAVE360可能是非常有效的。例如当他们决定将其最满意的ECU与新的ADAS SoC结合用于制动控制时,使用开放式接口,OEM可以将该ECU插入PAVE360并模拟ADAS SoC在车辆中的性能。
如何验证AI?
西门子称,PAVE360“能够对所有自动驾驶系统核心的传感/决策/执行范例进行全面的闭环验证。”该原则同时适用于确定性(基于规则)和非确定性(基于AI)方法的验证。
但是,当设计师甚至不知道部署在汽车中的AI算法如何决策采取某种行动时,他们如何验证这是一个正确的选择呢?
Fritz解释说,自动驾驶芯片的输入不应该是1和0这样的“信号”,而应该是“场景” ——道路轮廓、天气条件和地理环境中的其他因素。至于结果,“你只能在整车背景下验证AI的决策。”他指出。
转载 EET电子工程专辑