汽车基础软件AutoSAR自学攻略(三)-AutoSAR CP分层架构(2)

汽车基础软件AutoSAR自学攻略(三)-AutoSAR CP分层架构(2)

下面我们继续来介绍AutoSAR CP分层架构,下面的文字和图来自AutoSAR官网目前最新的标准R24-11的分层架构手册。该手册详细讲解了AutoSAR分层架构的设计,下面让我们来一起学习一下。

Introduction介绍
目的及投入

本文档的目的

分层软件架构描述了 AUTOSAR 的软件架构:

➢ 它以自上而下的方式描述了 AUTOSAR 软件的层次结构,并且

➢ 将基础软件模块映射到软件层,并且

➢ 展示了它们之间的关系。

这份文件侧重于概念分层软件架构的静态视图:

➢ 它没有指定具有详细静态和动态接口描述的结构化软件架构(设计)

​ ◼ 这些信息包含在基本软件模块自身的规范中。

Scope and Extensibility

AUTOSAR 的应用范围

AUTOSAR 专门用于汽车电子控制单元(ECU)。此类 ECU 具有以下特性:

➢ 与硬件(传感器和执行器)的强交互,

➢ 连接到诸如 CAN、LIN、FlexRay 或以太网等车辆网络,

➢ 计算能力和内存资源有限(与企业解决方案相比)的微控制器(通常为 16 位或 32 位),

➢ 实时系统,以及

➢ 从内部或外部闪存执行程序。

注意:在 AUTOSAR 的概念中,ECU 指的是一个微控制器加上外围设备以及相应的软件/配置。机械设计不在 AUTOSAR 的范围内。这意味着如果在一个外壳中布置了不止一个微控制器,那么每个微控制器都需要其自身的 AUTOSAR-ECU 实例描述。

AUTOSAR 可扩展性

AUTOSAR 软件架构是一种通用方法:

➢ 标准模块的功能可以扩展,同时仍保持合规,

◼ 但它们的配置必须在自动基本软件配置过程中予以考虑!

➢ 非标准模块可以作为复杂驱动程序集成到基于 AUTOSAR 的系统中,

➢ 不能添加更多层。

Top view

AUTOSAR 架构在最高抽象级别上区分了三个软件层:应用程序、运行时环境和在微控制器上运行的基础软件。

Coarse view

AUTOSAR 基础软件在以下层中进一步划分:Services 服务、ECU Abstraction ECU 抽象、Microcontroller Abstraction 微控制器抽象和Complex Drivers 复杂驱动程序。

详细视图

基本软件层进一步细分为功能组。服务的示例包括系统服务、内存服务和通信服务。

Microcontroller Abstraction Layer 微控制器抽象

微控制器抽象层是基础软件的最低软件层。它包含内部驱动程序,这些内部驱动程序是能够直接访问微控制器(µC)和内部外设的软件模块。

任务: 使更高的软件层独立于微控制器(µC)

特性:

​ 实现:取决于微控制器

​ 上层接口:标准化且与微控制器无关

ECU Abstraction Layer ECU 抽象层

ECU 抽象层与微控制器抽象层的驱动程序相连接。它还包含外部设备的驱动程序。

它提供了一个 API,用于访问外设和设备,无论它们的位置(微控制器内部/外部)以及它们与微控制器的连接方式(端口引脚、接口类型)如何。

**任务:**使更高的软件层独立于 ECU 硬件布局

特性:

实现:微控制器(µC)独立,电子控制单元(ECU)硬件相关

上层接口:微控制器(µC)和电子控制单元(ECU)硬件独立

Complex Drivers Layer复杂驱动程序层

复杂驱动程序层从硬件延伸到 RTE 。

任务: 提供集成特殊用途功能的可能性,例如设备驱动程序:

➢ 不在 AUTOSAR 中指定的;

➢ 具有非常高的时间限制的;

➢ 用于迁移目的等。

特性:

实现:可能取决于应用程序、微控制器(µC)和电子控制单元(ECU)硬件

上层接口:可能取决于应用程序、微控制器(µC)和电子控制单元(ECU)硬件

Services Layer服务层

服务层是 BasicSoftware 的最高层,其与应用软件的相关性也适用:虽然对 I/O 信号的访问由 ECU 抽象层涵盖,但服务层提供:

➢ 操作系统功能

➢ 车辆网络通信和管理服务

➢ 内存服务(NVRAM 管理)

➢ 诊断服务(包括 UDS 通信、错误内存和故障处理)

➢ ECU 状态管理、模式管理

➢ 逻辑和时间程序流程监控(WdgManager)

任务: 为应用程序、RTE(实时环境)和基本软件模块提供基础服务。

特性:

实现:主要是微控制器(µC)和电子控制单元(ECU)硬件独立

上层接口:微控制器(µC)和电子控制单元(ECU)硬件独立

RTE Runtime Environment 实时环境

RTE 是为应用软件(AUTOSAR 软件组件和/或 AUTOSAR 传感器/执行器组件)提供通信服务的一层。在 RTE 之上,软件架构风格从"分层式"转变为"组件式"。AUTOSAR 软件组件通过 RTE 与其他组件(ECU 内部和/或外部)和/或服务进行通信。

