有功能安全的经典和自适应AUTOSAR软件架构比较

网联化和智能化将对下一代汽车的网络架构和ECU之间的互连产生重要影响。汽车行业开始制定新的有效战略来提高全球化系统的性能。AUTOSAR组织作为行业的一部分,试图提出整体解决方案,尤其是新技术领域的软件架构。在本文中,我们将介绍新E/E架构与即将到来的技术的各个方面。重点讨论AUTOSAR组织提出的新解决方案,以实现下一代汽车的新软件要求。该解决方案旨在为需要复杂数据处理以及与AUTOSAR和非AUTOSAR平台通信的功能提供安全的环境。我们在功能和应用领域方面总结了自适应AUTOSAR和经典AUTOSAR之间的全面比较。我们为全球E/E架构提供功能安全预备。

1.简介

最近,联网和自动驾驶成为汽车领域的最新技术行业。这直接导致汽车中电子元件和嵌入式系统的百分比增加。此外,汽车本质上安全性至关重要。现代汽车中ECU的使用呈指数级增长,每个都有特定的功能。目前的信息娱乐、Car-to-X技术、自动驾驶汽车等都需要高水平的计算能力。这意味着网络架构要在短时间内处理和传输大量数据。

为了在软件架构上实现这些新技术,除了现有的安全和保障要求外,还需要一个动态的软件环境。在这种情况下,由OEM和供应商组成的AUTOSAR组织认识到,这些新要求无法通过现有的软件架构来实现。一般来说,AUTOSAR为整个分层架构中的不同软件需求提供解决方案,该架构将软件与微控制器分开,软件组件可重用于其他应用程序,如图1所示。AUTOSAR联盟提供了两个标准,称为经典平台和自适应平台,用于不同的目标和要求。经典平台已在业界建立,旨在使用低成本的处理器满足严格的实时要求。另一方面,最近推出了自适应AUTOSAR平台,以处理对性能有特别要求的应用程序,例如高级别自动驾驶。这些趋势的结合将为即将到来的E/E架构铺平道路。

有功能安全的经典和自适应AUTOSAR软件架构比较_第1张图片

图1. 应用软件与硬件分离

在本文中,我们介绍了异构平台的关键点,并重点介绍了自适应AUTOSAR平台标准及其最新版本。我们研究了经典AUTOSAR和自适应AUTOSAR之间的主要区别。我们举了一个经典和自适应AUTOSAR之间通信的场景案例。我们提供了功能安全前提,以安全地建立汽车应用。

2.未来E/E架构概述

2.1不同软件平台的组合

如今,可以在不同的域看到新的网络架构,例如网联、信息娱乐、电气化等。每个域都有一个特定的ECU,具有特定的开发方法。除了使用Linux或其他操作系统的信息娱乐ECU之外,经典AUTOSAR平台是深度嵌入式ECU的标准,另一种类型的ECU必须具有不同的特性,必须与现有的E/E架构相匹配并互连,以响应来自新的嵌入式应用程序的需求。

2.2.面向服务的通信

ECU之间使用传统协议(如CAN、LIN、FlexRay和MOST)通过信号进行通信,非常适合汽车内的数据传输。同时,信息娱乐和Car-to-X等先进技术需要更高的带宽,但由于性能有限,这些协议并不能支持这些技术。

面向服务的通信,是一种基于在通信网络上提供服务的应用程序,是连接系统及其用户的灵活有效的方式。未来的E/E架构将是面向服务的范式与现有传统通信的组合。AUTOSAR作为一个由原始设备制造商及其供应商组成的联合体,基于现有标准标准化了一个新平台,称为自适应AUTOSAR平台。

3.自适应AUTOSAR平台

自适应AUTOSAR平台是一种标准化架构,用于高性能ECU构建安全系统,例如高级辅助驾驶和自动驾驶系统。图2描绘了该平台的整体架构。

