CPAUTOSAR下的PDURouter是如何工作的?

原创 汽车电子与软件 2025-01-16 08:04

作者 | 不可说

出品 | 汽车电子与软件



#01
CP与PDU Router

PDU(Protocol Data Unit)是AutoSAR通信模型中的一个核心概念,它是在通信网络中传输的数据单元。PDU负责封装和传递应用层数据,使得不同的模块和设备能够互相交换信息。PDU可以包含各种类型的数据,如信号、报文、消息等。
         

 

根据功能和通信模式的不同,PDU可以分为以下几种类型:

I-PDU(Interaction Layer Protocol Data Unit):交互层数据单元,用于在不同模块之间传递数据。

N-PDU(Network Protocol Data Unit):用于网络层协议之间的数据传输,包括网络管理、路由和转发等功能。

此外,在CAN网络中,PDU还可以根据其在不同层次的作用被分为L-PDU(数据链路层PDU)、N-PDU(网络层PDU)和I-PDU(交互层PDU)。其中,L-PDU包含SDU(Service Data Unit,服务数据单元)和PCI(Protocol Control Information,协议控制信息)。SDU是由上层传递的数据,带有传输数据的请求;PCI是将SDU从特定协议层的一个实例传递到另一个实例时所需的信息,它包含源和目标信息等。
         

 

那什么是PduR(PDU Router)呢?PduR是将I-PDU从一个模块传输到另一个模块的模块。PduR模块可用于网关操作和内部路由。     



#02
功能架构

PduR模块根据不同的模块类型,使用不同的通信API来提供路由I-PDU的服务:

  • 使用API的通信接口模块,例如Com、IPduM、LinIf、CanIf、CanNm、FrIf和FrNm;

  • 使用< Provider:UpTp>或< Provider:LoTp>API的传输协议模块,例如J1939Tp、LinTp(LinIf的一部分)、CanTp、FrTp、Com、Dcm。

在AUTOSAR系统中,每个I-PDU都有一个唯一的标识符,并且这个I-PDU的路由信息(即它应该被发送到哪个ECU或哪个接口)在系统设计和配置阶段就已经被静态定义好了。在运行时,这些路由信息是不会改变的,也就是说,I-PDU的传输路径是固定的,没有动态路由的可能性。这种设计保证了AUTOSAR系统的稳定性和可预测性。
         

 

相关模块的位置可以是“upper”(例如 Dlt、Dcm、Com、IpduM)或者“lower”(CanIf、FrIf、LinTp、IpduM、CanNm、FrNm)。请注意,IpduM 被列为upper& lower模块,因为它有两个不同的角色(下层:Com 模块和 IpduM 模块之间的通信,上层:IpduM 模块和下层通信接口模块之间的通信)。
         

 

接口的模块在PduR模块配置中配置。上一段括号中列出的模块只是示例,不是详尽的列举。PduR可以进行配置以支持其他上层和下层模块。这种方法还允许将复杂设备驱动程序(CDD)集成PduR的上层或下层模块。
         

 

PduR模块的用户列表不固定。下面列出了最常见的上层和下层组合:

  • 诊断通信管理器(DCM)和传输协议(TP)模块

  • Com 和通信接口(Communication Interface)模块、传输协议(TP)模块或 IPDU 多路复用器(I-PDU Multiplexer)    

  • PDU 多路复用器(I-PDU Multiplexer)和通信接口(Communication Interface)模块


I-PDU通信示例

架构  


PDU 路由器模块是 AUTOSAR 通信结构中的一个中心模块;


通信结构



#03
功能概览 

PduR模块是 AUTOSAR Basic 软件的一部分,在每个 AUTOSAR ECU 中都必须实例化。

详细的PduR模块结构如下:   


PduR模块结构

PDU Router 模块主要由两部分组成:

1. PDU Router routing paths  


  • 静态路由路径:这些是在系统设计阶段就已经定义好的路由信息,它们描述了每个I-PDU应该被如何路由,即它们应该通过哪些路径从一个ECU传输到另一个ECU。这些路由路径是固定的,并且在系统运行时不会改变,这确保了数据传输的可预测性和稳定性。

  • 路由属性的描述:每个路由路径都会包含一些路由属性,这些属性定义了路由的具体细节,比如目标ECU的标识符、传输协议、通信接口等。

  • 路由路径的更新:虽然路由路径通常是静态定义的,但在某些AUTOSAR实现中,这些路径可能支持在ECU的编程状态中被更新。这意味着在ECU的软件被加载或初始化时,可以通过构建后的配置来更新路由路径。然而,这种更新通常是在系统启动或配置阶段进行的,而不是在运行时动态进行的。
         

 

2. PDU Router Engine  


  • 执行路由动作的实际代码:PDU Router Engine是负责根据PDU Router路由路径执行实际路由动作的软件组件。它接收来自不同ECU或通信接口的I-PDU,然后根据预先定义的路由路径将它们发送到正确的目标ECU或接口。   

  • 处理的任务:

  • 解析路由路径:PDU Router Engine需要能够解析存储在路由路径中的信息,以确定每个I-PDU的目标位置。

  • 数据传输:根据解析后的路由路径,PDU Router Engine负责将I-PDU从源ECU传输到目标ECU。这可能涉及到使用不同的通信协议和接口。(例如PduR_Com传输到CanIf_Transmit,PduR_CanIfTxConfirmation 传输到 Com_ TxConfirmation)

  • 错误处理:在数据传输过程中,PDU Router Engine还需要能够处理可能出现的错误情况,比如通信失败、数据丢失等。



#04
PduR对I-PDU 的转发和网关路由

在AUTOSAR中,每个I-PDU都有一个独特的静态ID,这个ID就像I-PDU的“身份证”,用来区分不同的数据单元。

当I-PDU需要在不同的模块之间传递时,它会遇到PduR模块。它通过一个预先设定好的静态配置表,来查看I-PDU的ID,并决定I-PDU应该前往哪个目的地。

I-PDU经常用于PduR模块上方的模块之间的数据交换,比如通信模块(Com模块)和诊断通信模块(Dcm模块)就需要通过I-PDU来传递信息。

PDU路由器模块在“指路”的过程中,并不会对I-PDU的内容进行任何修改,它只是一个“传话筒”,负责把I-PDU准确无误地送到目标模块手中。

不过,在一种特殊的情况——TP(传输协议)网关下,PDU路由器模块可能会在收到完整的I-PDU之前就开始转发,这种方式被称为“动态网关”。这就像是在高速公路上,车辆(I-PDU)还在收费站外排队等待完全进入时,就已经有引导车(PduR模块)在前方为其指引方向了。    

而I-PDU的这个“身份证”——ID,是在实现相应API的配置时就已经设定好的。这样,每个需要接收I-PDU的模块都可以通过查找表来快速找到对应的I-PDU。比如,PDU路由器模块的配置里会有指向CanIf(CAN接口)模块传输确认的I-PDU ID,而CanIf模块的配置里也会有指向其传输功能的I-PDU ID。
         

 

以下列表总结了 PduR 的路由功能:

1. I-PDU 转发  


1)从上层传输,指的是从上层本地模块传输I-PDU到下层模块的过程。

  • 通信接口模块(If)(参考下图中的过程1)


    I-PDU 通信接口转发中,Singlecast(1:1)是一种基本的传输模式,它指的是将一个I-PDU(单帧或者多帧都可)从一个本地模块直接传输到一个通信接口模块的过程。也支持组播,Multicast (1:n) 指的是将一个I-PDU从一个本地模块直接传输到多个通信接口模块的过程。

  • 传输协议模块(Tp)(参考下图中的过程2)


    I-PDU 传输协议从上层转发中,Singlecast(1:1)是一种基本的传输模式,它指的是将一个I-PDU(单帧或者多帧都可)从一个本地模块直接传输到一个传输协议模块的过程。也支持组播,Multicast (1:n) 指的是将一个I-PDU从一个本地模块直接传输到多个通信接口模块的过程。   


