官网:https://www.autosar.org/standards
https://blog.csdn.net/qingchengi/article/details/141672248 (非常详细)
AUTOSAR Classic Platform(经典平台)
专为深度嵌入式实时控制系统设计的标准化软件架构,主要面向具有硬实时、高功能安全等级(最高ASIL D)要求的传统ECU,如发动机控制、制动系统等。
其核心设计思想是通过分层架构将应用软件与底层硬件完全隔离,从而实现软件的可移植性和复用性。以下从架构、技术特征及与Adaptive平台的区别三个维度进行解析:
🧩 核心架构:三层分离
====================================================================
| 应用软件层 (Application Layer) |
| ============================================================== |
| | 软件组件 | 软件组件 | 软件组件 | 软件组件 | |
| | (SWC 1) | (SWC 2) | (SWC 3) | (SWC 4) | |
| | 车窗控制 | 门锁控制 | 灯光控制 | 雨刮控制 | |
| ============================================================== |
| 通过标准化的AUTOSAR接口进行通信 |
====================================================================
|
↓
====================================================================
| 运行时环境层 (Runtime Environment) |
| ============================================================== |
| | 虚拟功能总线(VFB)的实现 |
| | - 软件组件之间的通信路由 |
| | - 软件组件与基础软件的通信路由 |
| | - 数据一致性保护 |
| | - 可运行实体的调度 |
| ============================================================== |
====================================================================
|
↓
====================================================================
| 基础软件层 (Basic Software Layer) |
| ============================================================== |
| | 服务层 (Services Layer) | |
| | ---------------------------------------------------------- | |
| | | 系统服务 | 存储服务 | 通信服务 | 诊断服务 | | | |
| | | (OS) | (NvM) | (CAN/LIN) | (UDS) | | | |
| | ---------------------------------------------------------- | |
| | ↓ | |
| | ---------------------------------------------------------- | |
| | | ECU抽象层 (ECU Abstraction Layer) | | |
| | | ------------------------------------------------------ | | |
| | | | I/O硬件抽象 | 通信硬件抽象 | 存储硬件抽象 | | | |
| | | | (数字/模拟) | (CAN/LIN接口)| (EEPROM/Flash抽象)| | | |
| | | ------------------------------------------------------ | | |
| | ---------------------------------------------------------- | |
| | ↓ | |
| | ---------------------------------------------------------- | |
| | | 微控制器抽象层 (MCAL) | | |
| | | ------------------------------------------------------ | | |
| | | | GPIO驱动 | CAN驱动 | SPI驱动 | ADC驱动 | Flash驱动 | | | |
| | | ------------------------------------------------------ | | |
| | ---------------------------------------------------------- | |
| ============================================================== |
====================================================================
|
↓
====================================================================
| 硬件层 (Hardware) |
| ============================================================== |
| | 微控制器(MCU) | 传感器 | 执行器 | 通信收发器 | |
| | (如Infineon, | (霍尔、温度)| (电机、继电器)| (CAN/LIN PHY) | |
| | NXP, Renesas)| | | | |
| ============================================================== |
====================================================================
这个分层架构的核心思想是 "软硬件解耦" ,具体各层的职责与我们之前讨论的ZCU软件分层高度一致:
- 应用软件层 (Application Layer):这是实现具体车辆功能的层,由多个独立的软件组件(SWC)构成,例如车窗控制、门锁控制等 。这些SWC与硬件无关,可以通过标准化端口进行通信 。
- 运行时环境层 (Runtime Environment, RTE):它是连接应用层和基础软件层的"逻辑总线" 。RTE为SWC之间的通信以及SWC对BSW的访问提供了标准化的接口,使得上层应用无需关心底层硬件的具体细节 。
- 基础软件层 (Basic Software, BSW):它进一步细分为三个子层,为应用提供基础服务 :
- 服务层 (Services Layer):提供系统级服务,如操作系统(OS)、非易失性存储管理(NvM)、通信协议栈(如CAN, LIN)、诊断服务(UDS)和网络管理等 。
- ECU抽象层 (ECU Abstraction Layer):它使上层软件与ECU的硬件布局相隔离。例如,它统一了不同类型传感器或执行器的接口,无论它们连接在MCU的哪个引脚上 。
- 微控制器抽象层 (Microcontroller Abstraction Layer, MCAL):这是BSW中唯一直接操作MCU寄存器的层,包含了所有MCU内部外设的驱动,如GPIO、SPI、ADC、CAN等的驱动 。通常由芯片厂商提供。
-
🔄 与Adaptive Platform(AP)的核心对比
当前E/E架构下,Classic平台与Adaptive平台是互补共存而非替代关系(如智驾域控用AP,执行器用CP):
| 对比维度 | Classic Platform (CP) | Adaptive Platform (AP) |
|---|---|---|
| 典型应用 | ABS、安全气囊、车身控制器 | 自动驾驶域控制器、车机、OTA主节点 |
| 实时性 | 硬实时(微秒级响应) | 软实时(毫秒级响应) |
| 编程语言 | C | C++ |
| 操作系统 | AUTOSAR OS(基于OSEK) | POSIX(如Linux、QNX) |
| 通信 | 信号导向(CAN/LIN) | 服务导向(SOME/IP,以太网) |
| 软件更新 | 不可变(需全镜像替换) | 动态部署、增量更新 |
0 条评论