自适应AUTOSAR为实现车辆ECU软件的更大灵活性打下了坚实的基础。这些系统是可扩展的 - 是全自动和联网驾驶方向的重要一步。自适应AUTOSAR不是替代经典AUTOSAR。它的优势在于两种标准的巧妙结合。
诸如可供替代驾驶概念和自动驾驶趋势等发展对车辆内部的E/E架构提出了很高的要求。特别是自动驾驶功能需要越来越强大的控制单元。此外,功能越来越多地相互联网,并与连接的基础设施(如云端系统)联网(图1)。通过使用来自各种车辆传感器以及外部来源(例如高度精确的地图资料)的数据,该软件可创建精确的环境模型,例如同时由多个驾驶功能使用的模型。同时,必须能够在车辆的整个生命周期间更新软件以考虑新功能或新的安全风险。该软件承担的驾驶任务越多,与外界的连接越多,对控制单元的功能安全、信息安全、可靠性和完整性的要求就越高。
鉴于这些复杂的要求,当今的大部分静态系统(经典AUTOSAR)很快就会达到极限。因此,少数功能非常强大的控制单元正在取代可信域控制器架构。这增加了灵活性,并允许跨域边界动态分配功能。这种新架构在硬件方面通过(多核)处理器的开发以及汽车以太网的可用性来实现,汽车以太网消除了各个模块之间信息交换的带宽限制。
图1.车内E/E架构的演变。虽然经典AUTOSAR是为具有静态功能的控制单元而设计的,但具有自适应AUTOSAR的控制单元可以在生命周期中通过附加功能和安全更新等进行增强。
软件必须变得更加灵活
相应的软件需要更灵活的架构以适应可以代表这些动态的环境。这就是为什么经典AUTOSAR已经成为控制单元的标准架构,提供自适应AUTOSAR平台以补充。这实现了动态软件配置,并且通过基于服务的通信和异构计算,它提供了确保必要性能的机制。此外,更易于更新或添加软件功能,而无需重新启动整个系统。
尽管如此,经典AUTOSAR并没有过时。该标准专为具有有限计算能力的控制单元而设计,与自适应AUTOSAR不同,它仅提供操作系统的静态配置。然而,除了主要配置工作的缺点和软件增强的有限可能性之外,这种静态配置确实在安全相关软件组件的实现方面提供了许多优点。
因此,将经典AUTOSAR系统与自适应AUTOSAR相结合,以实现必要的性能以及自动驾驶等技术的E/E架构的安全性是有道理的。但两种标准如何在中央控制单元上有效地协同工作?Elektrobit已经在一个系列开发的试点项目中获得了有关这种组合的一些经验。
极具性能和安全核心的多核架构
特别是安全相关和CPU密集型功能的组合始于硬件级别。中央控制单元使用Elektrobit软件,包含一台高性能计算单元,该计算单元包含多个多核处理器的组合(图2)。这些处理器分为具有集成安全硬件的性能核心和安全核心。在性能核心上运行的是多个性能分区,其中执行CPU密集型车辆和用户功能。它们还具有安全分区,可确保安全启动并确保应用程序经过身份验证。反过来,安全核心可以执行安全关键功能、真实性检查、监控和验证性能核心的结果。性能和安全核心的数量和组成原则上是灵活的,并且基于控制单元的项目要求。中央控制单元还通过具有多个Gbit以太网通道的以太网交换机连接到其他控制单元。
已有最初的硬件解决方案可用于这种性质的高性能中央控制单元,例如瑞萨的R-Car H3、英特尔的Denverton和Nvidia的Parker(T186),它集成了强大的性能处理器和安全控制器的组合。
这种中央控制单元构成了满足五个关键要求的软件架构的基础:
- 在一个控制单元上集成车辆功能
- 执行安全相关功能
- 安全启动整个系统
- 优化通信
- 更新和添加车辆功能
图2.极具性能和安全核心的中央控制单元的架构。
在一个控制单元上集成车辆的经典和自适应AUTOSAR功能
以前在各种(单个)控制单元上运行的功能现在可以捆绑在一个中央单元上。性能核心的硬件资源由虚拟机管理程序分开。虚拟机管理程序虚拟化硬件,并在此过程中将分区作为虚拟机提供多核异构。通过这种方式,集成商可以创建各种自适应AUTOSAR分区以及经典AUTOSAR分区。后者使用基于经典AUTOSAR的操作系统和基础软件。作为软件组件(SWCs)存在的车辆功能可以像经典AUTOSAR控制单元一样集成。自适应AUTOSAR操作系统使用POSIX兼容的操作系统和自适应AUTOSAR基础软件。该结构允许基于经典AUTOSAR的车辆功能以及基于自适应AUTOSAR的车辆功能集成在控制单元上。
与性能核心相比,安全核心的硬件设计符合ISO 26262的更高安全级别(汽车安全完整性等级,ASIL),并提供用于检测错误的特殊机制。应用现有经典AUTOSAR控制单元的既定安全概念。
符合ASIL D设计的控制器与经过安全认证的操作系统和其他经认证的基础软件组件相结合,可用于运行时监控和安全通信,可根据ASIL D实现具有最高安全要求的功能集成。由于总体概念,虽然没有考虑到安全性,但这些功能强大的内核可以监控性能核心,也可以满足所需的安全要求。
安全的系统启动
总体启动概念允许中央控制单元在规定的时间范围内安全启动(见图2:Secure Boot)。启动过程中单元的顺序和交互对于满足系统可用性方面的时间要求以及使安全规范尽可能快地配置特别重要。为此,定义了各个核心的角色,以便从主站启动从站及其分配的组件。
出于逻辑原因首先启动安全核心,即其监控功能和较短的启动时间。提供多个虚拟以太网端口需要使用高性能以太网交换机。它通过安全控制器连接,以实现以太网通信的快速可用性。然后启动性能核心,从安全分区开始,该分区具有保护所有较低级别和更高级别应用程序的功能。
优化通信
为了改善车辆功能之间的通信,经典AUTOSAR和自适应AUTOSAR都使用基于服务的通信概念SOME/IP。为了确保各个分区对中央控制单元内的以太网硬件交换机进行调节访问,需要一个特殊的虚拟以太网交换机驱动程序。这不仅可以调节与其他控制单元的通信,还可以同时调节分区之间的有效内部通信(图3)。
自适应AUTOSAR的主要功能之一是能够在运行期间追溯更新控制单元上的各个功能。与经典AUTOSAR相比,这可以在不更换和不重新启动控制单元整个软件的情况下完成。但是,它确实需要以受控方式完成,以防止任何错误甚至有害的更新。因此,在安全分区上运行的加密过程将用于所有自适应AUTOSAR应用程序。它们审核要加载的功能的签名,并且只有在成功进行身份验证后才允许更新这些功能。
图3.虚拟以太网交换机驱动程序调节与其他控制单元的通信和分区之间的通信。
通过嵌入式 Linux 实现更灵活的软件开发?
在经典AUTOSAR中,还指定了操作系统,而使用现有POSIX操作系统是自适应AUTOSAR的基本要求。这构成了灵活软件开发的基础。标准化编程接口使开发人员能够彼此独立地创建应用程序并将它们自由地分发给车辆中的控制单元。这里的先决条件是操作系统为应用程序提供符合IEEE 1003.13的POSIX类PSE51的接口。除了Wind River的VxWorks、Green Hills的Integrity和QNX等专有操作系统外,开源软件操作系统Linux也有望成为替代方案。但是它适用于自适应AUTOSAR系统吗?
与商业POSIX操作系统不同,当倾向于提供预编译为二进制代码时,Linux在开发和集成期间可用作源代码。这可以实现更透明的开发过程,部分是通过改进客户的调试来完成的。Linux内核也可以扩展,这意味着客户有机会(例如)添加自己的内核模块。此外,Linux提供的功能远远超出了所需的POSIX标准。Linux也已经在各种行业中使用,并通过来自数十亿安装和用户的反馈进行了优化。汽车行业也已经使用Linux,目前主要是信息娱乐和人机界面领域。内核本身不断通过Linux社区进行优化和增强。Linux可以通过免费软件许可证(GPLv2)获得,因此不需要许可证费用。客户通过设置、定制和配置以及定制交付的鉴定和维护等服务产生成本。
尽管如此,将Linux与自适应AUTOSAR配合使用确实提出了许多针对汽车的挑战,正如Elektrobit在其试点项目中所遇到的那样(图 4)。
图4.若要将Linux与自适应AUTOSAR配合使用,必须满足许多特定于汽车的要求。
软件更新和安全性
连接到互联网的控制单元会受到持续攻击。这些攻击可能来自外部,但它们也可能由控制单元本身的有害应用触发。除了上述加密过程外,还会在内核中添加特殊扩展(如seccomp-bpf)以限制应用程序的系统调用。
除了开发版本之外,每年还会引入特殊版本的Linux内核,并提供两年的长期支持。对于具有典型四年开发周期的车辆,系统必须由制造商和供应商专门设计,以便在开发期间和之后的运营中更换内核,同时系统保持与现有应用程序的二进制兼容性。使用Linux容器技术可确保内存和CPU以及共享资源层面的安全性。它还可以单独更换单个容器。该解决方案已在其他行业中证明了其价值,并且Elektrobit首次在该汽车行业项目中使用该解决方案。
车辆中的许多敏感功能和应用程序,例如速度表和倒车摄像头,需要在不到两秒的时间段内启用或执行。这是通过配置和优化Linux内核、裁剪不必要的服务以及根据紧急程度或可用性需求组织启动过程来实现的。
可测试和保护此类复杂系统是在汽车行业中使用Linux的先决条件。选项包括免费提供商业测试环境或转包给专业公司。开源自动化开发实验室(OSADL)等组织提供支持服务。
让自适应 AUTOSAR 为批量生产做好准备
凭借其四个主要版本,经典AUTOSAR已经成为成熟的标准10余年 - 而目标是将自适应 AUTOSAR更快地开发成一个成熟的标准。为此,规范的每次交付都附带一个参考实现,用作概念验证(POC)。此外,使用现有的自适应操作系统,有时是免费的实现,例如Linux,可以节省时间和精力。
现在的挑战是将自适应AUTOSAR的实现部分转换为适合批量生产的软件。将使用经典AUTOSAR的既定方法检查实现部分的质量。这些要求包括定义代码和测试覆盖的质量特性,这些特性必须用于根据发布过程检查实现部分。根据这些结果,将决定采用和扩展或使用自适应AUTOSAR实现部分。
自适应AUTOSAR标准仍在开发中。要在一系列项目中使用,必须按时提供必要的功能组件- 任何延迟或计划的AUTOSAR版本中缺少这些元素都将影响项目进度。必须向项目提供尚未完全定义的任何进一步要求并反馈到标准中。
至关重要的是,自适应AUTOSAR所需的新开发及其可能的用途将由客户快速评估,以便继续推动标准的开发。在使用Elektrobit软件的中央控制单元上巧妙地组合经典和自适应 AUTOSAR具有非常大的潜力。同时,将使用经典AUTOSAR的许多既定解决方案,例如经过认证的安全操作系统。这将大大加快适用于未来几代车辆的高性能计算平台的自适应AUTOSAR的推出。
作者
Roman Pallierer博士
曾在维也纳科技大学(TU Wien)学习计算机工程,并撰写了关于嵌入式通信协议验证的博士论文。从2002年开始,他一直负责Elektrobit FlexRay项目的工具开发。自2007年以来,他一直担任AUTOSAR基础软件的产品和解决方案经理。
Börge Schmelz
曾在TH Köln - 应用科学大学学习电气工程。自2005年以来,他一直参与Elektrobit的AUTOSAR控制单元的开发。2010年,他接管了全球服务项目的管理,重点是通过使用EB产品成功实现全球范围内的批量生产。2017年,他改任高性能计算平台和自适应AUTOSAR的产品管理人员。
咨询邮箱:shanghai_office@elektrobit.com