随着汽车越来越成为新的计算平台,而不单是会前行的交通工具,汽车电子的发展这些年让汽车整体变得更复杂,是所有人有目共睹的。除了构成汽车电子的硬件架构在变化——比如由完全分散化的ECU变得更集中,软件架构也面临一场前所未有的变革。
前年我们基于麦肯锡的报告写过一篇《汽车电子与软件架构的10大趋势预测》,其中提到了未来汽车之上“不同栈的标准化”,以及“扩展的中间件层”等。比如其中提到某些安全性要求比较高的应用,要跑在独立的container中,和其他应用隔离;还有比如未来的中间件能够链接域控制器等等。
事实上,当代汽车软件架构的革新原本就是在持续中的。不过我们没想到,比较早做出跨步的是Arm。Arm上周在线上举办了一场Arm SOAFEE Launch媒体沟通会,主要谈的就是SOAFEE软件架构;着力“软件定义汽车”。
“实现复杂功能的软件本身变得越来越复杂,利用云原生技术去改进软件的开发、构建、管理、更新的效率变得越来越重要,因为软件开发和维护的成本会变得非常高。”Arm汽车和物联网事业部亚太区合作伙伴关系高级总监邓志伟说,“我们看到车厂和Tier 1供应商在软件开发方面不断投入,软件甚至会主导IC设计。”
Arm提出的SOAFEE架构基本理念是“整车厂和Tier 1供应商在软件方面投入,存在很多共同的部分。为了提升效率,如果有一个统一的软件定义汽车平台作为大家开发的基础,基于这个平台去进行差异化功能和服务开发,会让产业链中的企业和客户受益。”
借着SOAFEE,我们也能够看看,汽车中现代化的软件架构是长什么样的。就我们目前的认知来看,以SOAFEE架构为代表的“软件定义汽车”的提出,对行业可能具备变革性的意义和价值;虽然Arm在这次媒体沟通会上分享SOAFEE架构的细节还比较粗线条。
有关软件定义,和汽车行业的需求
邓志伟在采访阶段说,Arm在与整车厂和Tier 1供应商沟通的过程中发现,“他们试过很多的所谓云技术”...“直接从数据中心或者服务器来的云技术是无法直接应用在汽车产业的,其中最关键的是功能安全(functional safety)和实时性(real time)要求”。而SOAFEE提出的重要价值就是,作为一个平台和基础实现为汽车行业专门搭建。
SOAFEE作为“统一的软件定义汽车平台”,我们需要先搞清楚什么叫“软件定义汽车”——虽然“软件定义”这个词似乎在各行各业都变得越来越时兴,5G基础设施、测试测量等等领域都在提。
Arm对此的定义如上图所示,总共4个要素:“(1)软件定义就是由软件启动和控制一个特定功能。(2)但不止如此,完整的软件定义还必须包含对底层硬件的抽象化,实现同样的软件在不同的硬件上都能顺畅运行。(3)软件定义还必须要能具备不断升级和更新的能力。(4)而且它必须以云技术作为开发和构建的基础。”
所以Arm眼中的“软件定义”就要求功能与服务“在云端环境中开发、测试和验证”。那么自然就需要各种云相关的技术。上面这张图给出了一些核心要素。云环境内必须包括:
- Models——硬件模型,用以模拟硬件环境;
- Containers and Virtualization,提供独立的软件执行环境及虚拟化;
- CI/CD(Continuous Integration and Continuous Delivery,持续集成/持续交付),负责管理应用及服务的更新;
- Workload Orchestration(编排器),负责配置适当的软硬件资源给到每一个container。
当然还需要开发者。这应该算是云环境中做开发实现的常规认知了。而且这个通用的认识也不只是面向汽车领域。如果将其具体落实到汽车领域,则有一些特殊需求,比如说前文提到的处理实时性、功能安全需求,还有汽车续航里程对效率也比较敏感,另外也可能涉及到算力扩展等方面。
Arm认为软件定义汽车的需求包括了:软件具备可移植性;软件必须以云端技术来开发构建和升级;基于汽车本身的特点,软件定义汽车的软件必须具备实时性、功能安全(safety)和空间安全(security)的特点;必须是开放式(open)架构,以期打造更大的生态系统。
“软件定义汽车”可能是现代化汽车的功能与服务多样化的必然选择。它带来的实际价值,对于消费用户而言,自然就是定制化的汽车功能与使用体验,加强的UX等。
对汽车产业链的制造者而言,其价值包括了软件开发成本的大幅下降,而且能够在售后环节提供更多的服务(以OTA更新的方式),增值服务是可以成为新的营收来源的。邓志伟说,软件定义可以为车厂创造每辆车“多达2600-7500美金的额外利润”。
另外就是对于整个汽车生态系统来说,IC设计商、软件供应商能够“更好地实现产品差异化”;与此同时,让更多的云端应用开发者加入到汽车创新的行列中来。所以从中可见的是,软件定义汽车本身就是对商业模式,甚至行业结构的革新。这一点我们可以在未来的文章中做进一步的探讨。
所以SOAFEE问世了
基于软件定义汽车的发展前景,整车厂、Tier 1和开发者也就需要一些基础服务或构成,或者说有统一的“软件定义汽车”平台的存在。其实不同的市场参与者也可以自己去打造这样的平台,但其复杂度变得越来越高,投入本身就是一种挑战;而且各自为政的市场局面,在电子科技行业其实是不利于这种热点技术快速推进的。
邓志伟说,“有非常多共用性的东西,比如说操作系统、hypervisor,或者一些硬件厂商提供的软件、固件,在云端的这些基础服务需要由第三方供应商来构建。” “很多第三方供应商提供基础的软件模组。这些其实并不应该由汽车产业里面的人来构建。”“最好的方式,是利用或借助软件界里面共同构建这些基础的软件。”
就如前文所述,单纯把已有的那套方案搬过来,对汽车行业而言是不行的。Arm所推SOAFEE扮演的角色,便是构建其中的基础软件部分,来满足汽车产业特定的需求;面向IC制造商和车厂,打造统一的中间层界面,做到各组成部分的“标准化”。
如此一来,汽车行业的参与者,比如整车厂就可以专注于应用和服务的创意与开发,并且对于最终应用与服务体现的差异化,实际上也更有价值。整车厂不需要把太多的注意力放到软件的基础架构部分。
“我们和车厂、Tier 1供应商,甚至IC设计公司谈到(SOAFEE)这个想法的时候,大家突然松了一口气,觉得这样的想法很好。”邓志伟说,“对做IC设计一类的传统硬件供应商来讲,他们也松了一口气。以前他们做IC或硬件平台,需要不断针对不同车厂和系统软件做不同的移植和定制化,这对硬件厂商也是很大的困扰。实现界面(interface)的标准化,硬件厂商就能集中资源做自己硬件领域的创新和差异化了。”
Arm表示SOAFEE的存在对于缩短开发时间有相当大的益处。“传统开发流程需要3-4年,那么3-4年前定义的IC,其性能可能无法跟上最新的应用和服务的需求。”邓志伟谈到,“我们提出的解决方案,是在IC规格定案之前,通过SOAFEE及硬件开发平台,来决定应用及服务的计算需求。如此一来,不仅能够降低规格不合的风险,也可以缩短整个开发时程。”
Arm在此处表达的,应该是整车厂、Tier 1这类角色软件开发在流程上的提前;以及为硬件厂商免去了很多工作。所以总体上通过SOAFEE的这种标准化,也就实现了开发周期的缩短。
SOAFEE架构大体长这样
SOAFEE全称为Scalable Open Architecture For Embedded Edge。直译一下,应该叫面向嵌入式边缘的可扩展开放架构。前文差不多已经总结了SOAFEE的特点,即基于Arm对软件定义的理解,SOAFEE着力于针对汽车的实时、安全需求,以及具备基于云原生开发的特点——所以Arm才一直在说,软件定义必须是“以云技术作为开发和构建的基础”——他们对此的解释是,可以节省成本。
在“实时”和“功能安全”这两个问题上,Arm在本次沟通会上其实并没有谈二者的实现细节。不过邓志伟说SOAFEE是第一个,真正把云端技术导入到汽车产业、满足汽车产业需求的架构。“目前在整个业界,还没有任何一个其他完整的云端平台能满足这样的需求。”
SOAFEE当然本身作为一种软件架构,是通过现有的云技术,加上针对汽车行业的考量,所做的一种“开源参考实现”。“同时SAFEE是以Arm Project Cassini中的SystemReady开放标准为基础,来实现底层硬件的抽象化。”另外,Arm当然也会把SOAFEE定义为一个生态。
说点儿具体的,这套基于“云原生”方法构建的整体结构如上图所示。汽车端底层是硬件,其上自然有固件、操作系统、container、hypervisor。系统软件之上包括各种的应用和服务,比如ADAS、信息娱乐应用等,它们分别在各自独立的环境(container)里运行。这些都是“软件定义”的常规思路。
“这些container在云端环境中开发、测试和验证的,经由一个orchestrator(编排器)软件模块,适配适当的软硬件资源给每个container中的应用和服务,让它们能够在汽车中工作。”邓志伟说,“同时在云端,另一个CI/CD模块将负责管理应用及服务的更新。”
那么具体到汽车领域,这套方案的最底层以SystemReady开放标准来统一硬件及固件与系统软件的接口,做“第一层抽象化”。上面就是SOAFEE框架,hypervisor当然是管理操作系统间共享资源的问题;并以container runtime和HAL(硬件抽象层)作为另一层抽象化。虽然感觉Arm这个解释还是不够具体,毕竟这还是非常通用的大方向结构。
云侧,SOAFEE也构建虚拟硬件环境,就是上图中所谓的“virtual ECU”,作为开发环境确保云和车两侧的一致性。有关功能安全和实时性,邓志伟只在这里提到了一句,“SOAFEE的另一个重要贡献,就是将orchestrator改进成为能够处理功能安全及实时需求的软件模块。”
目前Arm已经提供的首个可下载的SOAFEE,是实现“云原生的所有基本模块”,具体如上图所示。
SOAFEE的早期生态构建
据说目前SOAFEE已经得到了不少合作伙伴的回应和参与,包括整车厂、Tier 1供应商,以及硬件和软件生态系统相关的企业。
另外,SOAFEE专家小组当前已经成立。“我们期望借着这次的发布,让更多企业加入SOAFEE专家小组,共同为打造软件定义汽车的未来贡献力量。”生态扩张对于SOAFEE后续的发展而言自然还是最重要的。
同时Arm也宣布和Ampere Computing、ADLink的合作,打造的硬件参考平台,具体如上图所示。“SOAFEE与硬件参考平台结合,开发者可以在系统中开发及试做各种应用和服务,例如座舱系统、驾驶辅助系统,甚至自动驾驶功能。”邓志伟表示。
其中ADLink AVA Developer Platform是工程开发平台,而ADLink AVA-AP1是可以联结车载系统的实车测试用平台。这些参考硬件目前已经接受预订。
另外尤为值得一提的是,SOAFEE是个开放、开源的架构。邓志伟说“SOAFEE项目的目的是希望能实现硬件和软件界面的标准化。”“既然SOAFEE是开源的架构,就必须覆盖各种不同硬件、IP架构,只要符合与软件之间的标准界面,Arm以外的硬件架构也可以在SOAFEE上使用。”即底层计算平台,可以是Arm之外的方案。这一点其实还是要看SOAFEE未来的生态建设情况。
“从整车厂的角度来看,未来硬件价值的比重相比过去是降低的,软件的价值越来越高。整车厂需要维持自身的整体价值,就必须做角色调整。”邓志伟表示,“我们可以看到非常多的车厂已经在这么做了。他们投入非常多的资源去打造软件能力。”“今天只是一个开始,后续需要广大业界伙伴一起参与。”
SOAFEE的出现当属汽车电子发展的必然,只不过Arm率先迈出了这一步。而且以SOAFEE的出现为标志,汽车产业的商业模式、行业结构、产业链价值重心未来都可能因此发生变化。这一点也将十分值得我们关注。
责编:Luffy Liu
- 在汽车领域推行一个统一的中间件平台来适配不同硬件,想法挺好,就是不知道实时性如何,这对于汽车安全至关重要。。。。。