简析车载以太网TSN标准

2023-05-16

众所周知,通用以太网是以非同步方式工作的,网络中任何设备都可以随时发送数据,因此在数据的传输时间上既不精准也不确定;同时,广播数据或视频等大规模数据的传输,也会因网络负载的增加而导致通讯的延迟甚至瘫痪。因此,通用以太网技术仅仅是解决了许多设备共享网络基础设施和数据连接的问题,但却并没有很好的实现设备之间实时、确定和可靠的数据传输。

最初,以奔驰为首的德国公司在2000年发明了Flexray总线来解决问题,今天TSN标准里最核心的时间触发机制和无缝冗余理念都来自Flexray,但Flexray传输速率最高仅20Mbps,远远不能满足完全无人驾驶的要求,但对于L2级自动驾驶则绰绰有余,这也是奔驰和宝马对TSN不太感冒的原因之一,Flexray可以看做轻量级的TSN。

2006年,IEEE802.1工作组成立AVB音频视频桥接任务组,并在随后的几年里成功解决了音频视频网络中数据实时同步传输的问题。这一点立刻受到来自汽车和工业等领域人士的关注。2012年,AVB任务组在其章程中扩大了时间确定性以太网的应用需求和适用范围,并同时将任务组名称改为现在的TSN任务组

TSN其实指的是在IEEE802.1标准框架下,基于特定应用需求制定的一组“子标准”,旨在为以太网协议建立“通用”的时间敏感机制,以确保网络数据传输的时间确定性。同时利用数据整形,确保延迟达到微秒级(一般每桥不超过250微秒),利用FrameReplication and Elimination帧复制和消除,确保无论发生链路故障、电缆断裂以及其他错误,均能强制实现可靠的通讯。此选项确保关键流量的复本在网络中能以不相交集的路径进行传送,只保留首先到达目的地的任何封包,从而实现无缝冗余,达到超高的可靠性,这对无人驾驶尤其重要。

同时还有灵活的资源管理。TSN就仅仅是关于以太网通讯协议模型中的第二层,也就是数据链路层(更确切的说是MAC层)的协议标准。请注意,是一套协议标准,而不是一种协议,就是说TSN将会为以太网协议的MAC层提供一套通用的时间敏感机制,在确保以太网数据通讯的时间确定性的同时,为不同协议网络之间的互操作提供了可能性。

TSN标准集合一览

 

状态分4种,分别是已公开、工作组(WG)、任务组(TG)和倡议(Sponsor)。有关汽车工业的除P802.1DG外,都已公开。不过这并不妨碍TSN在汽车领域的应用。只要有TSN的核心组件即可投入使用,TSN有4个核心组件,分别是时间同步、低延迟、超高可靠性和特定资源管理。

车载TSN的6大核心标准

01时间同步

所有通信问题均基于时钟,确保时钟同步精度是最为基础的问题,TSN工作组开发基于IEEE1588的时钟,并制定新的标准IEEE802.1AS-Rev。它用于实现高精度的时钟同步。对于TSN而言,其最为重要的不是“最快的传输”和“平均延时”,而是“最差状态下的延时”—这如同“木桶理论”,系统的能力取决于最短的那块板,即,对于确定性网络而言,最差的延时才是系统的延时定义。

IEEE1588 协议,又称 PTP( precise time protocol,精确时间协议),可以达到亚微秒级别时间同步精度,于 2002 年发布 version 1,2008 年发布 version 2。它的主要原理是通过一个同步信号周期性地对网络中所有节点的时钟进行校正同步,可以使基于以太网的分布式系统达到精确同步,IEEE 1588PTP时钟同步技术也可以应用于任何组播网络中。

