关于车载以太网理解

885次阅读
没有评论

共计 8337 个字符,预计需要花费 21 分钟才能阅读完成。

关于车载以太网理解

1车载以太网概述

关于车载以太网理解
其中与车载以太网强相关的模块有:

  • SOME/IP(Scalable Service-Oriented Mid dlewarE over IP):是一种用于传输服务(Se rvice)信息的基于IP的可伸缩中间件,能够适应基于不同操作系统的不同大小的设备,小到摄像头,大到车机或自动驾驶模块;相比于传统的C AN总线的面向信号的通信方式,SOME/IP是一种面向服务的通信方式。
  • DolP:基于以太网的诊断传输协议,能够将UD S进行封装并基于IP网络进行传输;应用于车辆检查和维修、车辆或ECU软件的重编程、车辆或 ECU的下线检查和维修等,其主要工作原理类似于Diagnostic over CAN(或称为DoCAN)。
  • XCP:XCP on Ethernet能够基于以太网进行车载控制器的标定,主要用于标定、测量、少量的编程和刷新(大部分刷新会利用诊断协议)、ECU旁路功能等。
  • UDPNM:是AUTOSAR组织制定的基于汽车以太网的网络管理协议,能够有效的实现车载以太网节点的协同睡眠和唤醒,其主要工作原理类似于AUTOSAR的CAN NM

其中与传统以太网最核心区别是物理层车载以太网要用100BASE-T1,而非100BASE-TX,下面依次介绍与车载相关的各层。

2物理层PHY

2.1 总体说明

关于车载以太网理解

物理层PHY:数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口;

数据链路层MAC:提供寻址机构,数据帧的构建、数据差错检查、传送控制、向网络层提供标准的数据接口等功能。

100BASE-T1在物理连接上使用了一对双绞线实现全双工的信息传输,而100BASE-TX则使用了两对双绞线实现全双工,一对用于收,另一对用于发。

100BASE-T1利用所谓的回音消除技术(echo cancell ation)实现了在一对双绞线上的全双工通信。

回音消除技术的主要过程:作为发送方的节点将自己要发送的差分电压加载到双绞线上,而作为接收者的节点则将双绞线上的总电压减去自己发出去的电压做减法得到的结果就是发送节点发送的电压。

车载以太网固定为全双工通信方式,出于对汽车启动时间的考虑而没有引入自动协商机制,此外车载以太网是通过单对非屏蔽或屏蔽电缆连接。

2.2 物理层架构

物理层主要作用:

1)定义硬件接口;

2)定义信号与编码;

3)定义数据与信号之间的转换收发;

物理层基本架构

关于车载以太网理解

主要包括PMD,PMA和PCS。

PMD,介质依赖层,主要职责是转换PMA的数据与实际网络上的信号。发送时,它从PMA读取数据并执行实现该功能所需的必需的低级行编码功能设计的媒介。接收时,它会读取并解释这些内容编码信号,然后将它们转换回位以发送到PMA。

PMA,介质连接层,结余PMA和PCS之间,其中PM D是按照bit串行处理方式,而PCS则是按照数据块处理方式,因此PMA则是起到中间转换的作用,此外还起到数据冲突检测的功能。

PCS,编码子层,主要进行初始编码,实现特定于以太网速度和传输介质要求的子层中的一部分。

2.3 物理层控制器的架构

关于车载以太网理解

其中,MDI , Medium Dependent Interface。MII Medium Independent Interface,MIIM主要用于寄存器的配置管理。

我们这里需要注意的是RXD 和TXD都是4个数据。

2.4 物理层编码原理

首先总线上的电平信号有,-1 0和1如图:

关于车载以太网理解
数据和电平的编码转换关系有如下表关系:

如数据 000  对应两根线上的电平为 -1 01,

关于车载以太网理解
主要数据到电平转换过程为以下四步:

1.首先从MII接收到数据(4bit 4bit…)

2.接下来分割成(3bit3bit…)进行处理;

3.根据上表,申平与数据编码的关系,转换为申平信号;

