【AutoSAR】详解PDUR模块

所谓梦想,就是让你感到痛苦的事情不再发生。

一、前言

在学习AUTOSAR通信栈时,我们会遇到多种PDU相关的缩写,如L-PDU、N-PDU、I-PDU等。理解这些缩写及其相互关系、以及它们与OSI七层模型的对应关系,对于掌握通信部分至关重要。接下来,我们结合OSI模型、PCI/SDU/PDU定义、PduR模块核心逻辑及数据流,带大家彻底搞懂AUTOSAR通信栈的核心原理。

PduR的全称为Pdu Router。 PduR模块属于BSW组件的一个模块,模块提供基于通讯接口(Com、LinIf、CanIf、CanNm)或传输协议(J1939Tp、CanTp、Com、DCM)的I-PDUS的传输、转发、路由功能。PduR模块处于通信模块的中心,提供基于接口模块的通用方法。

二、数据流

PduR位于通信模块的核心位置,为通信模块的PDU数据提供静态路由功能。PduR Routing Tables是静态路由表,是关于所有I-PDU的路由配置。

2.1、COM数据流

COM模块负责将上层RTE传递的应用信号打包成I-PDU,再通过PduR路由到底层,最终通过CAN总线发送;反之,底层接收的信号也通过PduR路由到COM,解包后传递给上层应用。完整数据流如下:

CAN driver <--(LPDU)--> CanIf <--(IPDU)--> PDU Router <--(IPDU)--> COM <--(Signals)--> RTE

  • CAN driver:负责接收、发送CAN信号;配置CAN通道、波特率、端口等硬件相关参数,直接与物理总线交互。

  • CanIf:对CAN驱动层进行封装,向上层提供统一接口和通知函数;实现DLC、ID到PDU的转换,完成L-PDU与I-PDU的封装/解封装。

  • PDU Router:核心是传递数据到对应的上层模块;通过预配置的路由表,实现I-PDU的精准转发,不参与数据修改。

  • COM:将上层RTE传递的Signals(信号)打包成I-PDU,或将接收的I-PDU解包为Signals;向上层提供接收、发送信号/帧的接口。

  • RTE:运行时环境,负责上层应用与COM模块之间的信号传递,是上层应用与BSW层的交互桥梁。

2.2、诊断数据流

诊断数据流主要用于ECU的诊断、刷写、故障检测等场景,PduR负责DCM与CanTp之间的I-PDU路由,完整数据流如下:

CAN driver <--(LPDU)--> CanIf <--(NPDU)--> CanTp <--(IPDU)--> PDU Router <--(IPDU)--> DCM

  • CanTp:遵循ISO15765协议,负责长I-PDU的拆包、组包;配置时间参数、回调函数等,实现N-PDU的生成与重组。

  • DCM:为上层应用提供UDS服务、OBD服务;生成诊断相关的I-PDU(如诊断请求/响应),解析接收的诊断I-PDU并执行对应逻辑。

三、AutoSAR与OSI模型对应关系

AUTOSAR的通信分层架构简化了OSI模型,核心层级与OSI模型的对应关系如下,每个层级均包含PCI(协议控制信息)和数据结构(data Structure),且遵循"PDU = PCI + data Structure""SDU = data Structure"的核心规则。

AUTOSAR层级 对应OSI模型层级 核心模块/PDU类型
交互层 会话层、表示层 COM、DCM,对应I-PDU
网络层(传输层) 网络层、传输层 CanTp、J1939Tp,对应N-PDU
数据链路层 数据链路层、物理层 CanIf、CAN Driver,对应L-PDU
应用层(逻辑) 应用层 上层应用,对应SDU(业务数据)

四、协议数据单元PDU

在上述数据流中,出现了三种协议数据单元:L-PDU、N-PDU、I-PDU,本章来讲解这些PDU的含义。

L-PDU:Data Link Layer PDU,数据链路层PDU,含ID、DLC、Data;

N-PDU:NetWork Layer PDU,网络层PDU,含N-PCI(单帧、首帧、连续帧、流控帧);

I-PDU:Interaction Layer PDU,数据交互层PDU,包含真正要发的数据,单帧传输时,I-PDU为L-PDU的Data,多帧传输时,I-PDU由多个 N_PDU 重组;

五、总结

1、定位:AUTOSAR BSW层通信模块的"中枢路由器",串联上层(COM、DCM)与下层(CanIf、CanTp、CAN driver),核心是路由转发,不修改任何数据;

  1. 核心机制:基于静态路由表(PduR Routing Tables)实现I-PDU的精准路由,路由规则在编译期确定,运行时稳定可靠,适配车载通信的高安全性需求;

  2. 关键数据流:普通数据流(COM信号)和诊断数据流(UDS)是最核心的应用场景,各模块分工明确,PduR在其中承担"承上启下"的路由核心作用;

  3. 层级与PDU关联:AUTOSAR通信层与OSI模型存在对应关系,PCI、SDU、PDU是数据传输的核心载体;I-PDU、N-PDU、L-PDU分别对应交互层、网络层、数据链路层,三者通过分帧/重组、封装/解封装实现数据传输,PduR仅负责I-PDU的路由。

PduR模块看似简单,却是车载通信的"隐形基石"------没有它,上层应用的信号和诊断数据无法精准传递到底层总线,不同模块间的通信也会陷入混乱。掌握PduR的路由逻辑、数据流,以及I-PDU/N-PDU/L-PDU的辨析,是理解AUTOSAR通信栈的关键一步。

相关推荐
易连EDI—EasyLink3 小时前
易连EDI–EasyLink实现OCR智能数据采集
网络·人工智能·安全·汽车·ocr·edi
@insist1234 小时前
信息安全工程师考点精讲:身份认证核心原理与分类体系(上篇)
大数据·网络·分类·信息安全工程师·软件水平考试
SmartRadio4 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信
开发语言·网络·智能手机·esp32·长距离wifi
_.Switch4 小时前
东方财富股票数据JS逆向:secids字段和AES加密实战
开发语言·前端·javascript·网络·爬虫·python·ecmascript
金色光环5 小时前
FreeModbus释放底层的 TCP 监听端口
服务器·网络·tcp/ip
数智化精益手记局5 小时前
拆解物料管理erp系统的核心功能,看物料管理erp系统如何解决库存积压与缺料难题
大数据·网络·人工智能·安全·信息可视化·精益工程
灰子学技术7 小时前
Envoy HTTP 过滤器处理技术文档
网络·网络协议·http
Olivia051405149 小时前
Voohu:音频变压器的屏蔽接地技术对50Hz工频噪声抑制的影响
网络·机器人·信息与通信
byoass9 小时前
智巢AI知识库深度解析:企业文档管理从大海捞针到精准狙击的进化之路
开发语言·网络·人工智能·安全·c#·云计算
zhihuishuxia__9 小时前
Multiplex通讯(多路复用通讯)
网络·图像处理·数码相机·计算机视觉·自动化