【AUTOSAR-CP-CAN-4】PduR 模块详解

【AUTOSAR-CP-CAN-4】PduR 模块详解

  • 0. 声明、帮助、简介
  • 1. PduR 简介和功能概览
    • 1.1 通信架构以及 PduR 在通信服务中的位置
    • 1.2 PduR 的路由能力总结
  • 2. 对相邻模块的依赖
  • 3. 功能概览
    • 功能综述以及错误追踪
      • 功能综述
      • 错误追踪
    • 3.1 I-PDU 处理
      • 3.1.1 Buffer 缓冲区概念
        • 3.1.1.1 buffer 类型
        • 3.1.1.2 缓冲策略
        • 3.1.1.3 buffer 共享
      • 3.1.2 I-PDU 接收到上层模块
  • 等我更新,关注点赞收藏素质三连立即催更

0. 声明、帮助、简介

参考自 AUTOSAR PduR SWS R21-11

1. PduR 简介和功能概览

PDU:Porotocol Data Unit 协议数据单元,网络中对等实体直接传送的数据单元,通常包含协议控制信息和用户数据。可以理解为 TCP\IP 中,不同主机之间,网络协议中同层的网络报文。
PduR:PDU Router
I-PDU:Interaction Layer Protocol Data Unit,交互层协议数据单元。

PduR 为使用如下两种类型的待路由 I-PDU 提供服务:

  • 使用 or APIs 的通信接口模块,例如 Com、CanIf、LinIf
  • 使用 or APIs 的传输协议模块,例如 Com、CanTp、LinTp

其实 PduR 模块可以简单概括为(或者说其实 PduR 的功能就是):I-PDU 的路由基于静态配置的 PDU Id 执行,换言之,没有任何 I-PDU 的路由是在 runtime 时决定路由方向的,全部都是静态配置好的路径,只要收到 PduR 传输接口被调用就会检查静态配置中该 PDU Id 配置的路由路径,然后调用相应的下游接口即可。

和 PduR 交互的相关模块中,一些模块可以被称为上层(e.g. Dlt, Dcm, Com, IpduM),一些可以被称为下层(CanIf, FrIf, LinTp, IpduM, CanNm, FrNm),IpduM 是特殊情况,有两种不同的角色(作为下层时,场景是 Com->PduR->IpduM;作为上层时,场景是 IpduM<-PduR<- CanIf\LinIf…)。

根据前面所述,PduR 可以通过添加配置支持支持更多的上层和下层模块,也可以用来集成 CDD 模块为(Complex Device Drivers)PduR 的上层或下层模块。常用的上下册路径如下:

  • Diagnostic Communication Manager (Dcm) and Transport Protocol modules(CanTp…)
  • C

你可能感兴趣的:(AUTOSAR,Pdu,Router,汽车,CAN,操作系统)