从版本1.0.0到最后一个版本R20-11,引入了自适应平台的几个概念,为平台添加了新功能,该自适应平台的核心功能之一,叫做自适应应用程序的AUTOSAR Runtime(ARA)。ARA为用户提供了在系统中进行通信和执行自适应应用程序所需的所有接口和基础设施,并允许在ECU之间进行数据交换,而不管其内部架构如何。此外,它还提供了对操作系统功能的直接访问,称为“最小实时系统配置文件”(PSE51)。

基于POSIX子集的模块操作系统接口负责运行时资源管理,例如信号、定时器和线程处理,用于建立平台的所有自适应应用程序和功能集群。

在自适应AUTOSAR平台中,应用程序并不完全受静态调度和内存管理的限制,而是可以根据当前需要自由分配内存,并通过面向对象编程来分解其任务。

运行管理模块是架构的一个元素,负责启动和停止自适应AUTOSAR应用程序,并负责在应用程序执行期间提供必要的资源。为了确保本地应用程序和其他ECU上的应用程序之间的通信,包括与自适应平台服务的交互,必须定义中间件协议。自适应AUTOSAR使用中最显著的变化,是基于以太网的通信系统的普遍使用。R20-11版本,增加的支持以太网协议的新技术与IEEE802.3cg指定的10BASE-T1S相关。这项新功能允许使用多点配置轻松将设备集成到汽车以太网中。此外,它位于OSI模型的第1层和第2层,经典平台和自适应平台都支持。

有功能安全的经典和自适应AUTOSAR软件架构比较_第2张图片

图2.自适应AUTOSAR平台

AUTOSAR 组织有一个广泛的自适应 AUTOSAR 发布计划。最新发布日期为 2020 年 11 月。此版本的重点是向平台添加新功能来增强安全性和通信(10BASE-T1S、ara 通信组)。此外,还有针对经典和自适应平台的一些概念,加强了两个平台之间的交互。

4.AUTOSAR Foundation

未来汽车的ECU由不同的架构平台组成,以提供所需的功能,例如高度自动驾驶、联网系统、底盘和信息娱乐。请注意,每个系统都可能被归类为安全关键部分或非安全关键部分。为了实现全局系统的完整功能,平台之间需要中间件通信。为此,AUTOSAR组织定义了一个单独的标准,称为AUTOSAR Foundation。Foundation标准(“基础版本概述”,n.d.)的主要目标是加强AUTOSAR平台之间的互操作性,并确保以下平台之间的兼容性:

•经典和自适应平台。

•非AUTOSAR平台到AUTOSAR平台。

5.经典AUTOSAR与自适应AUTOSAR

经典AUTOSAR是ECU标准化软件架构的第一个成就,自适应AUTOSAR刚刚提供了一个新架构来满足新的OEM要求。在经典平台中,应用层在操作系统的帮助下,通过运行时环境(RTE)处理软件组件之间的通信。RTE充当ECU之间的抽象层,并通过特定的通信网络建立ECU间的通信。在自适应平台中,应用程序利用“自适应应用程序的AUTOSAR Runtime”,也称为ARA。

这个运行时环境为用户提供了标准化的接口,以有效地将不同应用程序集成到系统中。ARA为ECU内部和网络间通信,以及对诊断和网络管理等基本服务的访问提供机制。自适应AUTOSAR应用程序由通过服务进行通信的软件组件构成。可能会要求或提供这些服务。此外,应用程序员可以直接访问操作系统功能的子集。在通信方面,自适应AUTOSAR定义了一个名为ara::com的新功能。ara::com是基于SOA的标准C++API,更具体地说是基于SOME/IP。对应的,经典AUTOSAR包含了使用RTE信号的软件组件之间的通信。

有功能安全的经典和自适应AUTOSAR软件架构比较_第3张图片

图3.自适应AUTOSAR和经典AUTOSAR中的应用程序之间的差异

该操作系统展示了自适应AUTOSAR平台和经典AUTOSAR平台之间的一些关键区别。在自适应AUTOSAR中,应用程序不再依赖于非常严格的静态调度和内存管理,而是可以根据需要自由地创建和销毁任务以及分配内存,包括使用C++作为编程语言,这与经典平台中的C不同。

有功能安全的经典和自适应AUTOSAR软件架构比较_第4张图片

图4.示例说明RTE和ARA::COM的代码实现