IEEE1588 协议的同步原理,所提出的 Delay Request-Response Mechanism(延时响应机制)如上图,IEEE1588 把所涉及到的报文分为事件报文和通用报文,分类依据是:是否在收发报文时需要记录精确时间戳,根据上文中所描述的几种报文,可以进行如下分类:

  • 事件报文(event message) < 收发时候需要记录精确时间戳 > :sync /Delay_Req/Pdelay_Req/Pdelay_Resp。
  • 通用报文 (general message)< 收发时候不需要几率精确时间戳 > :Announce/Follow_up/Delay_resp /Pdelay_Resp_Follow_Up/Magnament/Siganling。Pdelay_Req /Pdelay_Resp/ Pdelay_Resp_Follow_Up通过peer延迟机制测量两个时钟端口之间的链接延时,链接延时被用来更正Sync和Follow_Up报文中的时间信息。

 IEEE802.1AS-Rev是为以太网第二层所定义的1588规范加以扩展,它的扩展包括了所有域常用peer延迟服务,支持精细时间测量FTM,对链路聚合(802.1AX)的支持,改善的使用范围-包括1步时间戳标准化处理以及针对长链、环的支持,更好的响应能力,这包括了更快的主站交互、降低BMCA收敛时间。另外IEEE802.1AS-Rev支持了多域的同步信息传输以及冗余支持能力(可配置冗余路径和冗余主站)。对无线网络采用时间测量提供更好的支持。IEEE802.1AS-Rev的制定得到了AVNU联盟的大力支持。

AVNU联盟由英特尔、思科和三星哈曼发起,是EAVB协议的主要提供者,AVNU联盟为IEEE802.1AS-Rev的实施提供协助,能够提供完整的协议栈和测试认证,国内加入AVNU的有恒润科技、中国信通院、德赛西威、赫千科技、东信创智、怿星科技

同时在新出的自适应Autosar也对IEEE802.1AS-Rev做了特别支持。也就是说你要用TSN,恐怕是离不开自适应Autosar的。

02低延迟

汽车控制数据可以分为三种,Scheduled Traffic、Reserved Traffic、Best-effort Traffic。

ScheduledTraffic如底盘控制数据,没有任何的妥协余地,必须按照严格的时间要求送达,有些是只需要尽力而为的如娱乐系统数据,可以灵活掌握。

汽车行业一般要求底盘系统延迟不超过5毫秒,最好是2.5毫秒或1毫秒,这也是车载以太网与通用以太网最大不同之处,要求低延迟。

在TSN标准里,数据则被分为4级,最高的预计延迟时间仅为100微秒

低延迟的核心标准是IEEE802.1Qbv时间感知队列。

通过时间感知整形器(Time Aware Shaper,TAS)使TSN交换机能够来控制队列流量(queued traffic),以太网帧被标识并指派给基于优先级的VLAN Tag,每个队列在一个时间表中定义,然后这些数据队列报文在预定时间窗口在出口执行传输。其它队列将被锁定在规定时间窗口里。因此消除了周期性数据被非周期性数据所影响的结果。这意味着每个交换机的延迟是确定的,可知的。而在TSN网络的数据报文延时被得到保障。

TAS介绍了一个传输门概念,这个门有“开”、“关”两个状态。传输的选择过程-仅选择那些数据队列的门是“开”状态的信息。而这些门的状态由网络时间进度表network schedule进行定义。对没有进入network schedule的队列流量关闭,这样就能保障那些对传输时间要求严格的队列的带宽和延迟时间。TAS保障时间要求严苛的队列免受其它网络信息的干扰,它未必带来最佳的带宽使用和最小通信延迟。当优先级非常高时,抢占机制可以被使用。

网络进行配置时队列分为Scheduled Traffic、Reserved Traffic、Best-effort Traffic三种,对于Schedule Traffic而言则直接按照原定的时间规划通过,其它则按优先级,

Best-effort Traffic通常排在最后。Qbv主要为那些时间严苛型应用而设计,其必须确保非常低的抖动和延时。Qbv确保了实时数据的传输,以及其它非实时数据的交换。

对于特别重要的数据,TSN规定了一个抢占机制,它由802.1Qbu/802.3br共同构成。对于IEEE802.1Qbu的抢占而言,正在进行的传输可以被中断,报文按等级可被分为可被抢占和抢占帧,抢占生成框架,最小以太网帧受到保护的,127字节的数据帧(或剩余帧)不能被抢占。IEEE802.1br定义了,设计了快速帧的MAC数据通道,可以抢占Preemptable MAC的数据传输。IEEE802.3br也同样可以与IEEE802.1Qbv配合进行增强型的数据转发。

