303 lines
6.2 KiB
Markdown
303 lines
6.2 KiB
Markdown
# 大数据 COM 规范 (Specification of Large Data COM)
|
|
|
|
> **AUTOSAR CP Release 4.4.0**
|
|
> **文档 ID 873: AUTOSAR_SWS_LargeDataCOM**
|
|
|
|
## 元信息
|
|
|
|
| 项目 | 内容 |
|
|
| --- | --- |
|
|
| 文档标题 | 大数据 COM 规范 (Specification of LdCom) |
|
|
| 文档所有者 | AUTOSAR |
|
|
| 文档责任方 | AUTOSAR |
|
|
| 文档标识号 | 873 |
|
|
| 文档状态 | 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 | 引入 LdCom |
|
|
|
|
---
|
|
|
|
## 目录
|
|
|
|
- [1. 介绍](#1-介绍)
|
|
- [2. 缩略语](#2-缩略语)
|
|
- [3. 相关文档](#3-相关文档)
|
|
- [4. 约束与假设](#4-约束与假设)
|
|
- [5. 与其他模块的依赖](#5-与其他模块的依赖)
|
|
- [6. 需求可追溯性](#6-需求可追溯性)
|
|
- [7. 功能规范](#7-功能规范)
|
|
- [8. API 规范](#8-api-规范)
|
|
- [9. 时序图](#9-时序图)
|
|
- [10. 配置规范](#10-配置规范)
|
|
|
|
---
|
|
|
|
## 1. 介绍
|
|
|
|
本规范规定了 AUTOSAR 基础软件模块 **LdCom**(大数据 COM)的功能、API 和配置。
|
|
|
|
LdCom 提供了在 SOME/IP-TP、CAN-TP 等大型消息上的 COM 替代方案,绕过 COM 的信号处理,直接在 RTE 和 PduR 之间传输大字节数组。
|
|
|
|
主要用途:
|
|
- 包含 transformer 链(E2E、SOMEIP、COM)生成的 byte 数组的大型 PDU
|
|
- 透明的传输
|
|
|
|
---
|
|
|
|
## 2. 缩略语
|
|
|
|
| 缩略语 | 描述 |
|
|
| --- | --- |
|
|
| API | Application Programming Interface |
|
|
| BSW | Basic Software |
|
|
| COM | Communication |
|
|
| DET | Default Error Tracer |
|
|
| LdCom | Large Data Communication |
|
|
| PDU | Protocol Data Unit |
|
|
| PduR | PDU Router |
|
|
| RTE | Runtime Environment |
|
|
| SDU | Service Data Unit |
|
|
| SW-C | Software Component |
|
|
| TP | Transport Protocol |
|
|
|
|
---
|
|
|
|
## 3. 相关文档
|
|
|
|
- [1] Layered Software Architecture
|
|
- [2] General Requirements on Basic Software Modules
|
|
- [3] Specification of RTE
|
|
- [4] Specification of PDU Router
|
|
- [5] Specification of Communication Stack Types
|
|
- [6] General Specification of Basic Software Modules
|
|
|
|
---
|
|
|
|
## 4. 约束与假设
|
|
|
|
### 4.1 限制
|
|
LdCom 不支持信号级处理,仅按字节数组传输。
|
|
|
|
### 4.2 适用车域
|
|
适用于所有车域。
|
|
|
|
---
|
|
|
|
## 5. 与其他模块的依赖
|
|
|
|
- **RTE**:LdCom 上层客户端
|
|
- **PduR**:下层路由
|
|
|
|
---
|
|
|
|
## 6. 需求可追溯性
|
|
|
|
| 需求 ID | 描述 | 满足者 |
|
|
| --- | --- | --- |
|
|
| SRS_BSW_00101 | 初始化 | SWS_LdCom_00010 |
|
|
| SRS_BSW_00407 | 版本信息 | SWS_LdCom_00020 |
|
|
| SRS_LDCom_00001 | 大数据传输 | SWS_LdCom_00030 |
|
|
|
|
> **[摘要]** 完整需求追溯表见原文 PDF 第 13-17 页。
|
|
|
|
---
|
|
|
|
## 7. 功能规范
|
|
|
|
### 7.1 概述
|
|
LdCom 在 RTE 和 PduR 之间提供透明的 SDU 传输。
|
|
|
|
### 7.2 发送
|
|
|
|
- RTE 通过 LdCom_Transmit 调用,传递 PDU ID 和数据
|
|
- LdCom 调用 PduR_LdComTransmit 转发
|
|
- 成功后 PduR 调用 LdCom_TxConfirmation
|
|
- LdCom 通知 RTE
|
|
|
|
### 7.3 接收
|
|
|
|
- PduR 调用 LdCom_RxIndication
|
|
- LdCom 通知 RTE
|
|
|
|
### 7.4 TP 处理
|
|
|
|
对 TP 模块,LdCom 处理 StartOfReception/CopyRxData/CopyTxData/TpRxIndication/TpTxConfirmation。
|
|
|
|
### 7.5 错误分类
|
|
|
|
#### 7.5.1 开发错误
|
|
|
|
| 错误名 | 错误码 | 含义 |
|
|
| --- | --- | --- |
|
|
| LDCOM_E_PARAM | 0x01 | 参数错误 |
|
|
| LDCOM_E_UNINIT | 0x02 | 未初始化 |
|
|
| LDCOM_E_PARAM_POINTER | 0x03 | NULL 指针 |
|
|
|
|
---
|
|
|
|
## 8. API 规范
|
|
|
|
### 8.1 导入类型
|
|
|
|
| 模块 | 头文件 | 导入类型 |
|
|
| --- | --- | --- |
|
|
| ComStack_Types | ComStack_Types.h | PduIdType, PduInfoType, RetryInfoType, BufReq_ReturnType |
|
|
| Std_Types | Std_Types.h | Std_ReturnType, Std_VersionInfoType |
|
|
|
|
### 8.2 类型定义
|
|
|
|
#### 8.2.1 LdCom_ConfigType
|
|
```c
|
|
typedef struct LdCom_ConfigType LdCom_ConfigType;
|
|
```
|
|
|
|
### 8.3 函数定义
|
|
|
|
#### 8.3.1 LdCom_Init
|
|
```c
|
|
void LdCom_Init(const LdCom_ConfigType* config)
|
|
```
|
|
| Service ID | 0x01 |
|
|
| --- | --- |
|
|
|
|
#### 8.3.2 LdCom_GetVersionInfo
|
|
```c
|
|
void LdCom_GetVersionInfo(Std_VersionInfoType* versioninfo)
|
|
```
|
|
|
|
#### 8.3.3 LdCom_Transmit
|
|
```c
|
|
Std_ReturnType LdCom_Transmit(
|
|
PduIdType TxPduId,
|
|
const PduInfoType* PduInfoPtr
|
|
)
|
|
```
|
|
| Service ID | 0x05 |
|
|
| --- | --- |
|
|
| 描述 | 请求传输 SDU |
|
|
|
|
### 8.4 回调通知
|
|
|
|
#### 8.4.1 LdCom_RxIndication
|
|
```c
|
|
void LdCom_RxIndication(
|
|
PduIdType RxPduId,
|
|
const PduInfoType* PduInfoPtr
|
|
)
|
|
```
|
|
|
|
#### 8.4.2 LdCom_TxConfirmation
|
|
```c
|
|
void LdCom_TxConfirmation(
|
|
PduIdType TxPduId,
|
|
Std_ReturnType result
|
|
)
|
|
```
|
|
|
|
#### 8.4.3 LdCom_TriggerTransmit
|
|
```c
|
|
Std_ReturnType LdCom_TriggerTransmit(
|
|
PduIdType TxPduId,
|
|
PduInfoType* PduInfoPtr
|
|
)
|
|
```
|
|
|
|
#### 8.4.4 LdCom_StartOfReception
|
|
```c
|
|
BufReq_ReturnType LdCom_StartOfReception(
|
|
PduIdType id,
|
|
const PduInfoType* info,
|
|
PduLengthType TpSduLength,
|
|
PduLengthType* bufferSizePtr
|
|
)
|
|
```
|
|
|
|
#### 8.4.5 LdCom_CopyRxData
|
|
```c
|
|
BufReq_ReturnType LdCom_CopyRxData(
|
|
PduIdType id,
|
|
const PduInfoType* info,
|
|
PduLengthType* bufferSizePtr
|
|
)
|
|
```
|
|
|
|
#### 8.4.6 LdCom_TpRxIndication
|
|
```c
|
|
void LdCom_TpRxIndication(
|
|
PduIdType id,
|
|
Std_ReturnType result
|
|
)
|
|
```
|
|
|
|
#### 8.4.7 LdCom_CopyTxData
|
|
```c
|
|
BufReq_ReturnType LdCom_CopyTxData(
|
|
PduIdType id,
|
|
const PduInfoType* info,
|
|
const RetryInfoType* retry,
|
|
PduLengthType* availableDataPtr
|
|
)
|
|
```
|
|
|
|
#### 8.4.8 LdCom_TpTxConfirmation
|
|
```c
|
|
void LdCom_TpTxConfirmation(
|
|
PduIdType id,
|
|
Std_ReturnType result
|
|
)
|
|
```
|
|
|
|
### 8.5 期望接口
|
|
|
|
#### 8.5.1 强制接口
|
|
- PduR_LdComTransmit
|
|
- Det_ReportError
|
|
- RTE 回调函数
|
|
|
|
---
|
|
|
|
## 9. 时序图
|
|
|
|
> **[摘要]** 详细时序图见原文 PDF 第 30-36 页。
|
|
|
|
---
|
|
|
|
## 10. 配置规范
|
|
|
|
### 10.1 容器与配置参数
|
|
|
|
#### 10.1.1 LdCom
|
|
根容器。
|
|
|
|
#### 10.1.2 LdComGeneral
|
|
| 参数 | 类型 | 说明 |
|
|
| --- | --- | --- |
|
|
| LdComDevErrorDetect | bool | DET 启用 |
|
|
| LdComVersionInfoApi | bool | 版本信息 API |
|
|
|
|
#### 10.1.3 LdComConfig
|
|
配置集容器。
|
|
|
|
#### 10.1.4 LdComIPdu
|
|
I-PDU 配置(PDU ID、方向、TP 引用等)。
|
|
|
|
> **[摘要]** 完整配置详见原文 PDF 第 38-42 页。
|
|
|
|
### 10.2 已发布信息
|
|
按 BSW General。
|
|
|
|
---
|
|
|
|
## 翻译说明
|
|
|
|
- 本译本基于 AUTOSAR CP 4.4.0 的大数据 COM 规范 (Document ID 873,共 43 页)
|
|
- 摘要标记位置:第 6 章需求追溯、第 9 章时序图、第 10 章配置
|