I-PDU转发-从本地模块对外传输路径示意

2)对上层响应,指的是I-PDU从通信接口模块/传输协议模块接收后,被转发到上层(或本地)模块的过程

  • 通信接口模块(If)(参考下图中的过程3)

I-PDU可以通过单播(Singlecast)或者组播Multicast方式,从一个通信接口模块(比如LIN、CAN、FlexRay等通信控制器)传输到一个或者多个本地模块(通常是应用层或某个特定的软件组件);

当多个通信接口模块需要将数据发送到同一个本地模块时,就会采用Fan-in (n:1)的通信模式。指的是多个发送方(n个通信接口模块)将I-PDU发送到同一个接收方(一个本地模块)的过程。这种通信模式允许数据从多个来源汇聚到一个中心节点,便于集中处理。

  • 传输协议模块(Tp)(参考下图中的过程4)

I-PDU 传输协议对上层转发中,Singlecast(1:1)是一种基本的传输模式,它指的是将一个I-PDU(单帧或者多帧都可)从一个传输协议模块直接传输到一个本地模块的过程。也支持组播,Multicast (1:n) 指的是将一个I-PDU从一个本地模块直接传输到多个通信接口模块的过程。 
 

I-PDU转发-从下层If/Tp模块对本地模块传输路径示意

2. I-PDU Gateway路由  


  • 通信接口模块(If)(参考下图中的过程5、6)

将I-PDU从一个通信接口模块(如CAN If或LIN If)路由到另一个(或者多个)通信接口模块(如FlexRay If或以太网If)的机制,其中这种路由是1:1(或者1:n)的,即一个输入I-PDU对应一个(或者多个)输出I-PDU。在这个过程中,可以使用不同的缓冲策略,包括last-is-best buffer(最新优先缓冲)、FIFO buffer(先进先出缓冲)或无缓冲;
         

 

也能够将来自多个(n个)通信接口模块的I-PDU(输入PDU)路由到一个(1个)通信接口模块的功能,不过,在一个给定的时间点,只有一个源(即一个通信接口模块)应该被允许发送I-PDU到IPDU Gateway的特定输出。这是为了确保数据的一致性和避免冲突。    


I-PDU网关路由-If之间

  • 传输协议模块(Tp)(参考下图中的过程7、8)

在传输协议模块中,存在不同类型的网关用于在传输协议模块之间传递中间协议数据单元(I-PDU)。具体包括:(1:1)网关,它使用缓冲区将一个传输协议模块的I-PDU传递给另一个传输协议模块;(1:n)网关,它使用缓冲区将一个传输协议模块的I-PDU传递给多个传输协议模块;(n:1)网关,它使用缓冲区将来自多个传输协议模块的I-PDU传递给一个传输协议模块,但一次只允许一个源启用。


I-PDU网关路由-Tp之间    

3. I-PDU的转发与网关混合  


  • 通信接口模块(If)(参考下图中的过程9、a、b)

来自If模块的I-PDU可能会被一个或多个上层模块接收,同时使用last-is-best buffer/FIFO/no buffer模式被网关连接到一个或多个通信接口模块。


对If模块的I-PDU的网关路由与转发

  • 传输协议模块(Tp)(参考下图中的过程c、d、e)

来自Tp模块的I-PDU(仅单帧)可能会被一个或多个上层模块接收,同时使用buffer被网关连接到一个或更多个下层传输协议模块。


对Tp模块的I-PDU的网关路由与转发
        

 

 

#05
小  结

AUTOSAR的PduR模块通过接收、查找路由表、转发I-PDU以及处理传输请求等步骤,实现了在AUTOSAR系统中对I-PDU的有效处理,确保了不同软件组件之间能够高效、可靠地进行数据通信。通过PduR,AUTOSAR系统能够实现复杂的网络通信需求,支持汽车内部各种电子控制单元之间的协同工作。



/ END /


   