4.将电平信号发到总线。

关于车载以太网理解

一个案例说明以上的转换过程:

关于车载以太网理解

100Mbps 速度的由来:

在微控制器的每个时钟周期中,MII接口到来的数据是4个bit,PHY从MII接口收到数据后,会首先进行一个4B3B的转换,为了匹配25MHz*4bit=100Mbit/s的速率,PHY的MI接口时钟周期应该是33.3333M每次接收3bit,也实现了33.3333M*3bit=100Mbi t/s的速率。之后PHY要再进行3B2T的操作,将每次接收到的3个bit转化为2个申平值(取值范围是-1,01),具体的对应关系如上图中的表所示。3个bit有8种组合(即2的三次方),两个电平值有9种组成(即3的平方),所以后者可以覆盖前者。此时时钟周期仍然是33.333M,但是每个时钟周期中的两个电平就能够表示3个bit了,所以此时的数据速率仍然是100Mb it/s,每个电平实际上包含了1.5bit信息。最后一步是 PAM3,将逻辑的-1,0,1转化为在双绞线上的电压,所以,最终在总线上信号的波特率是66.666MH z,但是它实现了100Mbit/s的通信速率。

3链路层MAC

MAC层主要内容,

1) 寻址

2) 传输方式

3) 帧格式

3.1 MAC控制器架构

关于车载以太网理解
其中比较关键的是MI 和 MIM 与PHY接口连接。

数据发送,MAC协议会判断当前是否适合发送数据,若能,它会在将要发送的数据上附加一些控制信息最终使数据以规定的格式到达物理层;

数据接收,它会判断数据是否有错误,如果没有错误的话,它会去掉附加的控制信息发送至LCC(逻辑链路控制)子层。

SMI接口包括MDIO(控制和管理PHY以获取PHY的状态)和MDC(为MDIO提供时钟)。

MDC由MAC提供,MDIO是一根双向的数据线。用来传送MAC层的控制信息和物理层的状态信息。

MDIO数据与MDC时钟同步,在MDC上升沿有效。

3.2 MAC地址

在我们给别人联系时,我们往往需要知道对方的邮件地址或电话或住址,而以太网通信也是类似。因此需要通信的两个设备,必须具有唯一标识的MAC地址。

MAC地址长度为48bit、6byte,前三个字节是组织标识ID,后三个字节是本地管理ID。

关于车载以太网理解

全局或本地地址U/L:第一个字节的第二位MAC地址的OUI字段(从右数第二低位开始计数)被称为U/L(通用/本地)标志。设为0时,将MAC地址标记为被普遍管理; 当它是1时,MAC地址是本地管理的。

单播与组播MAC地址I/G:OUI的第一个字节的第一个(最低有效)位MAC地址的字段,称为I/G(个人/组)标志。当这个位设置为0,MAC地址是单个设备,并且消息是单播。设置为1时,表示组地址(多播).

广播MAC地址:FF-FF-FF-FF-FF-FF

3.3 数据传输

主要介绍一下CSMA/CD冲突检测方法。

在以太网中,网络不断监控(或感知)传输线,侦听确定线路是否繁忙。任何设备听到正在进行的传输则禁止尝试发送自己的消息,直到线路空闲为止。

它可以检测到网络上是否有数据在传送,如果有数据在传送中就等待,一旦检测到网络空闲,再等待一个随机时间后将送数据出去。如果两个碰巧同时送出了数据,那样必将造成冲突。这时候,冲突检测机构可以检测到冲突,然后各等待一个随机的时间重新发送数据。这个随机时间很有讲究的,并不是一个常数在不同的时刻计算出来的随机时间都是不同的,而且有多重算法来应付出现概率很低的同两台主机之间的第二次冲突

3.4 MAC帧格式

关于车载以太网理解

Preamble: 7byte帧前缀,主要用于帧设备之间的事件同步;

Start of frame delimiter: 1byte,标识帧开始

MAC destination: 目标MAC地址

MAC source: 源MAC地址

