portant;">本文节选自:《中国汽车基础软件发展白皮书3.0》
portant;">基于一个整车平台,车企可以衍生出多款车型,从而全面提升硬件资源的复用性。纵观汽车工业的发展历程,平台化是驱动汽车行业高速发展的关键,它不仅有利于突破复杂技术、提升产品的可靠性和一致性,还有利于降低研发成本、缩短开发周期。
portant;">随着汽车E/E架构的升级和智能网联汽车的快速发展,对汽车软件的迭代更新提出了更高要求。因此,打造车用一体化软件平台是车企实现软件定义汽车战略布局的重中之重。
portant;">白皮书3.0旨在分析汽车基础软件平台及其关联技术的发展趋势,除了对其技术形态做一般性定义之外,还进一步解读了其中的关键技术、分析了典型应用案例,帮助产业链参与者对智能汽车车用基础软件平台的技术形态和发展趋势产生更多思考。
portant;">1.1智能汽车车用基础软件平台的定义与分类
portant;">1.1.1智能汽车车用基础软件平台定义
portant;">汽车软件主要分为应用软件和基础软件。应用软件和业务形态高度关联,不同控制器的应用软件之间差异较大。基础软件介于应用软件和硬件之间用于屏蔽硬件特性、支撑应用软件,可有效地实现应用软件与硬件之间解耦,非常适合平台化最终形成基础软件平台。
portant;">车用基础软件开发平台和车用基础软件验证平台在汽车软件中的位置如图1.1-1所示。基础软件平台又可以进一步分为基础软件开发平台和基础软件验证平台。其中,基础软件开发平台包含内核、虚拟化模块,中间件,功能软件以及与之相配套的开发工具链,用于支撑应用软件的快速迭代开发。基础软件验证平台通过调试、分析、仿真、测试等手段验证设计和实现的一致性。
portant;">图1.1-1汽车软件构成
portant;">白皮书着重讲述基础软件开发平台,仅在部分章节对基础软件验证平台进行介绍。
portant;">1.1.2智能汽车车用基础软件开发平台分类
portant;">2019年10月,汽标委发布了《车用操作系统标准体系》,参考该标准可以类似地将智能汽车车用基础软件开发平台分为安全车控基础软件开发平台、智能驾驶基础软件开发平台和车载信息娱乐基础软件开发平台。
portant;">1.安全车控基础软件开发平台
portant;">安全车控基础软件开发平台主要面向车辆经典控制领域,如动力系统、底盘系统和车身系统等,该类基础软件开发平台对实时性和安全性的要求极高。目前,主流的安全车控基础软件开发平台兼容OSEK/VDX或ClassicAUTOSAR标准,其功能安全等级需要达到ASIL-D。
portant;">2.智能驾驶基础软件开发平台
portant;">智能驾驶基础软件开发平台主要面向智能驾驶领域,用于智能驾驶辅助,以及全自动驾驶功能的控制器上。目前智能驾驶控制器主要使用的底层操作系统有QNX以及Linux。
portant;">与安全车控基础软件开发平台相比,对智能驾驶基础软件开发平台的要求主要体现在:
portant;">inkMacSystemFont,"">强大的计算能力,以满足图像识别和决策计算的要求inkMacSystemFont,"">强大的数据吞吐能力,以满足多传感器数据的实时接入和处理要求inkMacSystemFont,"">高度的灵活性、扩展性、可编程性,以满足多种算法模型的需要inkMacSystemFont,"">易用性,以满足ADAS和自动驾驶算法所需调试、调优、调测的需要
portant;">当前异构分布硬件各单元所要求的功能安全等级有所不同,AI单元需要达到QM至ASIL-B,计算单元需要达到QM至ASIL-D。
portant;">中国软件测评中心2019年发布的《车载智能计算基础平台参考架构1.0》就是智能驾驶基础软件开发平台的一个重要参考。
portant;">3.车载信息娱乐基础软件开发平台
portant;">车载信息娱乐基础软件开发平台主要为车载信息娱乐服务以及车内人机交互提供控制平台,是汽车实现座舱智能化与多源信息交互的必要运行环境。
portant;">车载信息娱乐基础软件开发平台对于实时性、安全性、可靠性的要求处于中等水平,既可以使用Android、Linux等非实时操作系统,也可以使用QNX、VxWorks等实时操作系统。为便于应用程序移植,当前越来越多的车载信息娱乐基础软件开发平台采用AndroidAutomotiveOS或其他类Linux系统。
portant;">随着车辆由单纯的交通工具向智能移动终端转变,车载信息娱乐基础软件开发平台需要满足如下要求:
portant;">inkMacSystemFont,"">支持多样化应用,满足支付、娱乐、导航、信息服务等多样化功能需求inkMacSystemFont,"">支持多生态资源,将手机端庞大的信息娱乐服务生态资源,通过采用相同或类似的操作系统,快速移植到车辆智能终端,避免重复开发inkMacSystemFont,"">安全,通过深度定制达到车辆信息安全和功能安全的标准
portant;">1.2智能汽车车用基础软件开发平台的要素
portant;">基础软件开发平台的要素分为嵌入式软件、开发方法论和配套工具链。
portant;">1.2.1嵌入式软件
portant;">嵌入式软件是基础软件开发平台的基本组成部分,需要满足功能实现要求和功能安全要求。
portant;">一是标准化/可扩展的功能实现。标准化/可扩展的功能实现既要充分满足整车应用对基础软件开
portant;">发平台的功能需求,又要充分考虑这些功能需求的标准化/可扩展性。总结和归纳共性的需求,基于共
portant;">性需求参考和借鉴国内外的优秀案例,充分考虑未来汽车基础软件的发展趋势,提出更加成熟的软件设
portant;">计并将其标准化。标准化可以推动基础软件开发平台的推广,可扩展可以支撑基础软件开发平台的发展。
portant;">二是符合功能安全要求。基础软件开发平台支撑着整车应用的实现,如果不能守护好安全这道大门,
portant;">后果不堪设想。ISO26262(2018)对基础软件开发过程的各个阶段提出了充分的要求和建议,可以作为基础软件开发平台开发的准则和指导。
portant;">1.2.2开发方法论
portant;">开发方法论是基础软件开发平台的重要组成部分。清晰的开发方法论可以最大程度发挥出基础软件开发平台的优势。开发方法论应该包含与内外部开发环境的交互规则和详细的使用说明。
portant;">交互规则不仅定义了基础软件开发平台内部之间的交互规则,还定义了基础软件开发平台与应用软件、其他开发工具之间的交互规则,以便基础软件开发平台可以与其他开发环境更好地兼容与交互。详细的使用说明可用于指导用户合理、安全地使用基础软件开发平台来实现所需的整车功能。以AUTOSARCP开发方法论为例,图1.2-1展示了从系统层级配置到ECU可执行文件生成的过程以及该过程中的文件交互。白皮书2.1AUTOSARCP一章会对该方法论进行详细说明。
portant;">
portant;">1.2.3配套工具链
portant;">配套工具链是基础软件开发平台的必要组成部分。使用工具链自动生成基础软件开发平台的配置代码可以减少编码成本、提高软件质量、统一软件风格、降低设计难度。工具链需要满足安全稳定、易用、开放完整的要求。详见图1.2-2。
portant;">图1.2-2基础软件开发平台工具链设计要求
portant;">安全稳定是工具链的第一要务。通过强化高功能安全、高网络安全等能力,对全链路的数据处理、原型搭建、算法开发、信息标准化等流程进行强有力的保证,保障基础软件开发平台应用开发全流程的安全稳定。
portant;">易用性是衡量工具链价值的重要指标。其包括合理的界面设计、功能模块的独立解耦、自动代码的生成能力、图形化配置的能力等。
portant;">开放完整是提高开发效率的重要保证。工具链需要:配合基础软件开发平台对新技术新功能不断开放创新;需要面向不同垂直应用领域提供开放的场景模型库;需要兼容不同OEM的应用场景及第三方应用软件开发;需要通过工具链的开放生态助力基础软件开发平台的生态化发展。工具链的完整性不仅是单一业务场景下的功能完整,更是覆盖全流程的完整。以自动驾驶为例,工具链需要覆盖从算法模型训练到芯片运行模型预测的完整AI开发过程,并通过其开放性不断丰富自动驾驶应用场景库以加快开发速度、保证开发质量。
portant;">1.3智能汽车车用基础软件平台发展现状
portant;">国内外主机厂、造车新势力、零部件供应商等都在着力打造其专属的基础软件平台,并已形成以OS为核心向基础软件平台进化的趋势。此处挑选两个国外主机厂基础软件开发平台的案例进行介绍,国内发展现状将在第6章中介绍。
portant;">1.3.1大众VW·OS
portant;">2019年6月,基于汽车智能化和汽车新商业模式的需求,大众汽车宣布成立Car·Software软件部门,
portant;">专门从事自主软件平台VW·OS的研发。计划于2025年,旗下所有新车型均搭载VW·OS,以实现车
portant;">辆传统控制系统、ADAS系统、车载娱乐/互联系统、能源管理系统和车辆舒适系统的全面整合。
portant;">VW·OS是集成了POSIXOS、AdaptiveAUTOSAR、VWAPI的一体式SOA平台,用于大众全新集中式E/E架构ICAS。其中AdaptiveAUTOSAR的实现采用了EBxelor高性能计算软件平台(基于AUTOSARAPR19-03标准)。目前该平台已实现在大众ID.3系列车型上的搭载。大众VW·OS如图1.3-1所示。
portant;">图1.3-1大众VW·OS
portant;">1.3.2丰田Arene·OS
portant;">为了更好地应对软件定义汽车的发展需求,2021年8月丰田宣布将在未来五年内打造整车软件平台Arene·OS,以实现在不影响车辆安全的前提下,借助其开放的车辆应用程序编程接口和软件工具包,完成汽车软件的快速迭代,从而缩短汽车软件开发和部署的周期。
portant;">丰田Arene·OS软件平台如图1.3-2所示,其主要包括软件工具包和AreneAPI车辆应用程序编程接口。其中软件AreneAPI采用Rust语言编写,作为预编译的C/C++库被部署在车辆内的接口ECU上,并可实现跨平台部署。Arene·OS软件工具/服务包括APPSDK(用于开发、测试和部署应用到虚拟设备或者真实车辆的工具和API),虚拟仿真/测试平台(支持虚拟场景创建、软件在环和硬件在环仿真)和基础开发环境(采用基于云的数据管道技术,结合可自动创建AWS沙箱的Ansible和Terraform模板来实现数据处理和索引)。借助Arene·OS的车辆抽象层,开发者可以将相同的源代码部署到任何运行Arene·OS的车辆,从而提升软件的复用性。
portant;">图1.3-2丰田Arene·OS
portant;">与此同时,国内基础软件平台的发展呈现出百花齐放、欣欣向荣的态势,但是其中也存在一些痛点和问题。例如在安全车控基础软件平台方面,本土化问题也越来越突出,不少控制器开发还是基于国外的解决方案;在智能驾驶基础软件平台方面,还存在多处“卡脖子”技术短板,尚未出现足够成熟的解决方案并且缺乏实时安全的内核、中间件和虚拟化产品;在车载信息娱乐基础软件平台方面,内核种类繁多,业内供应商各自为战,尚未形成合力。