【技术】一文读懂车载TSN以太网
背景
随着汽车智能化、网联化的不断发展,传统的以太网已经无法满足当前车载网络海量信息处理的需求,主要体现在数据的实时性、确定性传输方面。TSN(Time Sensitive Networking)协议在时间同步、服务质量和可靠性方面具有明显优势,在汽车网络上的应用也越来越广泛。
基本概念
01 IEEE 802
IEEE 802是1980年2月成立的专门研究局域网(LAN)和城域网(MAN)的标准委员会,它定义的服务和协议限定在OSI模型的最低两层(即物理层和数据链路层)。IEEE 802包括多个工作组,和汽车网络相关的最重要的两个工作组是IEEE 802.1和IEEE 802.3。
IEEE 802.1工作组主要研究LAN/MAN的体系结构,包括网络互联、网络管理、服务质量(QoS)、桥接(Bridging)和安全等。IEEE 802.1下辖多个任务组,TSN就是其中最重要的一个任务组。桥接是一个功能单元,负责连接IEEE 802网络,实现网络之间的数据转发和过滤,它和VLAN(虚拟局域网)同属于802.1Q任务组,是汽车以太网的重要组成部分。
IEEE 802.3规定了以太网MAC层协议及物理层的连线、电信号和技术规范。
02 以太网帧结构
以太网帧包括以太网MAC帧和8字节前导符帧头,其结构如下图所示:
可以计算出MAC帧长的范围是64字节~1518字节。在以太网帧的源MAC地址和类型之间插入4字节的VLAN Tag,就变成了VLAN帧,其结构由上图可知:
TPID(Tag Protocol ID)的值固定为0x8100,标识TSN网络;协议控制TCI:3bit PCP(Priority Code Point)标识流量优先级,1bit丢弃标识位,12bit VLAN_ID是VLAN网络的识别号。
TSN是符合IEEE802.1Q标准的VLAN,通过VLAN Tag中的PCP和VID定义数据流的不同优先级。VLAN是扩展的以太网帧,TSN的大部分标准和协议都是基于VLAN标签来实现的。
TSN定义
01 TSN由来
最初的以太网没有考虑信息的实时传输问题,也无法提供节点同步、定时、确定延迟和带宽分配等服务。最早对时间敏感提出需求的是在音视频业务上的应用,这就是AVB(Audio Video Bridging)技术的起源。2005年起,IEEE 802.1任务组开始研究AVB;2009年8月,成立了Avnu联盟,专门推动AVB的市场化和产品间的互操作性。
随着AVB技术的发展,它不再局限于专业影音领域,慢慢地开始涵盖汽车和工业领域。所以在2012年11月,AVB正式更名为TSN(Time Sensitive Networking)。
TSN协议是在IEEE 802.1标准框架下,基于特定需求制定的一组标准,旨在提供实时性和确定性服务,如有限延迟(Bounded low latency),低延迟变动(Low delay variation)和低丢包率(Low packet loss)。
02 TSN协议栈
TSN协议包括四个基本组件(components): 时间同步、有限延迟、高可靠性和资源管理。如下图所示:
时间同步协议主要包括IEEE 802.1AS和802.1AS-Rev。
有限延迟协议主要包括IEEE 802.1Qav(Credit Based Shaper)、802.1Qbv(Time Aware Shaper)、802.1Qch(Cyclic Queuing & Forwarding)、802.1Qbu & 802.3br(Frame Preemption)。
高可靠性主要是通过冗余和流量监管实现。冗余又包括数据冗余(802.1CB)、主时钟冗余和路径冗余(802.1AS-Rev)。流量监管协议是802.1Qci(Per-Stream Filtering and Policing)。
资源管理包括流预留协议(802.1Qat),TSN配置协议(802.1Qcc)等,主要针对动态网络,适用于灵活组网的应用环境。汽车网络相对比较稳定,所以一般没有相关协议需求。
03 TSN应用领域
TSN Profiles即TSN标准协议的使用规范,描述如何在特定应用下搭建TSN网络,并提供配置指导。主要包括以下几个领域:
其中协议名称前的P表明该协议规范还在进行中。
TSN主要标准介绍
01 IEEE 802.1AS
IEEE 802.1AS (Timing and Synchronization for Time-Sensitive Applications)即generalized Precision Time Protocol(gPTP),该时间同步协议由IEEE 1588-2008(PTPv2)发展而来,用于同步节点之间的时间。802.1AS和1588的主要区别是:802.1AS只采用802 MAC协议数据单元和地址进行通信,而1588可以支持二层到四层的通信方式。
802.1AS的时间同步主要是通过发送和接收相关报文实现的,报文主要包括5种:Sync、Pdelay_Req、Pdelay_Resp、Follow_UP、Pdelay_Resp_Follow_UP。基本原理如下:
1)首先通过手动配置或者BMCA算法确定GrandMaster时钟;
2)GrandMaster时钟周期性发送Sync和Follow_Up报文,从而为各从节点本地时钟提供主时钟基准。如下图所示:
要实现从节点时钟与GrandMaster时钟的同步,还需考虑三个方面的因素:
1)时钟频率误差,是指从节点时钟与GrandMaster时钟的频率很可能是不同的,采用累积计算相邻节点时钟频率比值(NeighborRateRatio)的方法,将本地时基(Timebase)换算成GrandMaster时基。例如,GM时钟频率为1MHz,相邻从节点A的时钟频率为1.2MHz,那么对于A节点来说NeighborRateRatio就等于1.2。
2)链路延迟,是指两个节点间的通信链路单方向传输所需时间。采用P2P (Peer-to-Peer)测量机制,测定4个精确时间戳,计算链路延迟(MeanLinkDelay)。如下图所示,MeanLinkDelay = [(T2-T1)+(T4-T3)]/2。如下图所示:
3)驻留时间,是指报文从端口进来到出去所用的时间,消除办法是在转发出的Follow_Up报文中的correctionField里面记录这个时间,在其他节点收到该报文时,就可以计算出准确的时间偏移。
802.1AS的修订及增强版本P802.1AS-Rev(Enhanced gPTP),主要增加了GrandMaster时钟冗余和路径冗余,以及引入“一步法”(即“on the fly”)来加速TSN网络中的时间同步。
802.1AS能为汽车领域实现精确时间的测量,从而实现时间同步。在使用100ppm晶振时,可以保证7跳内的网络节点时间同步精度为1μs。
02 IEEE 802.1Qav
IEEE 802.1Qav 即 Forwarding and Queuing of Time Sensitive Streams
目的:保证普通的数据流不会干扰实时数据流的传输。
原理:首先通过VLAN tag 标签,将时间敏感流和普通流(best effort)分为不同队列,然后选择不同的算法,包括CBS(Credit Based Shaper)算法和严格优先级(Strict priority)算法。
CBS算法按照以下原则,进行数据传输:
1)当CBS队列的Credit≥0时,才可以发送帧;
2)通过配置idleSlope和sendSlope来累积和减少信用(Credit),即CBS队列传输帧时,Credit以sendSlope的速率减小。若信用为负数,且队列没有正在排队传输的帧,则根据idleSlope的值累积信用直至信用值达到0。如果队列信用为正数,但没有要发送的帧时,则将信用值设置为0。
3)idleSlope+sendSlope等于端口的带宽,单位是bps。假设一个百兆端口,idleSlope设置为30M,那么这30M带宽就属于该CBS队列,无法被其他队列打断。当该队列idle时可以被其他队列使用。
如下图所示:
为使CBS算法达到预期效果,基于CBS算法的流量类别的数值应高于基于严格优先级传输的流量类别。
03 IEEE 802.1Qbv
802.1Qbv 即 Time Aware Shaper
目的:基于时间同步,实现流量的调度和整形。
原理:在每个队列(queue)的后面添加一个门(gate),每个端口通过门控列表(gate control list)控制各门的开关,从而实现关键数据的定时发送。
802.1Qbv通过TAS为优先级较高的时间敏感型关键数据分配特定的时间槽,并且在规定的时间节点,网络中所有节点都必须优先确保重要数据帧的通过。
门控列表在交换机里进行配置,包括两部分内容:门的开关和间隔时间。汽车中的控制数据,可以通过这个门控队列来实现周期性的发送。此外,通过门控列表的开或关来控制数据的发或不发,可以有效地降低延迟变动。队列设计非常复杂,主要是门控列表的配置。
TAS强烈依赖于时间同步,因为如果控制列表不同步,就无法保证数据按照预期配置进行发送。
04 IEEE 802.1Qch
802.1Qch 即 Cyclic Queuing & Forwarding
目的:通过CQF流量整形方法,为时间敏感流提供确定的、易计算的延迟。
原理:数据流以周期方式沿网络路径依次传递;时间分成n个周期,每个周期持续时间相等(d),报文在路径上每经过一跳,所在传递周期依次递增。
当帧穿过网络时,引入的延迟完全由循环时间和跳数来确定,且不受拓扑结构和其他非时间敏感流的影响。所以最大延迟为(hop+1)*d,最小延迟为 (hop-1)*d。
时间敏感帧的处理:支持CQF模型的交换机只要在输出端口为时间敏感帧设置两个由时间门控制的队列Q0和Q1:
1)偶数时间槽,队列Q0保存输入端口接收的帧(接收模式,不发送帧),同时队列Q1发送在上一个奇数时间槽缓存的数据帧(发送模式,不接收帧);
2)奇数时间槽,两个队列的操作正好相反。
如下图所示:
CQF无法独立使用,可基于802.1Qci(PSFP)或802.1Qbv(TAS)来实现。
05 IEEE 802.1Qbu & 802.3br
802.1Qbu & 802.3br 即 Frame Preemption
目的:实现快速(Express)帧对可被抢占(Preemptable)帧的抢占。
原理:通过802.3br在MAC层实现express帧和preemptable帧交替传输的机制和帧格式。802.1Qbu利用802.3br,实现帧抢占机制。
802.3br通过 MAC 合并子层将eMAC和pMAC附加到协调子层,eMAC携带express traffic,pMAC携带preemptable traffic。链路两端需要同时支持802.3br才能打开帧抢占功能。如下图所示:
express帧中断preemptable帧的传输,需要满足以下条件:1)preemptable帧已经至少发送60字节;2)至少还有64(包括CRC)字节未发送。所以最小的不能被打断的preemptable帧是60+64-1=123字节。
Preemptable帧的恢复方法:802.3br通过改变8字节的前导符来实现帧的重组和还原。8字节前导符包括7字节Preamble 和1字节SFD(或SMD-Sx等),Express帧跟普通的以太网帧是一样的,SFD/SMD-E为0xd5,Preemptable帧与普通的以太网帧会有所区别,在Preamble后面,带的是SMD-Sx(Start), SMD-Cx(Continuation),mCRC是non-final fragment,表明该帧已被抢占。如下图所示:
802.1Qbu在交换机中创建一张表,用于建立不同帧的优先级和帧抢占的映射关系,从而将数据帧分为可被抢占帧(Preemptable Frame)和快速帧(Express Frame),快速帧可以对未传输完成的可被抢占帧进行抢占发送,以减少传输延迟。如下图所示:
06 IEEE 802.1CB
802.1CB即FRER:Frame Replication and Elimination for Reliability
目的:对关键性数据进行冗余传输,保证数据的可靠性。
原理:发送端发送数据时,FRER功能将数据包复制,沿不同路径传输;接收端接收数据时,FRER功能删除复制的数据包,只保留一个数据包。如下图所示:
终端节点(Talker或Listener)不强制要求支持FRER功能,可通过网桥来实现FRER功能,此时网桥称为Talker或Listener的代理。
07 IEEE 802.1Qci
802.1Qci即PSFP:Per-Stream Filtering and Policing
目的:PSFP通过流的过滤和监管,杜绝流量泛洪,避免恶意节点对网络的攻击。
原理:PSFP分为3个层级/功能
1)通过Filter识别和过滤数据流,依据Stream ID和Priority选择不同的过滤器,Stream ID通过802.1CB的一个功能来识别;
2)802.1Qci中也有Stream gate,与802.1Qbv中的gate区别是放在了队列前边,而802.1Qbv中的gate放在队列后面,同样都是基于门的开关来控制数据流量。对通过gate的帧赋予内部优先级值IPV(Internal priority value,取代原来的Priority),以确定traffic class;
3)对进入到Meter的数据进行流量监管,例如设置流量上限,超过上限就丢弃数据。监管算法不包含在802.1Q中,详见MEF10.3。
如下图所示:
TSN小结
TSN是由一系列相互独立的标准组成的,就像一个工具箱,需要网络设计者根据自身需求和协议特点灵活选择。
各标准既有独立性,又彼此关联,只有对各协议的基本原理深入理解,才可以最大限度地挖掘其功能和性能潜力。下图是TSN协议的一个汇总:
- |
- +1 赞 0
- 收藏
- 评论 0
本文由浩哥的小锤锤转载自智芯SEMI公众号,原文标题为:一文读懂车载TSN以太网,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
【技术】解析查找表算法、应用和实现
随着汽车智能化、网联化的发展,整车系统存在众多数据交换和信息路由。为了快速查找信息,需要使用查找表,对信息进行归类,创建信息查找模型,以便通过模型,可以快速查找到tag所对应的信息内容。本文ZHIXIN将介绍一些查找表的算法,和硬件电路上容易实现且常用的做法。
ZHIXIN(智芯)MCU选型表
ZHIXIN提供以下技术参数的MCU选型:主频64~160MHz,RAM8~256KB,GPIO26~125
产品型号
|
品类
|
内核
|
主频(MHz)
|
P-Flash(KB)
|
D-Flash(KB)
|
RAM(KB)
|
CAN-FD
|
UART
LIN
|
SPI
|
IIC
|
IIS
|
SENT
|
定时器
|
电机控制PWM
|
ADC
|
比较器
|
GPIO
|
工作环境温度(℃)
|
封装
|
信息安全
|
功能安全
|
Z20K148MCMQLT
|
MCU
|
M4F
|
160MHz
|
2048KB
|
128KB
|
256KB
|
8
|
6
|
4
|
2
|
2
|
0
|
16b,4x8-ch
|
2x8ch
|
12b,2x20ch
|
1x13
|
125
|
-40℃~125℃
|
LQFP144
|
AES128,TRNG
|
ASIL-B
|
选型表 - ZHIXIN 立即选型
Z20K11XMC勘误表
描述- 本文件为Zhixin Semiconductor公司发布的Z20K11xMC系列微控制器产品已知错误清单。内容包括产品类别、版本、设备标记、错误标题、版本和相关信息。针对不同版本的产品,详细列出了各种功能问题及其解决方案,如ADC、LIN、DMA、SPI、RTC、UART/LIN、I2C、SRMC、TIM、LIN、OSC、LPO、FLASH、SCM、DMA等模块的错误描述和解决方法。
型号- Z20K11XMC
Z20K14XMC数据表
描述- 本资料为Zhixin Semiconductor公司生产的Z20K14xMC系列微控制器的数据手册。该系列基于ARM® Cortex®-M4F核心,具备丰富的外设接口和功能,适用于多种嵌入式应用。
型号- Z20K148MCMQLT,Z20K146MCMHLT,Z20K14XMC,Z20K146MCMLLT,Z20K144MCMLLT,Z20K148MCMLLT,Z20K146MCMQLT,Z20K144MCMHLT
ZHIXIN汽车级微控制器选型表
ZHIXIN提供以下技术参数的汽车级MCU选型:SPI:1~4,IIC:1~2,SENT:1*2ch,GPIO:26~125.
产品型号
|
品类
|
SPI
|
IIC
|
TIMER
|
SENT
|
ADC
|
CMP
|
GPIO
|
Z20K118MCMHLT
|
车规MCU
|
3
|
2
|
16b,3x8-ch
|
1*2ch
|
12b,18-ch
|
1x11
|
55
|
选型表 - ZHIXIN 立即选型
Z20K11XMC数据表
描述- 本资料为Zhixin Semiconductor公司生产的Z20K11xMC系列微控制器的数据手册。手册详细介绍了该系列微控制器的特性、电气特性、I/O参数、外设操作要求与行为、热特性、封装信息等。该系列微控制器具备AEC-Q100 Grade-1认证,适用于汽车电子等领域。
型号- Z20K11XMC SERIES,Z20K116MCMFL,Z20K116MCMHL,Z20K118MCCFL,Z20K118MCCHL,Z20K118MCMFLT,Z20K116MCMMET,Z20K118MCMHLT,Z20K118MCMHL,Z20K116MCMHLT,Z20K114MCMME,Z20K114MCMMETF,Z20K118MCMMET,Z20K116MCMFLT,Z20K118MCMFL,Z20K114MCMFLT,Z20K116MC,Z20K11XMC,Z20K118MC,Z20K118MCMMETF,Z20K116MCMMETF,Z20K114MCMFL,Z20K114M,Z20K116MCMHLTF,Z20K118MCMFLTF,Z20K116MCMME,Z20K118MCMHLTF,Z20K116MCMFLTF,Z20K114MCMFLTF,Z20K114MCMMET
Z20K118MCMHLT Z20K116MCMHLT Z20K118MCMFLT Z20K116MCMFLT PCN(PCN-00000023)
描述- 智芯半导体发布PCN-00000023,宣布对其产品进行包装标签的更改。此次更改包括在标签中的MPN增加特殊字符,并更改标签格式。该变更旨在帮助制造部门识别产品版本,并便于客户和代理商区分批次版本。预计变更于2024年1月27日生效。
型号- Z20K116MCMHLT,Z20K118MCMFLT,Z20K116MCMFLT,Z20K118MCMHLT
【产品】主频320MHz的高端微控制器Z20K3xx系列,提供双核至6核多种选择,满足ASIL-B/D
智芯科技(ZHIXIN)推出基于ARM高端内核的高端微控制器Z20K3xx系列,主频320MHz,提供双核至6核多种选择,满足ASIL-B/D,适用于域控制器、区域控制器、动力总成、底盘与安全类的各种应用。
Z20K118MCMHLT/Z20K116MCMHLT PCN(PCN-00000028)
描述- 合肥智芯半导体有限公司发布PCN(产品变更通知),宣布其产品Z20K118MCMHLT/Z20K116MCMHLT将升级为Z20K118MCMHLTF/Z20K116MCMHLTF,封装厂由长电科技转移至通富通科。原产品将在库存用尽后停产。变更涉及性能优化和供应链稳定,对形状、尺寸、功能、品质、可靠性无影响,预计2025年5月22日生效。
型号- Z20K116MCMHLTF,Z20K118MCMHLTF,Z20K116MCMHLT,Z20K118MCMHLT
Z20K11XN数据表
描述- 本资料为Zhixin Semiconductor公司生产的Z20K11xN系列微控制器的数据手册。该手册详细介绍了Z20K11xN系列微控制器的基本特性、电气特性、外围设备操作要求和行为、时钟规格以及封装信息。
型号- Z20K116NCMME,Z20K118NCMHL,Z20K118NCMLL,Z20K118NCMLLT,Z20K116NCVFL,Z20K118NCVLL,Z20K118NCMFL,Z20K116NCVHL,Z20K11XN SERIES,Z20K116NCVME,Z20K114NCMFL,Z20K118NCVME,Z20K114NCVFL,Z20K11XN,Z20K118N,Z20K116N,Z20K114N,Z20K114NCMME,Z20K116NCVLL,Z20K118NCVFL,Z20K116NCMHL,Z20K118NCVHL,Z20K116NCMFL,Z20K116NCMLL,Z20K114NCVME,Z20K118NCMME
Z20K11XMC设备限制勘误表
描述- 本文件为Zhixin Semiconductor公司Z20K11xMC系列微控制器的错误清单,包含已知错误及其相关信息。文档概述了不同版本产品的错误情况,并提供了解决方案。主要涉及ADC、LIN、DMA、SPI、RTC、UART/LIN、I2C、SRMC、TIM等模块的功能问题。
型号- Z20K11XMC
移远通信率先通过ISO/SAE 21434汽车网络安全管理体系认证
近日,移远通信车载前装BU获得了ISO/SAE 21434汽车网络安全管理体系认证证书,表明移远通信车载前装BU的网络安全风险管理满足了产品从概念设计、开发、生产、运营到售后维护的全生命周期的要求,具备为汽车厂商和Tier1供应商提供高质量、高安全的合规车载产品和解决方案的能力。
包装标签变更(PCN-00000022)
描述- Zhixin semiconductor发布PCN-00000022,宣布对部分产品进行包装标签变更。变更将于2024年1月8日生效,涉及产品型号包括Z20K118、Z20K144、Z20K148和Z20A8300等。变更旨在帮助制造识别不同批次材料版本,便于客户或代理商识别和分离收到的批次版本,同时更易处理其批次。
型号- Z20K114MCMFLT,Z20K144MCMLLT,Z20K148MCMLLT,Z20K146MCMQLT,Z20K144MCMHLT,Z20K118MCMFLT,Z20K116MCMMET,Z20K118MCMHLT,Z20K148MCMHLT,Z20K148MCMQLT,Z20K146MCMHLT,Z20K118NCVLLT,Z20K146MCMLLT,Z20A8300AMFKT,Z20K116MCMHLT,Z20K118MCMMET,Z20K116MCMFLT,Z20K114MCMMET
电子商城
登录 | 立即注册
提交评论