208份AutoSar官方文档
什么是AUTOSAR?
介绍一下:
- AUTOSAR是由150多家汽车制造商和汽车供应商企业组成的联盟。
- 它是AUTomotive Open System Architecture的简称。
- AUTOSAR的目的是建立一个开放和标准化的汽车软件架构。
- 它简化了汽车软件的开发。
- AUTOSAR有助于在软件开发中管理产品修改、可靠升级、可重用性和可扩展性。
- 由于汽车电子行业的创新,ECU(电子控制单元)的软件高度依赖于硬件。这导致了更高的成本和更多的ECU之间的功能迁移的努力。
- AUTOSAR 在应用软件和 ECU(即硬件)之间引入了标准化层。这使得软件独立于所选的微控制器和 OEM。这简化了开发流程,有助于应用软件的重用。
- AUTOSAR包括以下工作主题,分别是软件架构、方法论和应用接口。标准化层在AUTOSAR架构中被称为 "基础软件 "层,如下所述:
如图所示,AUTOSAR架构主要有3个层次,即应用层、RTE和基础软件。基本软件由许多子层组成,即服务层、ECU抽象层和微控制器抽象层。这三个子层的 "基础软件 "层提供了具有不同服务功能的模块,如操作系统服务、网络通信、内存服务、管理服务等。此外,在这三个子层中还存在各种总线类型,包括CAN、LIN、Flexray、MOST等。
应用层
应用层由相互连接的软件组件组成。软件组件是一个可重复使用的自足的工件,它实现了一个具有给定属性的功能。这些软件组件封装了应用程序的部分,并通过称为VFB("虚拟功能总线")的硬件独立总线进行通信。如果软件组件被绑定到不同的ECU上,那么它们可以通过各自的RTE和基本软件层进行通信。在这种情况下,RTE在专用ECU上实现VFB。"基础软件 "为应用开发者提供各种服务功能。
虚拟功能总线:虚拟功能总线是对AUTOSAR软件组件的整车互连的抽象。不同软件组件之间以及软件组件与其环境(如硬件驱动、操作系统、服务等)之间的通信可以独立于任何底层硬件(如通信系统)来指定。VFB的功能是由通信模式提供的。
RTE (RUNTIME ENVIRONMENT)
- AUTOSAR 软件组件之间的所有交互都通过 AUTOSAR 运行时环境进行。AUTOSAR 接口规范保证了连接性。
- AUTOSAR 运行时环境 (RTE) 充当系统级通信中心,用于ECU之间和ECU内部的信息交换。
- RTE 是特定 ECU 的虚拟功能总线的运行时表示。- RTE 为 AUTOSAR 软件组件提供了一个通信抽象,为 ECU 间(使用 CAN、LIN、Flexray、MOST 等)或 ECU 内的通信提供相同的接口和服务。
- 由于软件组件的通信要求依赖于应用,因此需要对RTE进行定制。
- RTE应支持软件组件的多个实例。
基本软件
- AUTOSAR 软件组件不允许直接访问基本软件。
- 基本软件是标准化的软件层,它为 SW 组件提供服务。它不履行任何功能工作,位于 AUTOSAR 运行时环境之下。它包含标准化组件和 ECU 特定组件。
- 标准化组件包括以下内容。
➤服务,包括诊断协议;NVRAM、闪存和存储器管理。
通信 通信框架(如 CAN、LIN、FlexRay...)、I/O 管理和网络管理。
- ECU 的特定组件包括以下内容。
➤操作系统
➤微控制器抽象
➤ 复杂的设备驱动程序
SW组件。一个可重复使用的、自足的、实现给定属性功能的人工制品。一个组件有明确定义的端口,通过这些端口,组件可以与其他组件交互。
端口(Port):一个端口总是只属于一个组件,代表一个点。一个端口总是只属于一个组件,代表了一个组件和其他组件之间的交互点。为了定义一个组件的端口上提供的服务或数据或需要的服务或数据,引入了AUTOSAR接口概念。
接口。AUTOSAR接口可以是客户端-服务器或发送者-接收者类型。
- 客户端-服务器接口,定义了一组可以调用的操作。
- 发送方-接收方接口,用于面向数据的通信。
一个端口可以是
- PPort(提供接口)
- RPort(必备接口)
当PPort提供接口时,该端口所属的组件
- 提供了客户端-服务器接口中定义的操作的实现。
- 生成面向数据的发送方-接收方接口中描述的数据。
当一个组件的RPort需要AUTOSAR接口时,该组件可以通过以下方式来实现
- 当接口是客户机-服务器时,调用操作。
- 读取发送者-接收者中描述的数据元素。
接口。
AUTOSAR通信模式
基本的沟通模式
- 客户端-服务器
- 发送方-接收方
接口说明
- 哪些信息是发信人收信人通信传输的
- 哪些服务的参数可以通过客户机与服务器的通信调用。
接口的形式描述在软件组件模板中,还包括可以使用的数据类型和接口兼容性。
基本通信模式的详细行为由属性来指定。通过这些属性,例如数据队列的长度、接收者的行为(阻塞、非阻塞等)和发送者的行为(循环发送等)可以被定义。
客户端与服务器的通信:
服务器是一个提供者,客户端是一个服务的用户。
客户端发起通信,请求服务器执行一项服务,必要时传送一个参数集。
服务器等待来自客户端的通信请求,执行所请求的服务,并对客户端的请求发出响应。
启动方向用于分类AUTOSAR软件组件是客户端还是服务器。根据软件实现的情况,一个组件既可以是客户端,也可以是服务器。
在服务请求被发起后,直到收到服务器的响应之前,客户端可以是
- 受阻(同步通信)--非受阻(异步通信)。
发送方-接收方通信 :
信息的异步分配模型,其中发送方将信息分配给一个或几个接收方。
发送方不被阻塞(异步通信),既不期望也不从接收方得到响应(数据或控制流),发送方只是提供信息,接收方自主决定何时和如何使用信息。
分发信息是通信基础设施的责任。
发送方不知道接收方的身份或数量。
图中描述了AUTOSAR架构与实施实例