03高可靠性

 TSN中保证高可靠性主要依靠802.1CB标准。这也是无人驾驶必须用TSN的主要原因,也只有TSN能让整个系统达到功能安全的最高等级ASIL D级。同样,与自适应AUTOSAR的捆绑程度也比较高。

众所周知,L4级无人驾驶需要一个冗余处理器,但是主处理系统和冗余处理系统之间的通讯机制如何建立?这就是802.1CB的用武之地了。802.1CB是两套系统间的冗余,芯片之间的冗余还是多采用PCIE交换机的多主机fail-operational机制,两者有相似之处。

对于非常重要的数据,802.1CB会多发送一个数据备份,这个备份会沿着最远离主数据路径交集的路径传输。如果两个数据都接收到,在接收端把冗余帧消除,如果只接受到一帧数据,那么就进入后备模式。在ISO/IEC 62439-3中已经定义了PRP和HSR两种冗余,这种属于全局冗余,成本较高,802.1CB只针对关键帧做冗余,降低了成本。802.1CB标准的制定主要依靠思科和博通。

802.1CB也可以缩写为FRER。

FRER不仅能提供双失效冗余,也可以提供多失效冗余。

802.1CB也有简单的失效原因分析机制

04网络资源管理和802.1Qci

TSN的网络资源管理主要标准是802.1Qcc。这个与车载以太网没有关联,主要用在专业音视频网络领域。802.1Qcc用于实现对网络参数的动态配置,以满足设备节点和数据需求的各种变化;

802.1Qci保证无人车网络安全的入口管理

802.1Qci主要为防止网络攻击和流量过载设计,又称之为Ingress Policing,它对每个流量都进行过滤和管理,简称PSFR,数据流滤波器包括数据ID、优先权、滤波值、Meter(计量)ID、计数器。流程图如下

802.1Qci专门对付DDoS这样的网络攻击,假如一个数据流流量突然增大,有可能挤压另一个数据流的带宽时,入口管理政策会将数据流整形,强制回到数据流爆发前的状态。

此外,802.1Qci还可以对付ARP欺骗攻击,ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。802.1Qci可以识别这种欺骗,并阻止错误信息的发送。

05车载TSN的具体应用

TSN并未全部完成,由于芯片的开发周期通常都要3-4年,目前只要支持TSN标准中最核心的Q802.1AS即可算支持TSN标准。

目前主要有三款车载TSN交换机芯片,一片是Marvell的88Q5050,用在英伟达自动驾驶旗舰Pegasus上,另一片是NXP的SJA1105TEL。88Q5050支持802.1Qav/Qbv,802.1AS。SJA1105TEL还支持802.1Qci。还有博通的BCM53162,和SJA1105TEL一样,除了支持持802.1Qav/Qbv,802.1AS,还支持802.1Qci 。支持TSN全部关键协议的芯片预计要等到2022年。

英伟达旗舰自动驾驶平台Pegasus

上图为88Q5050的内部框架图,88Q5050拥有4个固定端口,4个可设置端口,最高支持千兆以太网,尺寸14mm*20mm。

上图为 SJA1105TEL的内部框架图,只支持5口,价格最低,功耗最低,尺寸最小,只有12mm*12mm。用在自动驾驶领域可能不够,需要使用多片SJA1105TEL。NXP针对无人驾驶推出的开发平台BlueBox就用了3片。

NXP BlueBox内部框架图^

博通的BCM53162支持的带宽最高,最高可达万比特以太网10GbE。

上图为BCM53162内部框架图,接口最丰富。不过BCM53162的功耗也最高,价格也最高,尺寸也最大,为19mm*19mm,最高运行工作温度上限为85度,NXP和Marvell的都可以达105度。

简析车载以太网TSN标准

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

