新闻中心

 
中国汽车基础软件发展问题与挑战
 
 

随着汽车智能化、网联化的不断发展,整车电子电气架构发生了翻天覆地的变化,从过去的分布式架构逐渐过渡到基于域控制器的架构,未来还会向基于中央电脑的架构方向发展。这一变化使得ECU 功能区域集中化,而功能集中化使得车内控制系统趋于形成统一的软件架构标准及通用的硬件平台,各类控制功能逐渐演变为统一平台下的各类应用。

对于汽车基础软件来讲,如何满足整车电子电气架构变化的需求,是值得业界深入探讨的关键问题。一方面,基础软件平台需要统一标准并兼容不同整车厂的应用场景,另一方面,基础软件平台安全性需要重点加以考虑,并给出系统性解决方案。

无论是域控制器架构还是基于中央电脑的架构,整车功能设计都离不开高性能计算单元。高性能计算单元的引入增加了基础软件平台的复杂度,整车功能设计如何把握和驾驭这种复杂度成为首要问题。同时,基于SOA 的整车设计和功能服务化理念也对基础软件平台产生了重要影响,如何满足新的设计和功能,实现未来需求也是亟待解决的问题。

智能网联化对汽车通信技术提出了大带宽和高实时性的要求。通信协议栈是汽车基础软件平台的重要组成部分,基于CAN 总线的信号传输已经无法满足全部需求,而新型总线的各类传输协议标准(如:TSN)还在不断完善,上层应用协议的应用生态还没有构建完成,各整车企业在SOME/IP、DDS、PCIE 的协议应用仍处于论证阶段,这些不确定性都给基础软件平台的发展带来挑战。

面对诸多的技术问题和挑战,各大整车厂和软件服务商对汽车基础软件的发展路径有着不同的声音,也是业内讨论的持续热点。针对目前我国汽车基础软件遇到的发展路径选择和技术实现方案问题,我们给出如下建议:


  • 对于底盘和动力系统,由于功能设计高度实时性,基础软件平台需要搭载实时精简内核的操作系统,同时设计需要充分考虑功能安全。


  • 对于智能驾驶和互联功能的应用,硬件采用高性能计算单元是未来趋势,而基于高性能计算单元的软件开发需要搭载复杂操作系统,例如:Linux、QNX、VxWorks 等。由于上层应用开发需要基础软件平台提供统一接口,多种操作系统的共生需要开发Hypervisor。为了满足这类需求,基础软件平台中的车载操作系统、Hypervisor 和中间件需要进行无缝集成,并且兼容不同应用开发,建议进行统一规划,推荐基于现有商业化软件进行个性化定制,减少重新设计带来的成本浪费,避免软件生态的不畅。


  • 对于娱乐和座舱系统,由于功能开发偏用户体验,而且行业应用百花齐放,很难统一化,建议基础软件平台多参考互联网的技术应用,同时基于不同场景的应用,建立汽车特有的标准体系和基础软件平台。


技术实现方案是汽车基础软件研发的关键因素,决定了相关技术和产品能否成功量产并被市场所接受,针对汽车基础软件技术实现涉及的主要内容,概要综述如下:

1.1 虚拟技术

Hypervisor 是一种运行在基础物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享硬件。Hypervisor 的主要用途是通过限制或允许访问CPU、内存和外设等片上资源来定义每个虚拟机可用的功能。Hypervisor 可以为每个虚拟机分配不同的资源。例如,CPU 上的处理时间可以划分为多个时片,并根据需要分配给不同的虚拟机,一个虚拟机可以访问多个CPU 内核。类似地,存储器和外设可以共享或分配给单个虚拟机。虚拟机无需知道或根本不知道彼此的存在,并且无法访问未提供给它们的资源。因此,Hypervisor 也称为虚拟机监控程序(VMM)。

Hypervisor 可以划分为两大类。一类是直接运行在物理硬件之上的。例如一个MCU 中的A核和M 核,A 核运行在Linux 系统和AP 的方案,M 核运行在AUTOSAR OS 和CP 的方案,通过Hypervisor 实现A 核和M 核的划分。另一类是运行在另一个操作系统中。例如在Linux 系统中移植AUTOSAR OS,实现CP 和AP 的融合,同时满足控制器对实时性、安全性、计算能力、处理能力的要求。