-
PduR模块简介
在AUTOSAR中,PduR模块主要是通过通信接口模块(如Com, IPduM, Linlf, Canlf, CanNm)以及传输协议模块(如CanTp,FrTp,Com,Dcm)为I-PDU(交互层协议数据单元)提供路由服务。
1.1 PduR模块在AUTOSAR中的位置
PduR模块位于AUTOSAR通信服务的核心位置,作为上层模块与下层接口模块或传输层模块传输PDU的桥梁。其位置如下图所示。

上层和下层最常见的组合如下:
-
诊断通信管理器(DCM)和传输协议模块
-
Com和通信接口模块/传输协议模块/IPduM
-
IPduM和通信接口模块
1.2 PduR的功能概述
PduR模块是AUTOSAR通信结构的核心模块。AUTOSAR通信结构概述如下图所示。

-
PduR路由路径:静态路由路径,用于描述每个I-PDU的路由属性。
-
PDU Router Engine:根据路由路径执行路由操作的实际代码。需要做到:①将I-PDU从源路由到目标;②将源I-PDU id转为目标I-PDU id。
PduR的功能概述如下:
-
I-PDU转发
-
上层模块I-PDU发送至下层模块(接口模块、传输层模块)
包括1:1的单播和1:n的组播
-
接收下层模块(接口模块、传输层模块)I-PDU到上层模块
均包括1:1和1:n
-
I-PDU网关
-
1/多接口模块到1/多接口模块(last-is-best buffer/ FIFO buffer/ no buffer)
-
1/多传输层模块到1/多传输层模块
-
I-PDU的转发与网关组合
一个I-PDU可以被一个或多个上层模块接收,同时网关到一个或多个通信接口,使用last -best/FIFO/ no buffer
—一个I-PDU(仅为单帧)可以被一个或多个上层模块接收,同时通过缓冲区网关到一个或多个下层传输协议模块。
-
功能详解
PDU Router模块是一个I-PDU传输单元,位于通信接口模块和传输协议模块(下层模块)之上,Com和Dcm模块(上层模块)之下。
IpduM模块位于PduR的旁边,提供对多路复用I-PDU的支持。它既可作上层,也可做下层。当IpduM调用PduR完成发送操作(包括Transmit、TriggerTransmit以及TxConfirmation)时,IpduM被认为是上层模块;当IpduM被PduR调用完成相应的转