任务: 使 AUTOSAR 软件组件独立于到特定 ECU 的映射。

特性:

实施:电子控制单元(ECU)和特定应用(针对每个 ECU 单独生成)

上层接口:完全独立于电子控制单元

服务类型介绍

基础软件可细分为以下几类服务:

输入/输出(I/O)

对传感器、执行器和 ECU 板载外设的标准化访问

内存

对内部/外部内存(非易失性内存)的标准化访问

加密

对包括内部/外部硬件加速器在内的加密原语的标准化访问

通信

对以下内容的标准化访问:车辆网络系统、ECU 板载通信系统和 ECU 内部软件

车外通信 ·

对以下内容的标准化访问:车对 X 通信、车内无线网络系统、ECU 车外通信系统

系统

提供可标准化的(操作系统、定时器、错误存储器)和 ECU 特定的(ECU 状态管理、看门狗管理器)服务和库函数

驱动(内部)

驱动程序包含控制和访问内部或外部设备的功能。

内部设备位于微控制器内部。内部设备的示例有:

➢ 内部 EEPROM

➢ 内部 CAN 控制器

➢ 内部 ADC

内部设备的驱动程序被称为内部驱动程序,并且位于微控制器抽象层中。

驱动(外部)

外部设备位于微控制器之外的 ECU 硬件上。外部设备的示例有:

➢ 外部 EEPROM

➢ 外部看门狗

➢ 外部闪存

外部设备的驱动程序称为外部驱动程序,位于 ECU 抽象层中。它通过微控制器抽象层的驱动程序访问外部设备。通过这种方式,AUTOSAR 也支持集成在系统基础芯片(SBC)中的组件,如收发器和看门狗。

➢ 示例:具有 SPI 接口的外部 EEPROM 的驱动程序通过 SPI 总线的处理程序/驱动程序来访问外部 EEPROM 。

异常: 用于内存映射外部设备(例如外部闪存)的驱动程序可能会直接访问微控制器。这些外部驱动程序位于微控制器抽象层,因为它们依赖于微控制器。

Interface接口

一个接口(接口模块)包含了对在架构上位于其下方的模块进行抽象的功能。例如,一个从特定设备的硬件实现中抽象出来的接口模块。它提供了一个通用的 API,以访问特定类型的设备,而不受该类型现有设备数量的影响,也不受不同设备硬件实现的影响。

该接口不会更改数据的内容。

通常,接口位于 ECU 抽象层。

示例:CAN 通信系统的接口提供了一个通用的 API,可独立于 ECU 内 CAN 控制器的数量以及硬件实现方式(片上、片外)来访问 CAN 通信网络。

Handler处理

处理程序是一种特定的接口,用于控制一个或多个客户端对一个或多个驱动程序的并发、多重和异步访问。即它执行缓冲、排队、仲裁、复用。

处理程序不会更改数据的内容。

处理程序的功能通常被并入驱动程序或接口中(例如 SPI 处理程序驱动程序、ADC 驱动程序)。

Manager管理

在纯处理程序功能不足以从多个客户端进行抽象的所有情况下,都需要一个管理器为多个客户端提供特定服务。

除了处理程序功能外,管理器还可以评估、更改或调整数据的内容。

通常,管理器位于服务层

示例:NVRAM 管理器管理对内部和/或外部存储设备(如闪存和 EEPROM 存储器)的并发访问。它还执行分布式和可靠的数据存储、数据检查、提供默认值等操作。

Introduction to Libraries库函数介绍

库是用于相关目的的函数集合。

库:

➢ 可由 BSW 模块(包括 RTE)、SW-C、库或集成代码调用

➢ 在相同保护环境中于调用者的上下文中运行

➢ 只能调用库

➢ 是可重入的

➢ 没有内部状态

➢ 不需要任何初始化

➢ 是同步的,即它们没有等待点

相关推荐
sinat_3607048218 分钟前
STM32 看门狗
stm32·单片机·嵌入式硬件
亿道电子Emdoor20 分钟前
【ARM】MDK如何生成指定大小的bin文件,并指定空区域的填充数据
arm开发·stm32·单片机
mftang26 分钟前
STM32 CAN过滤器配置和应用方法介绍
stm32·单片机·嵌入式硬件
楼台的春风2 小时前
【详细讲解在STM32的UART通信中使用DMA机制】
stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式·信息与通信
Chambor_mak3 小时前
stm32单片机个人学习笔记16(SPI通信协议)
stm32·单片机·学习
电子科技圈3 小时前
在低功耗MCU上实现人工智能和机器学习
人工智能·经验分享·科技·嵌入式硬件·mcu·物联网·机器学习
小白今天也很酷3 小时前
Python与MCU通信:串口数据采集及CSV/Excel存储方法
python·单片机·excel
daopuyun4 小时前
标准解读|汽车信息安全领域发布三项强制性国家标准,汽车测评领域新变革
信息安全·汽车
JSZNZZ4 小时前
汽车软件︱AUTO TECH China 2025 广州国际汽车软件与安全技术展览会:开启汽车科技新时代
科技·安全·汽车
海的预约4 小时前
51单片机-按键
单片机·嵌入式硬件·51单片机