简析车载以太网TSN标准 的相关文章

  • 为什么特斯拉自动驾驶汽车不需要激光雷达

    光 糖果Autosar 2022 02 14 08 08 特斯拉仪表板 打造全自动驾驶汽车所需的技术堆栈是什么 xff1f 公司和研究人员对该问题的答案存在分歧 自动驾驶的方法范围从相机和计算机视觉到计算机视觉和高级传感器的组合 特斯拉一直
  • 架构与中台

    做架构工作最重要的是练好内功 什么是内功 xff1f 大局观 认知层次 xff0c 思维方式 xff0c 方法论 概念抽象能力等等都属于内功 零件设计主外 xff0c 架构设计主内 零件设计五花八门 xff0c 紧随新技术新热点 架构设计苦
  • UDS服务简易教程

    本文主要以简单易懂的描述向大家介绍CAN诊断基础知识 xff0c 本文主要介绍CAN诊断中UDS服务的基本内容 xff0c 主要参考文件ISO15765 2 ISO15765 3 ISO14229 1 xff0c 读完本篇文章后希望进一步了
  • 五万字读懂c++

    const作用 修饰变量 xff0c 说明该变量不可以被改变 xff1b 修饰指针 xff0c 分为指向常量的指针 xff08 pointer to const xff09 和自身是常量的指针 xff08 常量指针 xff0c const
  • 在AP_EM上的骚操作

    最近大家都对AP兴趣很大 xff0c 也不知CP大家玩转了木有 xff0c 反正咱也不知道咱也不敢问 xff0c 这次楼主就扯下AP中的状态管理SM和执行管理EM部分 言归正传 xff1a AP的应用 xff0c 在通过工具配置后 xff0
  • 编译型语言和解释型语言的区别

    我们编写的源代码是人类语言 xff0c 我们自己能够轻松理解 xff1b 但是对于计算机硬件 xff08 CPU xff09 xff0c 源代码就是天书 xff0c 根本无法执行 xff0c 计算机只能识别某些特定的二进制指令 xff0c
  • 什么情况下需要加extern “C“,通俗易懂

    下午看了一些关于extern 34 C 34 的博客 xff0c 都写得很啰嗦 xff0c 看来看去还是有一些细节不怎么了解 xff0c 自己开了个程序测试了一下 xff0c 总结了什么情况下需要加入extern C 首先c 43 43 和
  • POSIX介绍

    POSIX表示可移植操作系统接口 xff08 Portable Operating System Interface of UNIX xff0c 缩写为 POSIX xff09 xff0c POSIX标准定义了操作系统应该为应用程序提供的接
  • Linux crond 命令使用实例

    每一分钟调用一次 ls l etc gt tmp to txt crontab e 进行编辑 1 ls l etc gt tmp to txt 1 代表每一分钟执行一次 1 第二个 代表一天中的某个小时 案例2 xff1a 写一个脚本 vi
  • DoIP诊断技术一点通

    DoIP的全称是Diagnostic Over Internet Protocol xff0c 即基于TCP IP协议的诊断协议 随着以太网技术在车载领域的应用范围逐步扩大 xff0c 越来越多的控制器支持通过以太网进行诊断通信 xff0c
  • 嵌入式必备基础一

    嵌入式必备知识 Oliver H的博客 CSDN博客 一 进程与线程 1 1 进程和线程的概念 1 1 1 什么是进程 线程 xff0c 各自有什么优点 概念 xff1a 进程是对运行时程序的封装 xff0c 是系统进行资源调度和分配的的基
  • 嵌入式基础二——C/C++

    二 C C 43 43 2 1 c和c 43 43 区别 概念相关面试题 2 1 1 new和malloc的区别 属性 xff1a new delete是C 43 43 关键字 xff0c 需要编译器支持 malloc free是库函数 x
  • ​Linux 黑话解释:什么是 POSIX?

    POSIX xff0c 你肯定在各种在线论坛和文章中 xff0c 听到过这个缩写 xff0c 或读到过关于它的信息 程序员和系统开发人员似乎最关心这个问题 它听起来很神秘 xff0c 虽然有很多关于这个主题的好资料 xff0c 但一些讨论区
  • 科研进阶篇——论文完结

    终于完成了人生的第一篇学术论文 xff0c 对这次的科研做个总结 xff0c 画上一个完美的问号 xff0c 让我们快乐的继续进阶 xff0c 投了会议 xff0c 中了的话应该会推荐到CCF C期刊 虽然还没出结果 xff0c 还是为自己
  • AP AUTOSAR 平台设计总体框架全解

    AP AUTOSAR 平台设计总体框架全解 01 简介 1 1内容 本规范描述技术范围和方法 AP的背景 逻辑和物理视图的架构 xff0c 是AUTOSAR自适应平台设计的总体框架 全文32000余字 xff0c 建议收藏阅读 02 技术范
  • 谈谈Bootloader自更新

    目录 01 Supplier Boot SB 43 Customer Boot CB 02 将Boot先放到RAM中运行 xff0c 然后更新Boot的Flash区域 03 两个CB 43 minBoot 04 小结 汽车控制器的BootL
  • E2E通信保护协议学习笔记

    E2E通信保护协议学习笔记 最近在做功能安全方面工作 xff0c 想了解E2E保护的问题 本文试着说明两个点 xff1a 功能安全需要考虑通信失效造成的影响 xff0c 因此E2E通信保护协议被提出 xff0c 以满足功能安全要求 xff1
  • TSN(时间敏感网络)介绍

    1 前言 TSN是时间敏感网络 xff08 Time Sensitive Network xff09 的英文缩写 xff0c 是IEEE 802 1 TSN工作组开发的一系列数据链路层协议规范的统称 xff0c 用于指导和开发低延迟 低抖动
  • 汽车OTA是个什么鬼?

    OTA xff1a Over the Air Technology 这描述的是手机吧 xff01 不过一开始的手机也是不可以直接OTA的 1997年之前所有汽车都是一个独立的机械个体 xff0c 一个方向盘 xff0c 一组踏板 xff0c
  • Hypervisor简介

    从头开始了解和使用Hypervisor xff08 第4部分 xff09 嘶吼 RoarTalk 回归最本质的信息安全 互联网安全新媒体 4hou com 根据 Hypervisor 的不同类型 xff0c 我们将虚拟化分为I 型和 II

