搞一下Adaptive Platform AUTOSAR(一)—— 技术介绍

写在前面的话:

        笔者是一名汽车电子爱好者,喜欢分享一些自己的学习笔记,从今日起,笔者开始学习Adaptive Platform AUTOSAR,笔者会将自己的理解分享出来,有不足之处,还望指正!


缩写定义

AP:Adaptive Platform AUTOSAR

CP:Classic Platform AUTOSAR

OTA:Over-the-Air

SOTA:Software Over-the-Air

SOA:Service-Oriented-Architecture

ECU前景

Q:CP是用来干啥的平台?AP又是用来干啥的平台?

        AUTOSAR传统平台(CP)标准解决了嵌入式ECU的需求,但是,如高级自动驾驶,需要在车辆上引入高度复杂和计算资源需求量大的软件,同时这些软件在车辆上必须完全兼容和绝对安全。对于ADAS这种控制器,CP无法满足其需求。因此,AUTOSAR建立了第二个软件平台,AUTOSAR自适应平台(AP)。

        AP主要提供高性能的计算和通信机制,并提供灵活的软件配置,比如支持OTA软件更新。那些专门为CP定义的功能,比如电信号和专用总线系统信息的获取,可以集成到AP中,但不是标准化的重点。

        AP规定了运行时的系统架构、平台的构成以及它所提供的功能和接口。它还规定了用于开发此类系统的机器可读模型。

技术驱动

Q1:AP的主要技术驱动是啥

        AP有两个主要的技术驱动,一个是以太网,另一个是处理器。

Q2:为啥是以太网?

        与传统的车载通信技术(如CAN)相比,以太网提供了更高的带宽和交换网络,能够更高效地传输长消息、点对点通信等。CP虽然支持以太网,但主要是针对传统的通信技术而设计的。即使CP对以太网进行了优化,还是很难充分利用以太网强大的通信能力。

Q3:为啥是处理器?

       虽然多核处理器已经与CP一起使用,但多核的处理能力还是不够。市场上不断涌现具有数十到数百个核的核心处理器、GPGPU(通用GPU)、FPGA和专用加速器,因为这些处理器比传统的MCU性能更强。

        众所周知,每瓦的最佳性能是由不同的计算资源(如多核、协处理器、GPU、FPGA和加速器)共同决定的。这被称为异构计算——目前正被HPC(高性能计算)所利用——显然已经超过了CP的范围。

        同样值得一提的是,处理器和快速通信会产生综合效应。当越来越多的处理元件组合在一个像多核处理器这样的单芯片中,这些处理元件之间的通信会变得比传统的ECU间的通信更快、更高效。这是通过新型处理器互连技术(如片上网络NoC)实现的。

        这种芯片的处理能力更强、通信速度更快,也促使人们开发一种可以适应不断增长的系统需求的新平台。

AP特点

1、开发语言:C++
        应用程序可以用C++自上而下编程。C++现在是开发新算法和应用软件的首选语言,是软件行业和学术界在性能关键上的复杂应用。如果使用得当,这将使新算法的适应速度更快,也能提高应用程序的开发效率。

2、体系架构:SOA
        为了支持复杂的应用程序,在处理分布和计算资源分配的过程中得到最大的优化,AP遵循面向服务的体系结构(SOA)。

        SOA基于这样一个概念:一个系统由一组可以互相调用的服务和这些服务的应用程序所组成。SOA通常表现出和AP一样的系统特性。例如,服务可以停留在应用程序所运行的本地ECU上,也可以停留在远程ECU上,后者也运行着AP的另一个例程。

        在这两种情况下,应用程序代码是相同的——通信基础设施会处理透明通信里面的差异。查看这个架构的另一种方法是分布式计算,
通过某种形式的消息传递进行通信。总的来说,所有这些都代表着相同的概念。这种基于消息传递、通信的体系结构,还可以从以太网等快速和高带宽通信的兴起中得到优化。

3、并行处理
        分布式计算的本质是并行。因为在SOA中,不同的应用程序使用不同的服务集,所以共享这个特性。随着许多异构计算技术的发展,AP可以扩展其功能和性能的体系结构。

4、现有标准的利用
        AP借鉴并兼容了现有的开放标准,现有的标准生态系统使得它发展迅速。

5、安全性和可靠性
        AP所针对的系统通常需要某种程度的安全性和可靠性,可能是最高级别的。新引入的概念和技术不能破坏这一点,尽管实现这些这一点很难。

        为了解决这个问题,AP结合了体系结构、功能和过程方法。该体系结构基于SOA的分布式计算。它也是使每个组件更加独立且不受外界干扰,实现安全性和可靠性。还有像C++编码指南之类的指导,这样可以更安全更可靠地使用复杂的编程语言。

6、动态设计
        AP支持应用程序的递增部署,这意味着我们可以动态地去管理资源和通信,减少软件开发和集成的工作量,从而缩短迭代周期。递增部署也适用于探索性软件的开发阶段。动态设计可以是:

        ▲ 服务发现过程的预确定

        ▲ 启动阶段动态内存分配的限制

        ▲ 除优先级之外的公平调度算法

        ▲ CPU核心进程的固定分配

        ▲ 仅访问文件系统中预先存在的文件

        ▲ 应用程序使用AP和API的限制

        ▲ 仅执行认证代码

AP & CP & Non-AUTOSAR

        正如前几节所述,AP不会取代CP平台中的IVI/COTS中或AUTOSAR 平台。相反,它会与这些平台和外部后端系统(如路边基础设施)交互,形成一个集成的系统。

不同平台的示例性部署

AP 和CP的示例性交互

        上述例子中,CP已经包含了SOME/IP协议,AP和其他协议也支持SOME/IP协议。

参考文献:《AUTOSAR AP 标准》

AP和CP相关资料和工具咨询可关注微信公众号“搞一下汽车电子”

邮箱:[email protected]

手机/微信:18405011517

原创文章 32 获赞 107 访问量 7557

猜你喜欢

转载自blog.csdn.net/DJAction/article/details/102950338