AUTOSAR_TR_AdaptivePlatformReleaseOverriew_R2011
1 引言
1.1 本文档范围
本文档概述了 AUTOSAR 标准自适应平台版本 R20-11。
1.2 术语与许可
1.2.1 术语声明
AUTOSAR 已识别出以往常用术语中可能被视为压迫性或种族主义的用语,例如 master/slave、black/white list,或在其他语境(如性别、年龄)中具有有害含义的术语。AUTOSAR 目前正计划与所有工作组讨论,从 R21-11 版本开始替换这些术语。AUTOSAR 承诺在未来版本中提供不含这些术语的所有规范文档。然而,由于 AUTOSAR 必须继续其运作,并且现有数千页的规范需要同时审查和更新,完全替换这些术语可能需要几个版本的时间。
1.2.2 W3C XML schema 的使用
AUTOSAR XML Schema 需要 XML 命名空间定义文件 xml.xsd。
本版本中多次出现 “xml.xsd” 文件。对于所有出现的情况,均适用 W3C 许可,该许可可在 https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document 找到。
许可
通过获取和/或复制本作品,您(被许可人)同意您已阅读、理解并将遵守以下条款和条件。
允许复制、修改和分发本作品(无论是否修改),用于任何目的且免收版税,前提是您在本作品的所有副本或部分(包括修改)中包含以下内容:
完整的本通知文本,位于再分发或衍生作品的用户可见位置。任何现有的知识产权免责声明、通知或条款和条件。如果没有,则应包含 W3C 软件和文档简短通知。新代码或文档中的版权声明,说明任何变更或修改,例如:“本软件或文档包含从 [标题和 W3C 文档的 URI] 复制或衍生的材料。版权所有 © [年份] W3C® (MIT, ERCIM, Keio, Beihang)。”
===== 第 7 页 =====
1.3 AUTOSAR 标准
1.3.1 引言
AUTOSAR 通过其标准应对汽车软件开发中的广泛用例。这些用例有不同的要求,并导致不同的技术解决方案。
将其成果打包成不同的“标准”,便于用户访问 AUTOSAR 解决方案,并允许 AUTOSAR 根据市场需求进行扩展。
1.3.2 定义
AUTOSAR 标准是一组一致的 AUTOSAR 成果,它们在同一时间发布。AUTOSAR 成果可以是但不限于以下类型:
- 文本说明
- 文本规范
- 测试规范
- 源代码
- 其他形式化或半形式化的文本格式(例如 ARXML、UML 模型、XML Schema)
在发布时,AUTOSAR 确保依赖关系得到满足。
===== 第 8 页 =====
1.3.3 AUTOSAR 标准概述
AUTOSAR 提供以下标准:
| 标准 | 缩写 |
|---|---|
| 自适应平台 | AP |
| 经典平台 | CP |
| 基础 | FO |
1.3.3.1 自适应平台
自适应平台是 AUTOSAR 针对高性能计算 ECU 的解决方案,用于构建与安全相关的系统,应用于高度自动化及自动驾驶等用例。
1.3.3.2 经典平台
经典平台是 AUTOSAR 针对具有硬实时和安全约束的嵌入式系统的解决方案。
1.3.3.3 基础
基础标准的目的是增强 AUTOSAR 平台之间的互操作性。
基础包含 AP 和 CP 通用的通用工件,以确保:
- 经典平台与自适应平台之间的兼容性
- 非 AUTOSAR 平台与 AUTOSAR 平台之间的兼容性
1.3.4 标准之间的依赖关系
经典平台和自适应平台的每个版本都依赖于特定版本的基础。具体依赖关系记录在第 1.4.6 节中。
===== 第 9 页 =====
1.3.5 与其他标准的依赖关系
本版本的自适应平台依赖于 R20-11 版本的基础标准,该标准:
- 定义了自适应平台实现的协议
- 包含项目目标以及派生自适应平台特性的公共需求
- 包含同时适用于自适应平台和经典平台的公共规范部分
这些依赖关系在各自规范的需求追溯信息中进一步细化。
1.4 版本编号与生命周期
1.4.1 平台版本号
AUTOSAR 采用四位编号方案 Ryy-mm 来标识版本。标识符 “yy” 和 “mm” 表示发布的年份和月份,例如 R20-11 表示 2020 年 11 月的版本。
1.4.2 内部版本号
AUTOSAR 还为不同目的维护一个内部版本号(例如在经典平台的 BSW 模块中使用)。
内部版本号用于所有平台,并沿用经典平台的版本号。在自适应平台中这是新引入的。在基础中,这导致以前的编号模式(例如 R1.5.0)停止使用。
平台版本与对应内部版本号的映射列表见第 1.4.5 节。内部版本号采用三位编号方案 R
- 主要版本:有效和草案规范部分可以向后不兼容地更改。
- 次要版本:有效规范部分只能向后兼容地更改。草案规范部分可以向后不兼容地更改。
- 修订版本:不包含扩展,仅包含向后兼容的错误修复。
===== 第 10 页 =====
1.4.3 主要版本的发布生命周期
每个主要版本在其生命周期中经历四个连续阶段(基于内部版本编号方案示例):
- 开发:从生命周期开始到初始发布(例如 R4.0.1)
- 演进:在初始发布之后,包含零个、一个或多个次要版本和/或修订版(例如 R4.0.2, R4.1.1)
- 维护:不再向主要版本添加新内容,仅提供对现有内容的维护,包含零个、一个或多个修订版(例如 R3.2.2)
- 问题通知:不再有修订版,仅提供零个、一个或多个问题通知(即已知问题列表的更新),直到生命周期结束。
===== 第 11 页 =====
1.4.4 规范项与需求的生命周期状态
规范项的生命周期状态位于规范项 ID 之后,用花括号括起来。状态包括:
- {Valid}:表示相关实体是文档的有效部分。这是默认状态,如果没有为相关实体标注生命周期状态也适用。
- {Draft}:表示相关实体是新引入的,但仍为试验性。该信息已发布,但可能发生变更,不保证向后兼容。
- {Obsolete}:表示相关实体将在后续某个版本中被移除,恕不另行通知。
需求的生命周期状态位于属性 “type” 中。状态与规范项状态相同。
1.4.5 AUTOSAR schema 版本与对应内部 AUTOSAR 版本概览
| Schema 版本 | 平台版本 | 内部版本号 |
|---|---|---|
| AUTOSAR_00048 | R19-11 | R4.5.0 |
| AUTOSAR_00049 | R20-11 | R4.6.0 |
根据 AUTOSAR 的发布生命周期,版本 R20-11 是一个次要版本。
1.4.6 AUTOSAR schema 版本与对应有效 AUTOSAR 版本概览
AUTOSAR schema 对基础没有影响。基础的发布列在此处仅为完整性。
| Schema 版本 | 经典平台版本 | 自适应平台版本 | 基础版本 |
|---|---|---|---|
| AUTOSAR_00042 | R4.3.0 | R17-03 | R1.1.0 |
| AUTOSAR_00043 | R4.3.0 | R17-10 | R1.2.0 |
| AUTOSAR_00044 | R4.3.1 | R17-10 | R1.3.0 |
| AUTOSAR_00045 | R4.3.1 | R18-03 | R1.4.0 |
| AUTOSAR_00046 | R4.4.0 | R18-10 | R1.5.0 |
| AUTOSAR_00047 | R4.4.0 | R19-03 | R1.5.1 |
===== 第 12 页 =====
1.5 自适应平台介绍
AUTOSAR 自适应平台是针对基于微处理器的 ECU 的标准化平台,支持如高度自动化驾驶以及高速车内和车外通信等用例。
自适应平台在多个方面与经典平台的标准化方法不同:
- 通过软件实现并行验证规范
- 规范功能集群而非模块
1.5.1 发布策略
自适应平台已将其生命周期状态更改为 AUTOSAR 标准生命周期模型中的“演进”(如图 1.4.3 节所述)。自 R19-11 起,AUTOSAR 每年与经典平台和基础一起发布自适应平台。“演进”生命周期状态意味着自适应平台的用户对规范的某些部分享有向后兼容的保证。区分方式由第 1.4.4 节所述的需求和规范项的生命周期状态处理。
1.5.2 通过软件实现并行验证规范
自适应平台通过 AUTOSAR 内部实现(自适应平台演示器)进行部分验证。该演示器对所有合作伙伴可用,并提供更多细节以理解自适应平台的基本概念。自适应平台演示器是自适应平台规范的一个示例性实现。基于演示器的任何进一步使用(例如在量产开发中)将由各合作伙伴负责。法律约束详见开发协议中的相关段落。
对于当前版本,演示器软件实现仅经过非正式评审,没有严格的质量保证。AUTOSAR 正在显著提高质量保证,以确保项目所要求的质量标准。
演示器提供了到规范的追溯性,以记录验证方面。
===== 第 13 页 =====
此外,AUTOSAR 开发了系统测试规范和实现,以支持针对 AUTOSAR 需求测试演示器实现。这些测试也是发布的一部分。
1.5.3 规范深度
基于经典平台的开发历史,AUTOSAR 决定规范功能集群而非特定的软件架构,以便为实现者提供为标准特性寻找高效解决方案的选项。
1.6 章节内容
本文档结构如下:
- 第 1 章 介绍 AUTOSAR 的发布策略、自适应平台及其标准化方法。
- 第 2 章 概述自上一版自适应平台以来的变更。
===== 第 14 页 =====
- 第 3 章 包含构成版本 R20-11 的规范概览。本章根据 AUTOSAR 版本 R20-11 的集群进行组织。
- 第 4 章 包含已知技术缺陷的备注。
- 第 5 章 包含所有已发布规范的详细发布历史。
===== 第 15 页 =====
2 变更总结
本章概述自上一版本 R19-11 以来所实现的变更。
2.1 版本 R20-11
在 R20-11 版本中引入了若干影响自适应平台的概念,从而为平台增加了功能。这些概念例如与安全相关(IAM 集成、Crypto API、SCREIAM)或与通信相关(10BASE-T1S、ara 通信组)。
此外,一些概念针对经典平台和自适应平台,加强了两个平台之间的交互。这些概念涉及安全(入侵检测系统管理器)以及开发方法和机制(统一计时与追踪方法)。
2.1.1 概念
2.1.1.1 引入的概念
以下 2.1.1.1.1 - 2.1.1.1.10 节中的概念已被引入。
2.1.1.1.1 车辆网络状态管理
该概念扩展了现有的基于静态路由的 PNC 协调算法,增加动态学习额外路由的可能性。此学习作为 PNC 算法中的一个特殊阶段实现,可由应用程序或诊断触发。
2.1.1.1.2 IAM 集成
AUTOSAR AP 的身份与访问管理通过概念“IAM 集成”应用于功能集群。对于每个实现受访问控制 API 的功能集群,通过概念部分引入相应的需求和建模元素。在 R20-11 版本中,引入了概念部分“平台健康管理”。
已详细阐述并规范了从平台健康管理领域攻击场景分析中推导出的需求。未来的版本将引入更多的概念部分。
===== 第 16 页 =====
2.1.1.1.3 Crypto API
“Crypto API”概念描述了自适应功能集群加密(FC Crypto)及其 API(CryptoAPI)的功能和配置,该 API 是 AUTOSAR 自适应平台基础的一部分。此概念的目标是标准化一个软件 API,列出加密服务并为 AUTOSAR 应用程序提供接口。该概念提供了一种解决方案,允许 OEM 处理加密和/或签名数据,并验证 ECU、通信伙伴或服务。因此,FC Crypto 为应用程序和其他自适应 AUTOSAR 功能集群提供了一个标准化接口,提供加密及相关计算的操作。这些操作包括加密操作、密钥管理和证书处理。标准化接口由 CryptoAPI 暴露。
2.1.1.1.4 RS Safety
“RS Safety”概念旨在为 AUTOSAR 自适应平台在需求规范(RS)文档中提供安全需求:RS Safety。以这种形式提供安全需求允许以通用方式从 RS Main 推导和细化安全需求:作为功能安全需求(FSR),并针对平台和各功能集群作为技术安全需求(TSR)。然后可以从功能集群的需求规范追溯到 RS Safety 中的 TSR。
2.1.1.1.5 10BASE-T1S
该概念引入了由 IEEE802.3cg 规定的以太网 10BASE-T1S 支持,并启用以太网网络中的总线拓扑。这种位于 OSI 模型第 1 层和第 2 层的新扩展将同时得到经典平台和自适应平台的支持。
2.1.1.1.6 AD 传感器接口
该概念旨在提供作为自适应平台服务的、定义良好的传感器服务接口,符合 ISO 23150 “道路车辆 — 传感器与自动驾驶功能数据融合单元之间的通信 — 逻辑接口”。涉及的传感器包括雷达、激光雷达、摄像头和超声波传感器。
2.1.1.1.7 入侵检测系统管理器
概念“入侵检测系统管理器”规范了一个基于 AUTOSAR 的入侵检测系统(IDS)的框架。这包括 BSW 组件“入侵检测系统管理器(IdsM)”和“自适应入侵检测系统管理器(Adaptive IdsM)”。
===== 第 17 页 =====
此外,还规范了基本软件模块的扩展,以便将安全事件报告给 IdsM。发布了一个用于通过车辆网络传输合格安全事件的协议规范。概念“入侵检测系统管理器”指定的安全提取模板允许在系统级别对 IDS 的属性进行建模。
2.1.1.1.8 确定性同步
该概念扩展了自适应平台上使用确定性客户端 API 进行冗余执行的同步行为。它允许多个冗余进程以同步周期运行,这也使得能够将冗余执行与额外的软件锁步功能集成。
2.1.1.1.9 远程 ECU 身份与访问管理的静态配置
该概念限制了运行 AUTOSAR 自适应平台且被攻破的通信节点的影响范围。目标是防止获得 ECU 控制权的攻击者超出 ECU 的预期功能。这一范式通过 SCREIAM 实现,即在接收方侧基于远程对等方的身份和预定义策略提供访问控制检查。
2.1.1.1.10 ara 通信组
该概念允许一组进程实现同步行为。通过使服务器能够向组内所有其他进程(客户端)广播消息并接收它们对此请求的应答来实现。消息和应答可以定义为模板,从中可以生成所有必要的方法和事件。
StateManagement 基于通信组模式定义了 PowerModes,以实现 StateManagement 与所有运行中的 Autosar 自适应应用程序之间的同步行为,从而实现更灵活的下电行为。
2.1.1.2 概念的影响
引入的概念对多个规范产生了影响。下表提供了详细概览。
请注意,某些规范使用特殊文本格式标记:
粗体的规范是完全源于特定概念的新的规范。
===== 第 18 页 =====
(第18页主要为表格的格式定义行,此处省略重复的排版示意)
===== 第 19 页 =====
| 概念名称 | 规范全名 | 标准 | 概念生命周期 |
|---|---|---|---|
| Crypto API | 自适应平台加密规范 | 自适应平台 | 草案 |
| Crypto API | 加密需求 | 自适应平台 | 草案 |
| 车辆网络状态管理 | 网络管理规范 | 自适应平台 | 草案 |
| 车辆网络状态管理 | UDP 网络管理规范 | 经典平台 | 草案 |
| 车辆网络状态管理 | 网络管理接口规范 | 经典平台 | 草案 |
| 车辆网络状态管理 | FlexRay 网络管理规范 | 经典平台 | 草案 |
| 车辆网络状态管理 | 通信管理器规范 | 经典平台 | 草案 |
| 车辆网络状态管理 | CAN 网络管理规范 | 经典平台 | 草案 |
| 车辆网络状态管理 | 系统模板 | 经典平台 | 草案 |
| 车辆网络状态管理 | 网络管理需求 | 经典平台 | 草案 |
| 车辆网络状态管理 | 模式管理需求 | 经典平台 | 草案 |
| 车辆网络状态管理 | AUTOSAR 网络管理协议规范 | 基础 | 草案 |
| 车辆网络状态管理 | AUTOSAR 网络管理需求 | 基础 | 草案 |
| AD 传感器接口 | 传感器接口规范 | 自适应平台 | 草案 |
| AD 传感器接口 | 自动驾驶接口需求 | 自适应平台 | 草案 |
| 远程 ECU 身份与访问管理的静态配置 | 清单规范 | 自适应平台 | 草案 |
| 远程 ECU 身份与访问管理的静态配置 | 通信管理规范 | 自适应平台 | 草案 |
| 远程 ECU 身份与访问管理的静态配置 | 通信管理需求 | 自适应平台 | 草案 |
| ara 通信组 | 通信管理需求 | 自适应平台 | 草案 |
| ara 通信组 | 通信管理规范 | 自适应平台 | 草案 |
| ara 通信组 | 清单规范 | 自适应平台 | 草案 |
| 入侵检测系统管理器 | 入侵检测系统协议规范 | 基础 | 部分验证 |
| 入侵检测系统管理器 | 入侵检测系统需求 | 基础 | 部分验证 |
| 入侵检测系统管理器 | 安全提取模板需求 | 基础 | 部分验证 |
===== 第 20 页 =====
| 概念名称 | 规范全名 | 标准 | 概念生命周期 |
|---|---|---|---|
| 入侵检测系统管理器 | 安全提取模板 | 基础 | 部分验证 |
| 入侵检测系统管理器 | 术语表 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 诊断提取模板需求 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | AUTOSAR 特性需求 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | Socket 适配器规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 分层软件架构 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 密钥管理器规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 安全板载通信规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 基本软件模块通用需求 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 基本软件模块通用规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | CAN 驱动规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | CAN 接口规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 诊断通信管理器规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 诊断事件管理器规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 以太网接口规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 入侵检测系统管理器规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | NVRAM 管理器规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | TCP/IP 协议栈规范 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 诊断提取模板 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 软件组件模板 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 基本软件模块列表 | 经典平台 | 部分验证 |
| 入侵检测系统管理器 | 清单规范需求 | 自适应平台 | 部分验证 |
| 入侵检测系统管理器 | 自适应平台入侵检测系统管理器规范 | 自适应平台 | 部分验证 |
| 入侵检测系统管理器 | 通信管理规范 | 自适应平台 | 部分验证 |
| 入侵检测系统管理器 | 自适应平台加密规范 | 自适应平台 | 部分验证 |
===== 第 21 页 =====
| 概念名称 | 规范全名 | 标准 | 概念生命周期 |
|---|---|---|---|
| IdSM(入侵检测系统管理器) | 清单规范 | 自适应平台 | 部分验证 |
2.1.1.3 已验证的概念
以下概念已被验证:
- Socket 网络绑定 for ARA::com
2.1.2 规范
2.1.2.1 新增规范
通过概念引入了以下新规范:
- 自适应平台入侵检测系统管理器规范 (UID 978, SWS)
- 自动驾驶接口需求 (UID 911, RS)
- 传感器接口规范 (UID 912)
除上述新增规范外,R20-11 还添加了以下文档:
- 自适应平台软件架构说明 (UID 982, EXP)
- 自适应平台软件架构决策说明 (UID 983, EXP)
- 自适应平台时序扩展规范 (UID 968, TPS)
2.1.2.2 迁移的规范
在本版本中,以下规范已从 AUTOSAR 自适应平台移动到 AUTOSAR 基础标准:
- 元模型 (UID 59, MMOD)
- 元模型生成的 XML Schema (UID 230, MMOD)
- AUTOSAR XML Schema 的补充材料 (UID 649, TR)
- 抽象平台规范 (UID 947, TPS)
===== 第 22 页 =====
自适应平台版本概览 AUTOSAR AP R20-11
2.1.2.3 淘汰的规范
以下规范在本版本中已设置为“淘汰”状态:
- 在关键和安全相关系统中使用 C++14 语言的指南 (UID 839, RS)
该规范将由 MISRA 在其未来版本中发布,但仍将被 AUTOSAR 使用。
2.1.2.4 移除的规范
以下规范在本版本中已设置为“移除”状态:
- 自适应平台通用规范 (UID 715, SWS)
2.1.2.5 重做的规范
以下规范在 R19-11 中发生了根本性变化:
- 无
2.1.2.6 移动的规范部分
以下规范部分在 R20-11 中已移至其他文档:
- “核心类型规范”(UID 903, SWS) 已重命名为“自适应核心规范”(UID 903, SWS)。
- “自适应平台通用规范 (UID 715, SWS)”的内容已整合到“自适应核心规范”(UID 903, SWS) 中。
2.1.3 发布文档
发布文档没有重大变化。
2.2 AUTOSAR 中的历史信息
下图显示了变更文档的位置。 变更文档将从 R20-11 开始对自适应平台可用。
22 / 38 文档 ID 782: AUTOSAR_TR_AdaptivePlatformReleaseOverview
===== 第 23 页 =====
===== 第 24 页 =====
3 规范概览
已发布的规范分为以下集群:
- 发布文档
- 通用
- 方法与清单
- 自适应基础
- 自适应服务
规范到这些集群的分配如下所示。
| 长名称 | 文件名 | 生命周期变更 |
|---|---|---|
| 发布文档 | ||
| 自适应平台版本概览 | AUTOSAR_TR_AdaptivePlatformReleaseOverview | |
| AUTOSAR 自适应平台规范哈希值 | AUTOSAR_TR_AdaptivePlatformSpecificationHashes | |
| 通用 | ||
| 在自适应平台上使用并行处理技术的设计指南 | AUTOSAR_EXP_ParallelProcessingGuidelines | |
| 自适应平台设计说明 | AUTOSAR_EXP_PlatformDesign | |
| 自适应平台软件架构决策说明 | AUTOSAR_EXP_SWArchitectureDecisions | 初始发布 |
| 自适应平台软件架构说明 | AUTOSAR_EXP_SWArchitecture | 初始发布 |
| 安全概览说明 | AUTOSAR_EXP_SafetyOverview | |
| 功能集群短名称 | AUTOSAR_TR_FunctionalClusterShortnames | |
| 自适应平台特定通用需求 | AUTOSAR_RS_General | |
| 在关键和安全相关系统中使用 C++14 语言的指南 | AUTOSAR_RS_CPP14Guidelines | 淘汰 |
| 使用自适应平台接口指南 | AUTOSAR_EXP_AdaptivePlatformInterfacesGuidelines | |
| 自适应平台系统测试 | AUTOSAR_TR_AdaptivePlatformSystemTests | |
| 方法与清单 | ||
| AUTOSAR 自适应平台 M1 模型蓝图集合 | AUTOSAR_MOD_AdaptivePlatformGeneralBlueprints | |
| 自适应平台方法 | AUTOSAR_TR_AdaptiveMethodology | |
| 清单规范需求 | AUTOSAR_RS_ManifestSpecification | |
| 清单规范 | AUTOSAR_TPS_ManifestSpecification | |
| 自适应平台平台类型规范 | AUTOSAR_SWS_AdaptivePlatformTypes |
===== 第 25 页 =====
| 长名称 | 文件名 | 生命周期变更 |
|---|---|---|
| 自适应平台时序扩展规范 | AUTOSAR_TPS_AdaptivePlatformTimingExtensions | 初始发布 |
| 自适应基础 | ||
| ara::com API 说明 | AUTOSAR_EXP_ARAComAPI | |
| IPsec 实现指南说明 | AUTOSAR_EXP_IPsecImplementationGuidelines | |
| 通信管理需求 | AUTOSAR_RS_CommunicationManagement | |
| 加密需求 | AUTOSAR_RS_Cryptography | |
| 执行管理需求 | AUTOSAR_RS_ExecutionManagement | |
| 身份与访问管理需求 | AUTOSAR_RS_IdentityAndAccessManagement | |
| 操作系统接口需求 | AUTOSAR_RS_OperatingSystemInterface | |
| 持久性需求 | AUTOSAR_RS_Persistency | |
| 自适应平台平台健康管理需求 | AUTOSAR_RS_PlatformHealthManagement | |
| 自适应平台安全管理需求 | AUTOSAR_RS_SecurityManagement | |
| 通信管理规范 | AUTOSAR_SWS_CommunicationManagement | |
| 自适应平台加密规范 | AUTOSAR_SWS_Cryptography | |
| 诊断规范 | AUTOSAR_SWS_Diagnostics | |
| 执行管理规范 | AUTOSAR_SWS_ExecutionManagement | |
| 身份与访问管理规范 | AUTOSAR_SWS_IdentityAndAccessManagement | |
| 自适应平台入侵检测系统管理器规范 | AUTOSAR_SWS_AdaptiveIntrusionDetectionSystemManager | 初始发布 |
| 日志与追踪规范 | AUTOSAR_SWS_LogAndTrace | |
| 操作系统接口规范 | AUTOSAR_SWS_OperatingSystemInterface | |
| 持久性规范 | AUTOSAR_SWS_Persistency | |
| 自适应平台平台健康管理规范 | AUTOSAR_SWS_PlatformHealthManagement | |
| RESTful 通信规范 | AUTOSAR_SWS_REST | |
| 自适应核心规范 | AUTOSAR_SWS_AdaptiveCore | |
| 自适应平台时间同步规范 | AUTOSAR_SWS_TimeSynchronization | |
| 自适应服务 | ||
| 传感器接口说明 | AUTOSAR_EXP_SensorInterfaces | |
| 状态管理需求 | AUTOSAR_RS_StateManagement | |
| 自动驾驶接口需求 | AUTOSAR_RS_AutomatedDrivingInterfaces | 初始发布 |
| 更新与配置管理需求 | AUTOSAR_RS_UpdateAndConfigManagement |
===== 第 26 页 =====
| 长名称 | 文件名 | 生命周期变更 |
|---|---|---|
| 网络管理规范 | AUTOSAR_SWS_NetworkManagement | |
| 传感器接口规范 | AUTOSAR_SWS_SensorInterfaces | 初始发布 |
| 状态管理规范 | AUTOSAR_SWS_StateManagement | |
| 更新与配置管理规范 | AUTOSAR_SWS_UpdateAndConfigManagement |
表 3.1:规范概览
===== 第 27 页 =====
4 已知技术缺陷备注
每个规范的技术缺陷(如果适用)在其各自规范目录后的“已知限制”章节中说明。
以下技术缺陷需要提及,点击章节引用将带您到相应文档:
表 4.1:已知技术缺陷概览
| 文档 UID | 长名称 | 文档类型 | 章节引用 |
|---|---|---|---|
| 717 | 通信管理规范 | SWS | 4.1 |
| 721 | 执行管理规范 | SWS | 4.2 |
| 723 | 诊断规范 | SWS | 4.3 |
| 851 | 自适应平台平台健康管理规范 | SWS | 4.4 |
| 858 | 持久性规范 | SWS | 4.5 |
| 883 | 自适应平台加密规范 | SWS | 4.6 |
| 888 | 更新与配置管理规范 | SWS | 4.7 |
| 898 | 网络管理规范 | SWS | 4.8 |
| 900 | 身份与访问管理规范 | SWS | 4.9 |
| 903 | 自适应核心规范 | SWS | 4.10 |
4.1 通信管理规范 (UID 717, SWS)
本文档的当前版本缺少一些功能,这些功能未在 SWS 通信管理文档中标准化和规定,但在 ara::com API 说明 [1] 中描述并在演示器代码中实现:
本地缓冲区溢出
目前未规定如果应用程序访问数据的速度慢于通过网络接收数据的速度,本地缓冲区满时会发生什么。
关于 E2E 保护和可检测故障模式的一般限制在 [2] 中描述。此外,关于 E2E 保护的平台特定限制在章节“E2EForMethodsLimitations”中描述。
以下关于 [3] 和 [4] 中描述的标签-长度-值序列化原则引入的可选性的限制适用:
可选方法参数
规范不支持可选方法参数的存在。
===== 第 28 页 =====
4.2 执行管理规范 (UID 721, SWS)
本文档中提到的以下功能在本版本中未完全规定:
- 第 7.7 节“资源限制”和第 7.8 节“容错”的 [5]——这些章节在本版本中已扩展但仍不完整。特别是内容将在下一版本中扩展更多属性和形式化需求。
- 第 7.6.4 节描述了冗余确定性执行所需的同步要求,这些要求在 7.6.2 中未详细说明。使用除 ara::com 以外的通信 API 的接口不在规范范围内。我们专注于当前版本的单个域同步,即冗余确定性执行在同一操作系统或 ECU 内。确定性同步的模型和配置以及与软件锁步交互的详细信息将在后续版本中规定。
- 第 6.1 节详细列出了来自执行管理需求规范 [6] 但未在本规范中详细阐述的需求。这些需求在本文档中的存在确保了需求追溯的完整性,同时也表明了执行管理在 AUTOSAR 自适应平台未来版本中的演进方向。
上述功能可能发生修改,并将在本文档的未来版本中考虑纳入。
4.3 诊断规范 (UID 723, SWS)
- 仅支持 [7] 中的调度器类型 1。
- 服务 0x2A 不支持子功能 ‘defineByMemoryAddress’。
- 服务 0x2C 不支持。
- OBD ISO 15031 和 WWH OBD ISO 27145 不被 DM 支持。
- 软件集群/诊断服务器实例受 DM 接口支持但未详细规定。
- DoIP 边缘节点不被 DM 支持。
- 以下 UDS 服务未由 DM 实现:
- 0x23 ReadMemoryByAddress
- 0x24 ReadScalingDataByIdentifier
- 0x2F InputOutputControlByIdentifier
- 0x38 RequestFileTransfer
- 0x3D WriteMemoryByAddress
===== 第 29 页 =====
- 0x83 AccessTimingParameter
- 0x84 SecuredDataTransmission
- 0x87 LinkControl
除非明确说明,否则 UDS 服务的子功能根据 ISO 14229-1 [8] 实现。
UDS 镜像事件内存不被 DM 支持。因此,DM 不支持以下 UDS 服务:
- 0x19 子功能 0x0F (reportMirrorMemoryDTCByStatusMask)
- 0x19 子功能 0x10 (reportMirrorMemoryDTCExtDataRecordByDTCNumber)
- 0x19 子功能 0x11 (reportNumberOfMirrorMemoryDTCByStatusMask)
OBD/WWH OBD 不被 DM 支持。因此,DM 不支持以下 UDS 服务:
- 0x19 子功能 0x05 (reportDTCStoredDataByRecordNumber)
- 0x19 子功能 0x12 (reportNumberOfEmissionsOBDDTCByStatusMask)
- 0x19 子功能 0x13 (reportEmissionsOBDDTCByStatusMask)
- 0x19 子功能 0xA2 (reportWWHOBDDTCByMaskRecord)
- 0x19 子功能 0x55 (reportWWHOBDDTCWithPermanentStatus)
以下通用的 ReadDTCInformation UDS 服务也不支持:
- 0x19 子功能 0x03 (reportDTCSnapshotIdentification)
- 0x19 子功能 0x08 (reportDTCBySeverityMaskRecord)
- 0x19 子功能 0x09 (reportSeverityInformationOfDTC)
- 0x19 子功能 0x0B (reportFirstTestFailedDTC)
- 0x19 子功能 0x0C (reportFirstConfirmedDTC)
- 0x19 子功能 0x0D (reportMostRecentTestFailedDTC)
- 0x19 子功能 0x0E (reportMostRecentConfirmedDTC)
- 0x19 子功能 0x15 (reportDTCWithPermanentStatus)
- 0x19 子功能 0x16 (reportDTCExtDataRecordByRecordNumber)
事件内存:不支持事件/DTC 的运行时变体处理。
===== 第 30 页 =====
事件内存:组合事件的细节未规定。
更改安全级别的尝试失败次数的持久存储:每次尝试计数器递增后,应持久化以在意外或有意复位后幸存。这里选择持久存储在 Adaptive Autosar 中是强制性的。
4.4 自适应平台平台健康管理规范 (UID 851, SWS)
- 本版本不支持级联(即,将监督状态、检查点或健康通道信息转发给 PHM 外部实体或另一个 PHM 实例)。
- 本版本不完全支持与监督模式相关的平台健康管理配置。
- 通知监督实体关于监督状态的 API 仅以轮询模式提供。本版本中无使用通知模式的 API。
- 本版本未规定与诊断管理器的接口。
4.5 持久性规范 (UID 858, SWS)
尽管键值存储和文件存储可以配置为只写,但当前 API 始终允许读访问。即使使用 ara::per::FileStorage::OpenFileWriteOnly 打开文件,读访问也是可能的。
4.6 自适应平台加密规范 (UID 883, SWS)
当前版本的 Crypto API 规范中仍然缺少以下功能域和描述:
异步接口
目前仅有同步 API 规范,如果需要异步行为,应在消费者应用程序级别实现。可以通过使用专用执行线程处理长时间操作来实现。
完整的 X.509 证书支持,包括 OCSP 和 OCSP stapling
CryptoAPI 尚未提供客户端(ECU)端 X.509 证书管理的完整规范。当前版本的 Crypto API 仅指定了负责基本 X.509 功能以及相关加密算法使用的最小接口子集。当前 API 支持提取和解析 X.509 证书和证书请求的基本属性。计划在下一版本中通过额外的接口扩展 API 规范以完全支持 X.509 扩展。
注意:当前 X.509 Provider API 的规范是初步的,可能会进行扩展和更改。
===== 第 31 页 =====
证书对象格式
当前版本的 CryptoAPI 对众所周知的加密格式编码/解码的支持最小:仅要求 CryptoAPI 的任何实现支持 X.509 证书和证书签名请求的 DER 和 PEM 编码。对于其他加密对象,实现可以仅支持“原始”格式。计划在下一版本中通过统一的接口扩展 CryptoAPI,以将复杂对象编码/解码为标准格式。
4.7 更新与配置管理规范 (UID 888, SWS)
- UCM 不负责启动更新过程。UCM 实现一个服务接口来完成此操作。该服务接口的用户有责任在执行按需软件更新程序之前验证车辆处于可更新状态。与车内其他 AUTOSAR 自适应平台或 AUTOSAR 经典平台通信也由用户负责。
- UCM 接收本地可用的软件包进行处理。软件包通常从 OEM 后端下载。软件包的下载必须由另一个应用程序完成,即 UCM 不管理到 OEM 后端的连接。在触发处理之前,必须使用提供的 ara::com 接口将软件包传输到 UCM。
- UCM 更新过程设计用于覆盖单 AUTOSAR 自适应平台的用例。UCM 可以更新自适应应用程序、AUTOSAR 自适应平台本身(包括所有功能集群)以及底层操作系统。
- UCM 不负责对所提供接口实施身份验证和访问控制。本文档目前未提供任何机密性保护机制以及针对拒绝服务攻击的措施。假设平台保留 UCM 与其用户之间交换参数的完整性。
- UCM 不支持对不支持 ARA::COM 或具有对齐诊断闪存序列支持的 UDS 的 ECU 进行更新。
===== 第 32 页 =====
4.8 网络管理规范 (UID 898, SWS)
- 自适应网络管理目前仅支持 UdpNM。
- 自适应网络管理不允许节点检测(重复消息状态),仅处理传入请求。
- 自适应网络管理不能配置为网络主协调器。
- 自适应网络管理不支持使用 CBV 中的信息进行协调关闭。
- 自适应网络管理不支持被动模式和被动启动。被动启动意味着节点已启动(即进入正常模式),但网络已被另一个节点唤醒。
- 清单中没有第 7.3 节定义的将逻辑网络映射到位向量位置的建模部分。
- 用户数据的更新和访问已被移除,因为到应用程序的服务接口已被移除。状态管理将控制网络请求/释放,并且需要澄清用户数据更改/指示是通过状态管理还是直接由应用程序完成。
4.9 身份与访问管理规范 (UID 900, SWS)
- 详细 API 将在未来版本中添加。
- 目前仅限于 ara::com。
- 对于其他功能集群,未来版本计划在策略执行点上实现。
4.10 自适应核心规范 (UID 903, SWS)
- 某些数据类型(Array, Map, Optional, String, StringView, Variant)的规范提到了“支持构造”,但缺乏对此术语精确范围的界定。
- 某些数据类型(Map, Vector, String)的规范缺乏对内存分配行为的全面定义;目前仅描述为“实现定义”。
- “FunctionalSpecification”章节非正式地描述了一些行为,这些行为应以规范项的形式给出。
===== 第 33 页 =====
5 发布历史
5.1 版本 R20-11
| 名称 | 规范历史条目 |
|---|---|
| 自适应平台设计说明 | · 状态管理、更新与配置管理、加密和安全方面有中等数量变更 · 执行管理、诊断、持久性、身份与访问管理有少量变更 · 架构逻辑视图有少量变更 |
| 自适应平台方法 | · 编辑性变更(统一了术语 ECU 和 Machine 的使用) · 移除了过时的基于信号的服务接口 · 移除了过时的附录“清单文件中使用的类” |
| 清单规范需求 | · 添加了原始数据流部署的需求 |
| 清单规范 | · 重构了 Phm 的贡献 · 安全事件报告 · 支持加密操作 · 重构了诊断映射 · 小的修正/澄清/编辑性变更 |
| 自适应平台特定通用需求 | · 添加了更多关于特殊成员函数的设计指南 · 添加了 C++14 支持 |
| 通信管理需求 | · E2E 保护 - 事件和方法 - 到安全需求的可追溯性 · 服务唯一性:使用全限定服务 ID 提供服务 · 原始数据流需求设置为有效 · 通信组(草案) |
| 通信管理规范 | · 添加了 SecOC 行为、API 和新鲜度值管理到规范 · 为 ara::com API 标准化了 API 错误码 · 添加了唯一的 ErrorDomain 标识符 · 添加了命名构造函数方法 · 更新了对方法和事件的 E2E 支持 · 更新了原始数据流章节 · 向具有异步回调的 API 引入了可选的执行上下文参数 · 将 kCapabilityEnforcementError 更改为 kGrantEnforcementError · 将“条目类型”字段的魔数移动到 PRS_SOMEIPSERVICE Discovery · 编辑性变更 |
===== 第 34 页 =====
| 名称 | 规范历史条目 |
|---|---|
| 操作系统接口需求 | · 向上追溯至 RS_Safety[1] 文档 · 澄清了执行管理的描述 · 将时间触发执行移至 RS_ExecutionManagement[2] |
| 操作系统接口规范 | · 向上追溯更新 · 澄清了执行管理的描述 · 移除了对“不可恢复状态”的未定义提及 |
| 执行管理需求 | · 新增:RS_EM_00150 |
| 执行管理规范 | · 进一步细化状态管理 API 及语义 · 更新流程生命周期(终止报告可选) · 新增确定性同步支持 · EM-PHM 交互 |
| 诊断规范 | · 文档质量改进和错误修复 · 纳入了质量范围评审结果 · 来自概念 DoIPExtension 的已验证需求 · 引入 UDS 服务 2A 和 2C |
| 自适应平台版本概览 | · 发布生命周期状态:R20-11 处于演进阶段,R20-11 取代 R19-11 · 无变更,因为文档已设为淘汰 |
| 在关键和安全相关系统中使用 C++14 语言的指南 | · 添加实例说明符到实例标识符的转换 · 添加即发即忘方法 · 添加对 DDS 中字段的支持 · 添加服务版本控制 · 移除 ara::com 中的 ara::per 用法 · 添加对无效值的支持 · 使用新的 API 通过 SOME/IP 获取事件 |
| 功能集群通信管理的演示器设计 | · 更新了已知限制 · 小的编辑性变更 |
| 功能集群诊断的演示器设计 | · 无内容变更 |
| ara::com API 说明 | · 用正确的表述替换了术语“(非)受检异常” · 澄清了“实例说明符”的使用和传递 · 移除了对“AUTOSAR_RS_CPP14Guidelines”的引用 |
| 自适应平台平台健康管理规范 | · 将 PHM 的角色更改为通知状态管理的监视器,因此重做了逻辑和接口 · 为 PHM 集成身份与访问管理 · 将健康通道监督规范从基础移至自适应平台 · 重新引入了检查点和健康状态的枚举 |
===== 第 35 页 =====
| 名称 | 规范历史条目 |
|---|---|
| 自适应平台平台健康管理需求 | · 新增 RS_PHM_09255, RS_PHM_09257, RS_PHM_09240, RS_PHM_09241(从基础移入) · 移除了 RS_PHM_00110 · 需求追溯清理 |
| 日志与追踪规范 | · 在第 7.3 节日志消息中引入了非建模消息和建模消息 · 引入了 Logger::WithLevel() API,用于记录消息并将 LogLevel 作为 API 参数传递 · 重构和编辑性变更 |
| 持久性需求 | · 添加了对文件元数据的支持 · 添加了向上追溯到 RS Safety · 适配了公共文档结构 · 添加了需求历史 |
| 持久性规范 | · 替换了基于 POSIX 的文件访问 API,改进了错误处理和其他 API 的对称性 · 使用 Crypto API 完全支持加密和哈希冗余 · 向应用程序添加了关于安全相关问题的信息 · 改进了安装/更新和冗余 |
| 功能集群持久性的演示器设计 | · 引入了 ara::per::if::Initialize 和 ara::per::if::Deinitialize · 引入了处理 CppImplementationDataTypes 的机制 · 通过 ara::core::InstanceSpecifier 引入了存储位置标识 |
| 功能集群日志与追踪的演示器设计 | · 移除了 InitLogging() 并实现了 ara::core::Initialize 的使用 · 重构和编辑性变更 |
| 功能集群短名称 | · 将核心类型重命名为自适应核心 |
| 自适应平台平台类型规范 | · 编辑性变更 |
| RESTful 通信规范 | · 无功能性变更 |
| 自适应平台时间同步规范 | · TSYNC API 重新设计和需求更新 · 与 CP 和 RS 文档协调一致 · 文档适配新模板 · 术语澄清和清理 |
| 自适应平台安全管理需求 | · 重写了 PEE 需求 [RS_SEC_05019] · 添加了“约定”和“缩略语”章节 · 小的编辑性变更以符合 AUTOSAR RS 模板 · 修正了 [RS_SEC_05012] 中的拼写 |
| 自适应平台加密规范 | · 重写文档以与 AUTOSAR 标准对齐 · 根据 WG-SEC 反馈更新了 Crypto API |
===== 第 36 页 =====
| 名称 | 规范历史条目 |
|---|---|
| 在自适应平台上使用并行处理技术的设计指南 | · 无内容变更 |
| 更新与配置管理需求 | · 添加了到 RS SAFETY 文档的可追溯性 |
| 更新与配置管理规范 | · 针对 UCM Master 的经典平台更新规范 · 重构了 UCM Master API · 简化了 UCM Master 状态机 · 详细的升级活动历史信息 |
| 加密需求 | · 移除:[RS_CRYPTO_02406] · 更新:[RS_CRYPTO_02201] |
| 自适应平台系统测试 | · 为 CM、REST、EMO、DIAG、PER、IAM、UCM 和 CRYPTO 添加了测试用例 · 在测试用例中添加了指向相应测试配置的交叉引用链接 · 更新了 CRYPTO 的限制 · 移除了已属于 AUTOSAR 术语表的缩略词 |
| 功能集群更新与配置管理的演示器设计 | · 改进了状态机实现 · 部分实现了车辆包管理器 · 将 UCM 和 VPM 的共享代码迁移到库中 · 重做了文档结构 |
| 安全概览说明 | · 将功能和技术安全需求移至 RS_Safety · 编辑性变更 · 更正了拼写和布局 · 更新了缩写表 · 更新了 AUTOSAR 自适应平台中已识别的安全工件 |
| 网络管理规范 | · 若干质量改进 · 将 NetworkState 数据类型从 boot 更改为 NetworkStateType |
| 身份与访问管理需求 | · 能力重命名为意图 · 文档中反映了关于进程分离的架构变更 |
| 身份与访问管理规范 | · 在自适应应用程序中引入了策略执行 · 为平台健康管理添加了 IAM |
| 功能集群身份与访问管理的演示器设计 | · 重构了访问管理器并移除了能力 · 为演示目的引入了单独的授权 · 使用执行管理器来识别进程 |
===== 第 37 页 =====
| 名称 | 规范历史条目 |
|---|---|
| 自适应核心规范 | · 添加了关于“显式操作中止”的规范 · 添加了关于保留符号前缀的规范 · 添加了类 SteadyClock 的规范 · 添加了关于 ARA API 异步信号安全性的章节 · 用供应商定义的错误域扩展了错误域范围 · 添加了关于定义自己的错误域的规范 · 对 C++ 数据类型进行了各种扩展和修复 · 整合了 SWS_General 的内容 · 将文档重命名为“自适应核心” |
| 功能集群 RESTful 的演示器设计 | · 无内容变更 |
| 功能集群时间同步的演示器设计 | · 已知限制章节清理 |
| 状态管理规范 | · 更新了面向更新与配置管理的接口 · 更新了面向自适应诊断的接口 · 基于通信组引入了诊断复位 · 更新了面向平台健康管理的接口 · 将监督实体失败的错误反应移至状态管理 · 基于通信组引入了 PowerModes · 移除了 RequestState 和 ReleaseRequest 接口 |
| 状态管理需求 | · 无内容变更 |
| 自动驾驶接口需求 | · 初始发布 |
| 传感器接口规范 | · 初始发布 |
| 传感器接口说明 | · 更新了第 5.3 节中支持的可选元素 |
| 功能集群平台健康管理的演示器设计 | · 实现了 PHM 守护进程 · 引入了用于恢复和健康通道到 SM 的 API · 健康监控(即第 7 章)从 ASWS_HM 移至 SWS_PHM |
| 使用自适应平台接口指南 | · 章节名称从“核心类型”更改为“自适应核心”,章节内有一些小的变更 · 状态管理章节有中等程度变更 · 持久性章节有少量变更 |
| IPsec 实现指南说明 | · 无内容变更 · 将文档状态从“最终”更改为“已发布” |
| 自适应平台时序扩展规范 | · 初始发布 |
| 自适应平台入侵检测系统管理器规范 | · 初始发布 |
| 自适应平台软件架构说明 | · 初始发布 |
===== 第 38 页 =====
表 5.1:发布历史