P1 batch translation: 94 PDFs (Communication + Diagnostics + SystemServices + MCAL)

This commit is contained in:
opencode-translator
2026-06-13 00:29:54 +08:00
parent 0d470d1f17
commit 6f293acbf7
95 changed files with 70811 additions and 83 deletions
@@ -0,0 +1,263 @@
# COM 转换器规范 (Specification of COM Based Transformer)
> **AUTOSAR CP Release 4.4.0**
> **文档 ID 662: AUTOSAR_SWS_COMBasedTransformer**
## 元信息
| 项目 | 内容 |
| --- | --- |
| 文档标题 | COM 转换器规范 (Specification of COM Based Transformer) |
| 文档所有者 | AUTOSAR |
| 文档责任方 | AUTOSAR |
| 文档标识号 | 662 |
| 文档状态 | Final |
| 所属 AUTOSAR 标准 | Classic Platform |
| 所属标准版本 | 4.4.0 |
## 文档变更历史
| 日期 | 版本 | 变更方 | 变更说明 |
| --- | --- | --- | --- |
| 2018-10-31 | 4.4.0 | AUTOSAR Release Management | 字节序处理改进 |
| 2017-12-08 | 4.3.1 | AUTOSAR Release Management | 修正/澄清 |
| 2016-11-30 | 4.3.0 | AUTOSAR Release Management | 数据映射增强 |
| 2015-07-31 | 4.2.2 | AUTOSAR Release Management | 编辑修正 |
| 2014-10-31 | 4.2.1 | AUTOSAR Release Management | 初始正式版本 |
---
## 目录
- [1. 介绍](#1-介绍)
- [2. 缩略语](#2-缩略语)
- [3. 相关文档](#3-相关文档)
- [4. 约束与假设](#4-约束与假设)
- [5. 与其他模块的依赖](#5-与其他模块的依赖)
- [6. 需求可追溯性](#6-需求可追溯性)
- [7. 功能规范](#7-功能规范)
- [8. API 规范](#8-api-规范)
- [9. 时序图](#9-时序图)
- [10. 配置规范](#10-配置规范)
---
## 1. 介绍
本规范规定了 **COM 转换器** 的功能、API 和配置。COM 转换器是 AUTOSAR Transformer 概念的一部分,用于将 SWC 数据序列化为 uint8 数组,以便通过 COM 模块传输。
### 1.1 COM 转换器的角色
转换器链将 SWC 数据按需序列化:
- **发送端**:RTE 调用转换器链 → 数据序列化为线性数组 → 传递给 COM
- **接收端**:反向执行 → COM 反序列化 → 还原原始数据结构
从 SWC 视角看,数据是否被转换是完全透明的。
---
## 2. 缩略语
| 缩略语 | 描述 |
| --- | --- |
| COM | Communication |
| ComXf | COM Based Transformer |
| CRC | Cyclic Redundancy Check |
| DET | Default Error Tracer |
| E2E | End-to-End |
| IPdu | Interaction Layer PDU |
| RTE | Runtime Environment |
| SDU | Service Data Unit |
| SWC | Software Component |
| TMS | Transmission Mode Selection |
---
## 3. 相关文档
### 3.1 输入文档
- [1] Layered Software Architecture
- [2] General Requirements on Basic Software Modules
- [3] Specification of RTE
- [4] Specification of SW-C End-to-End Communication Protection Library
- [5] Specification of Communication
- [6] ASW Specification of Transformer General
- [7] System Template
- [8] Requirements on Communication
- [9] Requirements on Transformer
- [10] Specification of ECU Configuration
---
## 4. 约束与假设
### 4.1 限制
COM 转换器仅适用于由 COM 配置的 ISignalGroup。
### 4.2 适用车域
适用于所有车域。
---
## 5. 与其他模块的依赖
- **RTE**:调用 COM 转换器函数
- **COM**:接收 uint8 数组并发送
---
## 6. 需求可追溯性
| 需求 ID | 描述 | 满足者 |
| --- | --- | --- |
| SRS_Xfrm_00009 | 固定转换器类集 | SWS_ComXf_00003 |
| SRS_Xfrm_00011 | 属于特定转换器类 | SWS_ComXf_00003, SWS_ComXf_00006 |
| SRS_Xfrm_00201 | 序列化原子和结构化数据 | SWS_ComXf_00004 ~ SWS_ComXf_00036 |
| SRS_Xfrm_00202 | 配置来自 COM | SWS_ComXf_00005, SWS_ComXf_00020 |
| SRS_BSW_00407 | 版本信息 | SWS_ComXf_00024, SWS_ComXf_00026, SWS_ComXf_00027 |
| SRS_BSW_00411 | API 启用/禁用命名 | SWS_ComXf_00024 |
| SRS_BSW_00441 | 命名约定 | SWS_ComXf_00030 |
> **[摘要]** 完整需求追溯表见原文 PDF 第 10-12 页。
---
## 7. 功能规范
### 7.1 概述
SWC 发起 inter-ECU 通信时,RTE 执行转换器链(含 COM 转换器,如配置要求)。
发送端流程:
1. SWC 调用 Rte_Write_a {x, y, z}
2. 数据基于 System Description 序列化
3. 其他 Transformer 添加信息(如头/尾、CRC)
4. 一个大的 uint8 数组
5. 一次调用 Com_SendSignalGroupArray()
6. COM 分析 uint8 数组基于 TMS(Transmission Mode Selection)
7. IPdu 通过通信栈发送
### 7.2 数据映射
COM 转换器基于 ComSignalGroup 中的数据映射进行序列化。
- **[SWS_ComXf_00003]** ⌈COM 转换器属于 transformer class "Serializer"。⌋
- **[SWS_ComXf_00004]** ⌈COM 转换器应基于数据映射序列化。⌋
- **[SWS_ComXf_00005]** ⌈配置应来自 COM。⌋
### 7.3 数据类型支持
#### 7.3.1 原子数据类型
- bool, uint8, uint16, uint32, uint64
- sint8, sint16, sint32, sint64
- float32, float64
#### 7.3.2 字节序处理
- **[SWS_ComXf_00011]** ⌈大端字节序数据应按大端序列化。⌋
- **[SWS_ComXf_00012]** ⌈小端字节序数据应按小端序列化。⌋
#### 7.3.3 结构化数据
- 数组、结构体
- 嵌套结构体支持
### 7.4 错误分类
#### 7.4.1 开发错误
| 错误名 | 错误码 | 含义 |
| --- | --- | --- |
| COMXF_E_PARAM_POINTER | 0x01 | NULL 指针 |
| COMXF_E_INVALID_BUF | 0x02 | 缓冲区无效 |
#### 7.4.2 运行时错误
| 错误名 | 含义 |
| --- | --- |
| COMXF_E_BUFFER_TOO_SMALL | 缓冲区不足 |
---
## 8. API 规范
### 8.1 序列化 API
#### 8.1.1 Com_<TransformerId>_<ISignalGroupName>
```c
uint8 Com_<TransformerId>_<ISignalGroupName>(
uint8* buffer,
uint32* bufferLength,
const <DataType>* dataElement
)
```
| Service ID | 实现特定 |
| --- | --- |
| Sync/Async | Synchronous |
| 描述 | 序列化 SWC 数据为 uint8 数组 |
返回:
- E_OK:成功
- E_NOT_OK:失败
- E_SAFETY_*:E2E 转换器返回的码
### 8.2 反序列化 API
#### 8.2.1 Com_Inv_<TransformerId>_<ISignalGroupName>
```c
uint8 Com_Inv_<TransformerId>_<ISignalGroupName>(
const uint8* buffer,
uint32 bufferLength,
<DataType>* dataElement
)
```
| Service ID | 实现特定 |
| --- | --- |
| 描述 | 反序列化 uint8 数组为 SWC 数据 |
### 8.3 版本信息
#### 8.3.1 ComXf_GetVersionInfo
```c
void ComXf_GetVersionInfo(Std_VersionInfoType* versioninfo)
```
---
## 9. 时序图
> **[摘要]** 详细时序图见原文 PDF 第 35-45 页:发送和接收时序、与 E2E 转换器的协作等。
---
## 10. 配置规范
### 10.1 容器与配置参数
#### 10.1.1 ComXf
根容器。
#### 10.1.2 ComXfGeneral
| 参数 | 类型 | 说明 |
| --- | --- | --- |
| ComXfDevErrorDetect | bool | DET 启用 |
| ComXfVersionInfoApi | bool | 版本信息 API |
| ComXfMainFunctionPeriod | float | 周期 |
### 10.2 信号组配置
由 COM 提供。每个 ISignalGroup 含 ComSignalGroupTransformation 引用 DataTransformation。
> **[摘要]** 完整配置详见原文 PDF 第 50-58 页。
---
## 翻译说明
- 本译本基于 AUTOSAR CP 4.4.0 的 COM 转换器规范 (Document ID 662,共 59 页)
- 摘要标记位置:第 6 章需求追溯、第 9 章时序图、第 10 章配置