随机推荐

  • 使用repo下载google源码,跟编译 ,遇到的错误解决

    最近一直想下载android的源码看看 xff0c 但是按照官方的文档下载 xff0c 遇到了问题 在执行的curl http commondatastorage googleapis com git repo downloads repo
  • S32V234 Linux yocto开发环境搭建

    一 主机环境 主机 xff1a Ubuntu 16 04 5 64bit S32V bsp infomation xff1a Bsp version auto yocto bsp 19 0 Linux Kernel version 4 13
  • NXP S32G2开发

    https blog csdn net bigzhizhi article details 123069235 导言 Linux BSP是一组源代码 xff0c 可用于为受支持的板卡创建U Boot引导加载程序 Linux内核映像 根文件系
  • 简单解决Please install the gcc make perl packages from your distribution问题 and VirtualBox安装增强功能失败

    在vbox安装ubantu增强功能 xff0c 出现下面这种情况 xff1a Please install the gcc make perl packages from your distribution 在这里插入图片描述 把需要的包都
  • 图形学就业方向&&春招部份纪实

    以下分几个模块分别介绍图形学 xff1a 1 图形学未来方向以及需要的技术 2 个人找工作情况 xff0c 具体介绍 图形学未来方向以及需要的技术 最近GAMES论坛搞了一个计算机图形学走进高校企业活动 xff0c 可以简称图形学招聘活动
  • SOME/IP 消息的布局

    1 SOME IP 消息的布局 前面两篇文章 SOME IP概述 分层结构及要实现的需求 SOME IP概述2 SOME IP的主要中间件功能 43 SOME IP报文PDU的封装 讲述了SOME IP的基本概念 需求及架构在以太网的4层模
  • 什么才是软件定义汽车?

    Software Defined Vehicle The Eclipse Foundation 导读 xff1a 移动出行时代 xff0c 汽车逐渐由机械驱动的硬件向软件驱动的电子产品过渡 xff0c 软件定义汽车趋势愈发明显 这一过程中汽
  • 一文看懂四大汽车总线:LIN、CAN、FlexRay、MOST

    前言 随着汽车工业的发展 xff0c 汽车各系统的控制逐步向自动化和智能化转变 xff0c 汽车电气系统变得日益复杂 传统的电气系统大多采用点对点的单一通信方式 xff0c 相互之间少有联系 xff0c 这样必然会形成庞大的布线系统 据统计
  • 浅谈ASIL: 汽车安全性等级

    目录 ASIL 表示汽车安全性等级 ASIL的确定 1 严重度 2 暴露度 3 可控度 ASIL 故障分析手段 ASIL 表示汽车安全性等级 这是 ISO 26262 标准针对道路车辆的功能安全性定义的风险分类系统 ASIL 根据伤害的可能
  • SOA中间件DDS(数据分发服务-Data Distribution Service)

    DDS协议 高可靠性 实时性 DDS Data Distribution Service for Real Time Systems xff0c 是一种面向实时系统的数据分发服务 xff0c 由OMG提供 xff0c 它的权威性可以证明该协
  • MQTT与DDS的比较

    MQTT VS DDS MQTT协议 三种服务质量 QoS xff1a 最多一次 Sender 发送的一条消息 xff0c Receiver 最多能收到一次 xff0c 也就是说 Sender 尽力向 Receiver 发送消息 xff0c
  • R-Car H3系列SOC芯片与R-Car M3 R8A77961JBP0BA区别

    RENESAS推出的 xff1a R Car H3 系列 SOC 芯片 R8A77951JA00BA xff03 YJ1 xff0c R Car M3 系列 SOC 芯片 R8A77960JA60BG xff03 YJ5 在内核上 xff1
  • PTP(IEEE1588),TSN时间同步方法

    本文首先简要介绍主流的时间同步方式GNSS xff0c NTP xff0c PTP 然后通过NTP和PTP对比 xff0c 解释PTP性能更优秀的原因 xff1b 并对算法公式进行了推导 0 Why need time synchroniz
  • AUTOSAR的四种功能安全机制

    虽然AUTOSAR不是一个完整的安全解决方案 xff0c 但它提供了一些安全机制用于支持安全关键系统的开发 本文用于介绍AUTOSAR支持的四种功能安全机制 xff1a 内存分区 xff08 Memory Partitioning xff0
  • libstdc++版本冲突的解决

    类似的问题出现在测试环境部署过程 xff0c 当编译完成该前端解析器后 xff0c 由于其依赖一些库文件 xff0c 包括系统库文件libstdc 43 43 so 6 及 libc so xff0c 这都是系统至关重要的库文件 但是不同系
  • 3D打印——CLIP技术之更快速更高表面质量

    论文 Gradient light video projection based stereolithography for continuous production of solid objects 阅读 论文共分为6个章节 xff1a
  • 汽车上DTC是什么意思?DTC是什么故障

    DTC的全称是 Diagnostic Trouble Code xff0c 意为诊断故障代码 如今 xff0c 汽车很多故障都是通过故障代码去诊断的 xff0c 例如汽车底盘检测 车身及附件检测 汽车污染物与噪声处理部件等相关检测等 目的旨
  • 人生算法——读书笔记

    跨越出生和运气 xff0c 实现富足和自由 用概率思维 做好决策 人生算法九段 广义而言大自然有两个重要的算法 xff0c 一个是进化 xff0c 一个是大脑 现实中我们虽然拼命思考 xff0c 但是极少思考自己的思考 围绕认知的飞轮 xf
  • Linux 上功能强大的网络工具 tcpdump 详解

    tcpdump 是用于捕获传入和传出流量的网络实用程序 这是您需要了解的有关在 Linux 上使用 tcpdump 的所有信息 Linux 配备了大量的网络实用程序可供选择 tcpdump 是一种功能强大的网络工具 xff0c 如果您需要对
  • 简析车载以太网TSN标准

    众所周知 xff0c 通用以太网是以非同步方式工作的 xff0c 网络中任何设备都可以随时发送数据 xff0c 因此在数据的传输时间上既不精准也不确定 xff1b 同时 xff0c 广播数据或视频等大规模数据的传输 xff0c 也会因网络负