汽车电子与软件 主要介绍汽车电子软件设计相关内容,每天分享一篇技术文章!
评论 (0)
  • 贞光科技代理的品牌-光颉科技高精密薄膜电阻凭借0.01%的超高精度,在AI服务器电源模块中实现了精确电压分配、优化功率因数和减少热损耗,显著提升系统能效和可靠性。在当今的数字时代,人工智能(AI)服务器已成为数据中心的核心。随着AI应用的激增,服务器的性能和能效需求也在不断提高。电源模块作为服务器的关键组件,其性能直接影响整个系统的效率和可靠性。本文将探讨光颉科技高精密薄膜电阻,特别是其0.01%的精度,如何在AI服务器电源模块中提升能效。电源模块在AI服务器中的重要性电源模块负责将输入电源转换
    贞光科技 2025-03-20 16:55 163浏览
  • 全球领先的光学解决方案供应商艾迈斯欧司朗(SIX:AMS)近日宣布,凭借AS1163独立智能驱动器(SAID)成为中国领先的智能集成系统产品汽车制造商宁波福尔达智能科技股份有限公司(“福尔达”)环境动态照明应用的关键供应商。此次合作标志着汽车技术发展的一个重要时刻,充分展现了AS1163在优化动态照明应用系统成本方面的多功能性和先进性能。该产品支持传感器集成,拥有专为车顶照明设计的超薄外形,并能提升车内照明系统的性能。AS1163是一款先进的智能LED驱动器,能够与开放系统协议(OSP)网络无缝
    艾迈斯欧司朗 2025-03-20 14:26 104浏览
  • 为有效降低人为疏失导致交通事故发生的发生率,各大汽车制造厂及系统厂近年来持续开发「先进驾驶辅助系统」ADAS, Advanced Driver Assistance Systems。在众多车辆安全辅助系统之中,「紧急刹车辅助系统」功能(AEB, Autonomous Emergency Braking)对于行车安全性的提升便有着相当大的帮助。AEB透过镜头影像模块与毫米波雷达感测前方目标,可在发生碰撞前警示或自动刹车以降低车辆损伤以及乘员伤害。面临的挑战以本次分享的客户个案为例,该车厂客户预计在
    百佳泰测试实验室 2025-03-20 15:07 111浏览
  • 如同任何对我们工作方式的改变,新的工作方式必然会遇到许多必须面对的挑战。如果不解决组织在实施精益六西格玛过程中面临的障碍以及如何克服它们的问题,那么关于精益六西格玛的讨论就不算完整。以下列举了组织在成功实施精益六西格玛时常见的几个障碍,以及克服它们的方法:1)对精益六西格玛方法论缺乏理解。抵触情绪通常源于对精益六西格玛方法论的不了解,以及不相信它能真正发挥作用。这种情况在所有层级的人员中都会出现,包括管理层。虽然教育培训可以帮助改善这一问题,但成功的项目往往是打消疑虑的最佳方式。归根结底,这是一
    优思学院 2025-03-20 12:35 108浏览
  • 流感季急诊室外彻夜排起的长队,手机屏幕里不断闪烁的重症数据,深夜此起彼伏的剧烈咳嗽声——当病毒以更狡猾的姿态席卷全球,守护健康的战争早已从医院前移到每个人的身上。在医学界公认的「72小时黄金预警期」里,可穿戴设备闪烁的光芒正穿透皮肤组织,持续捕捉血氧浓度、心率变异性和体温波动数据。这不是科幻电影的末日警报,而是光电传感器发出的生命预警,当体温监测精度精确到±0.0℃,当动态血氧检测突破运动伪影干扰……科技正在重新定义健康监护的时空边界。从智能手表到耳机,再到智能戒指和智能衣物,这些小巧的设备通过
    艾迈斯欧司朗 2025-03-20 15:45 177浏览
  • 家电“以旧换新”政策的覆盖范围已从传统的八大类家电(冰箱、洗衣机、电视、空调、电脑、热水器、家用灶具、吸油烟机)扩展至各地根据本地特色和需求定制的“8+N”新品类。这一政策的补贴再叠加各大电商平台的优惠,家电销售规模显著增长,消费潜力得到进一步释放。晶尊微方案为升级换代的智能家电提供了高效且稳定的触摸感应和水位检测功能,使得操作更加便捷和可靠!主要体现在:水位检测1健康家电:养生壶、温奶器、加湿器的缺水保护安全2清洁电器:洗地机、扫地机器人的低液位和溢液提醒3宠物家电:宠物饮水机的缺水提醒/满水
    ICMAN 2025-03-20 15:23 151浏览
  • 近日,保定飞凌嵌入式技术有限公司(以下简称“飞凌嵌入式”)携手瑞芯微电子股份有限公司(以下简称“瑞芯微”)正式加入2025年全国大学生嵌入式芯片与系统设计竞赛(以下简称“嵌入式大赛”),并在应用赛道中设立专属赛题。本次嵌入式大赛,双方选用基于瑞芯微RK3588芯片设计的ELF 2开发板作为参赛平台,旨在通过此次合作,促进产教融合,共同推动嵌入式系统创新人才的培养。全国大学生嵌入式芯片与系统设计竞赛是一项A类电子设计竞赛,同时也是被教育部列入白名单的赛事,由中国电子学会主办,是学生保研、求职的公认
    飞凌嵌入式 2025-03-20 11:53 94浏览
  • PCIe 5.0应用环境逐步成形,潜在风险却蠢蠢欲动?随着人工智能、云端运算蓬勃发展,系统对于高速数据传输的需求不断上升,PCI Express(PCIe)成为服务器应用最广的传输技术,尤其在高效能运算HPC(High Performance Computing)及AI服务器几乎皆导入了最新的PCIe 5.0规格,使得数据传输的双向吞吐量达到了128GB/s,让这两类的服务器能够发挥最大的效能。不过随着PCIe 5.0的频率达到16GHz,PCB板因为高频而导致讯号衰减加剧的特性,使得厂商面临很
    百佳泰测试实验室 2025-03-20 13:47 110浏览
  •         在当今电子设备高度集成的时代,电路保护显得尤为重要。TVS管(瞬态电压抑制二极管)和压敏电阻作为一种高效的电路保护器件,被广泛应用于各种电子设备中,用以吸收突波,抑制瞬态过电压,从而保护后续电路免受损坏。而箝位电压,作为TVS管和压敏电阻的核心参数之一,直接关系到其保护性能的优劣。箝位电压的定义        箝位电压指瞬态保护器件(如TVS二极管、压敏电阻)在遭遇过压时,将电路电压限制在安全范围内的
    广电计量 2025-03-20 14:05 97浏览
  • 4月8-11日,第91届中国国际医疗器械博览会(CMEF)将在国家会展中心(上海)举办。这场全球瞩目的医疗科技盛宴以“创新科技,智领未来”为主题,旨在全方位展示医疗科技的最新成果,与来自全球的行业同仁一道,为全球医疗健康领域带来一场科技与商贸交融的产业“盛宴”。飞凌嵌入式作为专业的嵌入式技术解决方案提供商,一直致力于为医疗器械行业提供丰富的、高可靠性的嵌入式硬件主控解决方案。届时,飞凌嵌入式将为来自全球的观众带来适用于IVD、医疗影像、生命体征监测等医疗设备的嵌入式板卡、显控一体屏产品以及多款动
    飞凌嵌入式 2025-03-20 11:46 40浏览
  • 本文内容来自微信公众号【工程师进阶笔记】,以工程师的第一视角分析了飞凌嵌入式OK3506J-S开发板的产品优势,感谢原作者温老师的专业分享。前两周,有一位老朋友联系我,他想找人开发一款数据采集器,用来采集工业现场的设备数据,并且可以根据不同的业务场景,通过不同的接口把这些数据分发出去。我把他提的需求总结了一下,这款产品方案大概有以下功能接口,妥妥地一款工业网关,在网上也能找到很多类似的产品方案,为啥他不直接买来用?再跟朋友深入地聊了一下,他之所以联系我,是因为看到我在公众号介绍过一款由飞凌嵌入式
    飞凌嵌入式 2025-03-20 11:51 125浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