802.1QTag: 是一个可选项,主要用于VLAN,如在这个字段中定义VLAN的ID或优先级等,未定义的则会自动把该帧丢弃。

length: 数据长度/payload长度

Payload: 有效负载、数据

frame check :  CRC

 

interframe gap:帧之间的间隔

4网络层

4.1 IP地址

主要作用为,寻址,数据封装,路由。仅以IPV4说明

长度为4byte 32bit,每个字节用dot隔开,用十进制表示。

192168.0.1,其中加粗的前三个字节192.168.0表示网络ID,最后一个字节 1表示主机ID

网络ID(网络ID): 一定位数,从头开始从最左边的位开始,用于标识主机或位于其他网络接口。有时也称为网络前缀,甚至只是前缀。

主机ID(主机ID): 其余位用于标识网络上的主机。

IP地质类别:

关于车载以太网理解

关于车载以太网理解

A类地址第一字节为网络ID,后三个字节为主机ID范围是1001-126.155.255.254;

B类地址第一二字节为网络ID,后两个字节为主机ID范围是128.0.0.1-191.255.255.254;

C类地址前三个字节为网络ID,最后一个字节为主机ID,范围是192.0.0.1-223.255.255.254

D类地址:为组播地址

224.0.0.0~224.0.0.255为预留的组播地址(永久组地址),地址224.0.0.0保留不做分配,其它地址供路由协议使用;

224.0.1.0~224.0.1.255是公用组播地址,可以用于In ternet;

224.0.2.0~238255255255为用户可用的组播地址(临时组地址),全网范围内有效;

239.0.0.0~239.255255.255为本地管理组播地址,仅在特定的本地范围内有效。

D类地址的MAC有特殊转换关系:

MAC地址前三位为:01 00 5E

MAC地址后三位为:  Ox7FFFFF & 组播IP地址

举例来说 组播IP地址242.147.109.235 对应的MAC地址为: 01.00.5E.13.6D.EB

4.2  IP协议

关于车载以太网理解

Version: 版本  如4表示IPV4IPV4:4,IPV6:6

IHL: Internet Header length,Header 长度 没有选项,则-般为5(5x32bit=20B)

DSCP: Differentiated Service一般没有使用,详细参考RFC

ECN: Explicit Congestion Notification 用于扩展检测丢包

Total length: 总长度,header+数据总长度

Identification: 占16位,它是一个计数器,用来产生数据报的标识

Flags:标明是否分片 bit 0: Reserved; must be zero bit 1: Don’t Fragment(DF) bit 2: More Fragments(MF)

Fragment Offset :占12位,指较长的分组在分片后某片在原分组中的相对位置.片偏移以8个字节为偏移单位

Time to Live: 生存时间,占8位,记为TTL (Time To Live)数据报在网络中可通过的路由器数的最大值,TTL字段是由发送端初始设置一个8bit字段推荐的初始值由分配数字RFC指定,当前值为64.发送ICMP 回显应答时经常把 TTL 设为最大值255

Protocol: 占8位,指出此数据报携带的数据使用何种协议以便目的主机的IP层将数据部分上交给哪个处理过程,1表示为 ICMP 协议,2表示为 IGMP 协议,6表示为 TCP 协议,17表示为 UDP 协议

Header checksum: 数据头CRC

Source IP address: 源IP地址

DestinationIPAddress: 日标IP地址

4.3 ICMP协议

ICMP:Internet Control Message Protocol 网际控制报文协议

作用:提高 IP 数据报交付成功的机会     用于ping,跟踪路由

关于车载以太网理解

这里的Type如下图所示:

关于车载以太网理解

这里主要说明Code,用于表示网络相关的错误。

4.4  ARP协议

ARP:Address Resolution Protocol地址解析协议

由于上层用的是IP地址,下层用的是MAC地址,ARP协议就是用于解决协议转换的问题。

主要用两种映射方式,一种为直接mapping,一种为动态mapping

以下说明ARP过程:

1)首先查询表中是否有目标地址,若没有则下一步;

2)产生ARP请求帧;

