Adaptive AUTOSAR 学习笔记 1 - 概述、背景、AP CP 对比区别
缩写
- AP: AUTOSAR Adaptive Platform
- CP: AUTOSAR Classic Platform
- AA: Adaptive Application
- ARA: AUTOSAR Runtime for Adaptive Applications
- FC: Functional Clusters
背景
传统 CP 强实时性,能很好满足传统 ECU 需求,但智能化、网联化带来的网络延迟、干扰等因素无法满足强实时性。需要满足非实时需求的平台,所以有了AP。CP、AP 将在一段时间内共存,AP 不是为了取代 CP。
和 CP 对比
CP | AP | |
---|---|---|
开发语言 | C | C++ 14 & STL |
实时性 | 硬实时 us 级 | 软实时 ms 级 |
性能/算力 | 相对较弱,资源占用低 | 相对较强,资源占用高;大数据并行处理,高性能运算 |
应用场景 | 传统 ECU | 自动驾驶 ADAS、智能座舱、车联网 |
主要通信方式 | 针对基于信号的通信(CAN、LIN)优化 | 基于以太网,面向服务通信 SOA,SOME/IP |
安全等级 | ASIL D | ASIL B (Vector up to ASIL D) |
操作系统 | OSEK | POSIX PSE51, 类 Unix 系统: QNX, Linux, PikeOS... |
代码执行 | 直接从 ROM 执行代码 | 应用从 NvM 载入 RAM 运行 |
地址空间 | 所有应用共享同一地址空间(MPU 提供安全支持) | 每个应用由独立的(虚拟)地址空间(需要 MMU 支持) |
任务调度 | 固定的任务配置 | 支持多种(动态)调度策略 |
运行环境 | RTE:Runtime Environment | ARA:AUTOSAR Runtime for Adaptive Applications |
功能 | 固定,所有应用编译链接为一个整体(一个 HEX 文件) | 应用作为独立的可执行文件,独立编译、上传(部署);可灵活在线升级,应用可安装卸载 |
whole stack compiled and linked in one piece | Services as POSIX process, separately installable | |
模块 | 完全定义了所有模块 | 更少的模块,只有 API 定义 |
All modules completely specified | Less modules, only API specification | |
配置 | 编译前配置,编入二进制文件 | 运行时从 Manifests 文件动态载入配置 |
configuration compiled in | Configuration loaded from manifests |
AP 架构
AUTOSAR Adaptive Platform(AP) 是 ARA(AUTOSAR Runtime for Adaptive Applications)的实现。
AP 提供了两种接口:Service 和 API,为 Adaptive Application 提供了运行时环境 ARA。
- API/Foundation(直接调用 API)
- Execution Management (ara::exec)
- Communication Management (ara::com)
- Diagnostics (ara::diag,从 R19-11 开始,从 Service 挪到 API/Foundation)
- Persistency (ara::per)
- Platform Health Management (ara::phm)
- Log & Trace (ara::log)
- Service(通过
ara::com
进程间通信)- Update & Conf Management (ara::ucm)
- State Management (ara::sm)
- Network Management (ara::nm)
更多关于 Adaptive AUTOSAR 文章
本文作者:Zijian/TENG(微信公众号:好记性如烂笔头),转载请注明原文链接:https://www.cnblogs.com/tengzijian/p/14966811.html