AUTOSAR平台的一个重点是更新和配置管理。自适应平台现在提供删除、更新或添加单个应用程序的选项,而经典平台只能在更新期间替换整个ECU代码。

自适应平台的另一个特性是它向专门面向服务的架构范式过渡,这为系统设计提供了更大的灵活性。应用程序通过自适应平台将其功能作为服务提供,并且它们可以使用所提供的服务。另一方面,经典平台的重点主要是面向信号的通信。尽管如此,也能以基于服务的方式使用经典AUTOSAR在多个ECU之间进行通信。在实践中,自适应AUTOSAR和经典平台的主要属性是相辅相成的。因此,可以假设基于这两种标准的ECU将在未来的车辆中使用,从而形成异构架构。

有功能安全的经典和自适应AUTOSAR软件架构比较_第5张图片

表1:自适应AUTOSAR和经典AUTOSAR之间的比较

6.AUTOSAR平台之间的通信

通过以太网互连的ECU使用SOME/IP上的面向服务的通信。在此示例中,经典AUTOSAR ECU1连接到多个总线系统上,其他ECU再和这些总线系统连接(图5)。

ECU1在此配置中作为网关运行,它负责将消息信号从总线端传输到服务中,以便自适应AUTOSAR平台可以直接访问它们。通信矩阵是AUTOSAR ECU设计的固定组件,无论是经典平台还是自适应平台。由于两个平台的配置格式不同,需要以转换的形式映射服务配置。对于与经典AUTOSAR ECU(其操作完全基于信号)通信而言,情况更为复杂。在这种情况下,ECU1被设计为信号网关,它将消息信号直接转换为以太网上的UDP帧(“UDP网络管理规范”,n.d.)。自适应AUTOSAR ECU再将信号从UDP帧转换为ECU2中可用的服务。

有功能安全的经典和自适应AUTOSAR软件架构比较_第6张图片

图5.一个示例说明RTE和ARA::COM的代码实现

7.E/E架构的安全准备

7.1.功能安全概述

在汽车行业,我们更倾向于将安全定义为免受可能对汽车和道路上的人员造成物理或财产伤害的危险情况。

在实现汽车应用的过程中,保证安全始终是前提。根据ISO 26262中的定义,功能安全是指没有因危险而导致的不可预测故障。E/E架构的故障行为带来的风险(“ISO-标准”,n.d.)。标准ISO 26262有两个版本,第一个版本是于2011年推出,最近于2018年12月推出(“ISO 26262-1:2018(en)。

7.2.ASIL 定义

在ISO 26262中,汽车安全完整性等级(ASIL)是一种风险分类方法,可帮助开发人员满足安全应用的功能安全要求。ASIL基于危害分析和风险评估,通过估计每个硬件/软件组件行为的严重性、暴露度和可控性。ISO 26262确定了四个ASIL级别A、B、C和D以及不被视为ASIL的质量管理(QM),ASIL D代表最高程度的危险,而ASIL A代表最低程度。

要确定ASIL,我们需要综合考虑严重性、暴露度和可控性。暴露表示造成伤害的概率,严重性表示伤害的程度,可控性表示通过驾驶员的及时反应避免伤害的能力。表2说明了基于严重程度的ASIL判定、曝光度和可控性。

有功能安全的经典和自适应AUTOSAR软件架构比较_第7张图片

表2:ISO 26262中的ASIL确定

8.结论

目前,自动驾驶和联网汽车技术正在发展,并提出更多挑战,尤其是在安全方面。在软件部分,AUTOSAR作为一个组织提供了非常适合这些挑战的解决方案。

自适应AUTOSAR的设计目的不是在功能上取代经典AUTOSAR,但我们需要它们共存和合作,以满足汽车行业的需求和挑战。要确定在特定应用中使用哪一个,我们需要从回答以下问题开始:我们需要多少计算能力?我们的时间要求是什么?我们的应用程序有多动态?

需要了解更多关于自适应AUTOSAR和经典AUTOSAR的朋友,可关注牛喀学城AUTOSAR实训。

你可能感兴趣的:(安全,架构,自动驾驶)