3) 广播ARP请求帧;

4)目标方接收ARP请求帧,并处理

5)目标方产生ARP响应帧

6)目标方更新ARP表

7)目标方发送ARP响应帧

8)请求方接收响应帧并处理

9)请求方更新ARP表。

关于车载以太网理解

关于车载以太网理解

5传输层

传输层的目的在于,控制分段传输大块数据。

5.1 端口与Socket

前面我们提到了IP地址,IP地址一般表示一个ECU级别;

而为了进一步表示一个ECU上的不同软件进程,功能或模块,我们引入端口的概念(port)。

在TCP和UDP中,都包含了16bit的 源地址端口和目标地址端口。

而IP地址+port = socket。

5.2  UDP

UDP: User Datagram Protocol 用户数据报协议

主要特点:传输协议比TCP轻,不保证发包的传输以及数据包的顺序,主要用于对时间敏感的传输;

关于车载以太网理解

5.3 TCP

 

TCP:Transmission Control Protocol 传输控制协议

主要特点,主要是用于可靠的面向连接的传输,在传输数据之前,必须先建立连接,同时确保所有数据按顺序到达客户端,客户端收到数据包后需要给出确认应答,若未确认,则该数据包会进行重传。

握手过程:

关于车载以太网理解

协议格式:

关于车载以太网理解

Source Port : 源端口

Destination Port:目标端口

Sequence Number:序列号,用于确保传输顺序;

Acknowledgment Number: 应答号 比如当前接收端接收到一个净荷为12byte的数据包,SN为8,则会回复一个确认收到的数据包,如果这个数据包之前的数据也都已经收到了,这个数据包中的ACK Number则设置为12+8=20,表示之前的数据都已经收到了,准备接受SN=20的数据包

data offset: 4位包括TCP头大小,指示TCP头的长度,即数据从何处开始。

CWR(Congestion Window Reduce): 拥塞窗口减少标志set by sender,用来表明它接收到了设置ECE标志的TCP包;

ECE(ECNEcho): ECN响应标志被用来在TCP3次握手时表明一个TCP端是具备ECN功能的。在数据传输过程中也用来表明接收到的TCP包的IP头部的ECN被设置为11;

URG(Urgent): 该标志位置位表示紧急(The urgentp ointer)标志有效。

ACK: 取值1代表Acknowledgment Number字段有效,这是一个确认的TCP包,取值0则不是确认包。

PSH(Push): 该标志置位时,一般是表示发送端缓存中已经没有待发送的数据,接收端不将该数据进行队列处理,而是尽可能快将数据转由应用处理。

RST(Reset): 用于reset相应的TCP连接。通常在发生异常或者错误的时候会触发复位TCP连接。

SYN: 同步序列编号(Synchronize Sequence Numb ers)有效。该标志仅在三次握手建立TCP连接时有效。

FIN(Finish): No more data from sender。当FIN标志有效的时候我们称呼这个包为FIN包。

WindowSize: 从AckNumber开始还愿意接收多少 byte的数据量,用于TCP的流量控制。

Urgent Pointer: 优先指针 指向后面是优先数据的字节,在URG标志设置了时才有效。

6应用层

6.1 DoIP

见之前的文章:关于DolP 协议的理解

6.2 SOME/IP

见之前的文章:关于SOME/IP的理解

6.1 DHCP协议

DHCP的全称是Dynamic Host Configuration Proto col,翻译作动态主机配置协议。它的用途是为网络节点自动配置IP地址。

DHCP是一个局域网应用层协议,使用UDP协议工作,用于在局域网内自动分配IP地址。

该协议基于Client/Server模式工作(Server一般由路由器担任),

  • DHCP Server端,使用UDP端口:67(0x43)
  • DHCPClient端,使用UDP端口:68(0x44)

DHCP的三种机制分配IP地址:

1)自动分配方式(Automatic Allocation),DHCP服务器为客户端指定一个永久性的IP地址,一旦DHCP客户端第一次成功从DHCP服务器端租用到IP地址后就可以永久性的使用该地址。

2)动态分配方式(Dynamic Allocation),DHCP服务器给客户端指定一个具有时间限制的IP地址,时间到期或主机明确表示放弃该地址时,该地址可以被其他主机使用。

3)手工分配方式(Manual Allocation),客户端的l P地址是由网络管理员指定的,DHCP服务器只是将指定的IP地址告诉客户端主机。

其中我们最常使用的是第二种,即动态分配方式。

UDP 数据包

关于车载以太网理解

OP:

若是client 送给 server 的封包,设为1,反向为 2。

HTYPE:

硬件类别,Ethernet 为 1。

HLEN:

硬件地址长度,ethernet为6.

HOPS:

若封包需经过router传送,每站加1,若在同一网内,为 0。

SECONDS:

Client 端启动时间 (秒)。

Transaction ID:

一个随机数,用于客户和服务器之间匹配请求和相应消息。

 

Flags:

从0-15bits,最左-bit为1时表示server将以广播方式传送封包给client,其余尚未使用。

ciaddr:

要是client 端想继续使用之前取得之IP 地址, 则列于这里。

yiaddr:

在 server送回 client 的 DHCP OFFER 与 DHCPACK封包中,此栏填写分配给client 的IP 地址。

siaddr:

若client 需要通过网络开机,从 server 送出之 DHC P OFFER、DHCPACK、DHCPNACK封包中,此栏填写开机程序代码所在 server 之地址。

giaddr:

若需跨网域进行 DHCP 发放,此栏为relay agent 的地址,否则为 0。

chaddr:

Client 之硬件地址。(包括6字节MAC和10字节padding)

sname:

Server 之名称字符串,以 0x00 结尾。

file:

若 client 需要通过过网络开机,此栏将指出开机程序名称,稍后以 TFTP 传送。

options:

允许厂商定议选项。每个option项由Type(1字节)、Length(1字节)、Value(长度由Length决定)三部分组成。

关于车载以太网理解

第一步:
DHCP客户端主动发送DHCP Discover包,用来寻找DHCP服务器,其中:

源MAC是自己的MAC地址,目的MAC是FF:FF:FF:FF:FF:FF的广播;

源IP是0.0.0.0(现在还没有IP,就用全0地址),目的IP是255.255.255.255的三层广播地址。

因为此时客户端还不知道DHCP服务器在哪里,所以使用广播来寻找,请求会被广播到整个网段中。

第二步:

DHCP服务器收到客户端发的DHCP Discover之后,会在自己的地址池中拿出一个没有分配的地址以及配套的参数(如:掩码、DNS、网关、域名、租期……),然后以一个DHCP Offer包发送出去。这个DHCP Offer数据包的地址如下:

源MAC是DHCP服务器的MAC,目的MAC是DHCP客户端的MAC地址;

源IP是DHCP服务器的IP,目的IP是即将分配给客户端使用的IP地址。

因为客户端目前还没有IP地址,所以在这个单播IP发送之前,服务器会使用客户端的MAC地址与之通信,如果MAC地址通信失败,那么服务器会使用广播的方式提供(Offer)数据包 。

第三步:

客户端收到这个DHCP Offer后,会再发出一个DHCP Request给服务器来申请这个Offer中包含的地址。此时客户端还没有正式拿到地址,所以还需要向DHCP服务器申请。

这个DHCP Request数据包的地址如下:

这时客户端的源IP还是0.0.0.0,目的IP还是255.255.255.255

源MAC是客户端的MAC,目的MAC是FFFF.FFFF.FFFF广播包

第四步:

服务器收到客户端的请求后,会发出一个DHCP ACK用来确认这个IP地址可以分配给这个客户端。

客户端收到这个DHCP ACK数据包才算正式拿到了这个IP。

在租约内续租的时候,发现( Discovery )和提供(Offer)数据包就变得没有必要了,只需要完成请求和确认两个步骤就可以

7Autosar中的以太网协议栈

以下简要说明与以太网相关的Autosar协议栈:

其中LDCOM可以认为类似于COM模块,只是LD表示large data,此外SOAD表示 socket adapter,用于以太网中的socket适配。

当然与DCM相关的底层采用的是DOIP协议。

关于车载以太网理解

阅读原文,请关注作者CSDN

正文完
 0
评论(没有评论)

汽车质量管理笔记

文章搜索
猜您喜欢
盘点全球23家传统主机厂的氢能源进展

盘点全球23家传统主机厂的氢能源进展

如今,燃油车可以说开始逐渐被抛弃,在某些西方国家甚至下放了最后的“通牒”。世界正在接近“后石油时代”,新能源汽...
16949要求的那些文件和记录

16949要求的那些文件和记录

文章来源:网络
5S管理实战案例124页PPT

5S管理实战案例124页PPT

6 每天进步一点 来源:网络
即刻尝鲜
管理者最厉害的绝招:反问

管理者最厉害的绝招:反问

管理工具中的“反问”,不仅是一种沟通技巧,更是一种强大的领导力催化剂。它的核心应用场景是将“管理者驱动”转变为...
走上管理岗,管理者一定要有的7个SOP思维

走上管理岗,管理者一定要有的7个SOP思维

1、汇报工作的SOP——SCAQ模型 2、目标设定的SOP——SMART模型 3、思路清晰的SOP——5W2H...
空气悬架高度传感器靠谱吗?

空气悬架高度传感器靠谱吗?

高度传感器在电控悬架系统中,用于检测车身与车轮之间的相对高度,为悬架控制系统提供车身高度信息,以便自动调节车身...
麦格纳工装夹具设计培训教材+要点总结

麦格纳工装夹具设计培训教材+要点总结

工装夹具设计一般是在零件的机械加工工艺过程制订之后按照某一工序的具体要求进行的。制订工艺过程,应充分考虑夹具实...
ISO9001-2026与ISO 9001-2015标准对照表

ISO9001-2026与ISO 9001-2015标准对照表

把新版和 2015 版做了一份对照表,哪些条款变了,哪些只是重新组织结构,哪些地方是真正收紧、以后要重点关注的...
最新评论
大师兄 大师兄 独立事件和卡方检验,都是非常重要的质量管理概念,挺难理解的。
透彻理解卡方检验 - 汽车质量管理笔记 透彻理解卡方检验 - 汽车质量管理笔记 […] 化简后的式子是我们在卡方检验中需要用到的式子,所以请大家牢记!对于上述式子有疑惑的读者可以学习基础的概率论,也可以参考我之前写的一篇关于独立的文章(《【直观数学】如何理解两事件间的独立关系》)。如果没有问题的话,我们可以进入到卡方检验原理与步骤的主体介绍部分! […]
infinite cui infinite cui 需求VDA6.3 表格,谢谢
大师兄 大师兄 说的挺有道理的,从现实看到的大部分情况,做技术的人都比较直,对技术的一丝不苟,容易在遇到需要展现管理能力的时候,就会表现出短板来。管理需要授权,更多应该思考团队、部门间,人员发展,对未来的变化做出应对等的能力。
大师兄 大师兄 抱歉,暂无PPT可供下载。
john john 如何获得这个PPT文件
大师兄 大师兄 里面确实有一些叫法和我们平时不一样
大师兄 大师兄 这个案例来自一本教科书,短短一页不到的案例描述,有可能漏掉某些细节。我想马自达的员工不会不知道这点,很可能是案例没有提到。马自达的员工更愿意偏离规范不过是这本教科书的猜测罢了。因为象传输系统这么复杂的产品,做得好与做得不好都可能有多个原因。我从另一个案例分析中发现,马自达的最终产品还是比福特的更满足规范要求。 变更控制是必要的。
PeriMasto PeriMasto 这个写的不错,很实用,谢谢!
生产、质量及技术三个难兄难弟的关系 | 汽车质量人小馆 生产、质量及技术三个难兄难弟的关系 | 汽车质量人小馆 […] 附:《生产质量管理十六字精髓》(点击可查具体讲解) […]