赵晓敏,王 腾,李宗辉,宫新乐,黄 晋,魏 鹏
(1.合肥工业大学 汽车与交通工程学院,合肥 230009;2.北京交通大学 计算机与信息技术学院,北京 100044;3.清华大学 车辆与运载学院,北京 100084;4.天津市宇航智能装备技术企业重点实验室,天津 300451)
时间敏感网络(Time-sensitive Networking,TSN)是由IEEE 802.1TSN小组制定的一系列基于以太网的标准协议。TSN通过一系列协议为网络提供高带宽、低时延以及确定性的端到端服务[2],因此有望成为满足未来汽车通信架构需求的首选技术。
目前TSN的标准化工作还未完成,仍有部分协议处于草案阶段,而针对TSN的研究工作业已展开。Zhou等[3]扩展了IEEE802.1Qbv中基于可满足性模理论(Satisfiability Modulo Theories,SMT)的门控制列表(Gate Control Lists,GCLs)调度模型并进行了评估,验证了TSN在大数据流、确定性和低延迟需求的汽车网络中的潜力。Dürr等[4]引入了无等待数据包调度问题(No-wait Packet Scheduling Problem,NW-PSP)对时间敏感网络中的调度进行建模,并将其映射到作业研究领域的一个著名问题——无等待车间调度问题(No-wait Job-shop Scheduling Problem,NW-JSP),提出了一种禁忌搜索算法来高效地计算调度问题,并提出了一种调度压缩技术来减少调度中的保护带数量。Kim等[5]针对车内实时数据传输提出了一种启发式的TSN调度算法,包括一种数据流在链路上的分配方法和一种减少端到端时延的调整过程,能够在可接受的时间内生成调度时间表。
同时,TSN作为车载网络也面临一些挑战。现代汽车是一个高度互联的分布式系统,具有上百个电子控制单元(Electronic Control Unit,ECU)和2 000多个信号[6],这些ECU和信号执行各种汽车功能,如何保证在大量数据流的情况下网络中不同应用程序的实时要求,是TSN所面临的主要挑战。此外,当前汽车网络是一个复杂的异构网络,各种类型的数据共存,因此,在应用TSN网络时,时间敏感流量和非时间敏感流量可能共享同一以太网链路,如何最大程度地减少网络中非时间敏感流量对时间敏感流量的干扰以及突发数据流和周期数据流的调度是TSN面临的又一挑战。随着TSN相关硬件的普及,以太网将很快成为车内通信的骨干,但是,从成本和风险的角度考虑,从现有架构突然转向以太网架构是不太可能的,采用由以太网为主干网和传统网络组成的异构网络将有助于这一过渡,因此,实现TSN与现有网络的融合尤其是与CAN网络的桥接,也是所面临的一个主要问题。在工业应用中,TSN面临的一个核心挑战是在设计、分析和仿真阶段执行TSN网络配置,同时考虑应用程序的时间要求[7]。
本文针对智能网联汽车应用场景设计了基于TSN的下一代车载网络体系架构,构建了TSN的调度模型并对车载数据流进行了调度,最后验证了所提出的下一代车载网络的可行性。
智能网联汽车(Intelligent Connected Vehicle,ICV)已成为汽车行业的发展方向,软件定义汽车的理念成为共识。传统汽车的分布式电子电气架构(Electronic/Electrical Architecture,EEA)受限于算力不足、通信带宽低、软件升级不便等,不能满足ICV发展的需求,EEA升级已成为ICV发展的关键,车辆架构正朝着基于通用计算平台的面向服务架构的方向发展。
传统汽车多采用分布式EEA。这种分布式架构采用点对点的连接方式,即每个模块都有一个单独的ECU,各ECU之间一对一地进行通信。在汽车发展初期,汽车功能单一,分布式架构能够满足汽车通信的需求。但随着ICV的发展,人们对汽车的需求越来越多,汽车EEA也必须升级,以支撑ICV的发展。ICV对车辆EEA的需求主要体现在以下几个方面:
(1)高带宽、低时延
无人驾驶、高级辅助驾驶(Advanced Driver Assistance System,ADAS)、信息娱乐系统、智慧交通等技术需要大量高清摄像机、激光雷达、各种传感器、远程通信和信息娱乐设备的支持,从而增加了车内的数据流量。据了解,一个典型的现代中型车大约有40个电子子系统、50~100个微处理器和 100多个传感器[8]。文献[9]指出来自车内摄像头和信息娱乐设备的数据流几乎呈指数增长。这些变化趋势对带宽和端到端时延提出了更高要求。
(2)高算力
随着人工智能技术在自动驾驶领域的应用,车载控制器芯片的计算能力面临严峻挑战。有数据表明,自动驾驶的等级每提高一个级别,域控制器的算力将提高一个数量级。目前,L3级自动驾驶需要24个TOPS的算力,L4级自动驾驶需要4 000+TOPS的算力[10]。人工智能对算力的巨大需求将是对汽车EEA的一大考验。
ICV的发展推动了汽车EEA的变革。目前,许多企业已经推出了基于未来汽车功能需求的下一代EEA解决方案。2017年,特斯拉在其量产车型Model3中首次使用了域集中式EEA。该架构由自动驾驶及娱乐控制模块、右车身控制器和左车身控制器组成。自动驾驶及娱乐控制模块负责控制摄像头和雷达传感器等,右车身控制器集成自动泊车、座椅控制、扭矩控制等功能;左车身控制器集成了车内照明、转向柱控制等功能。两个车身控制器还通过CAN总线与执行单元、转向控制和防抱死系统等执行器相连,可直接操作车辆。丰田公司提出了一种“中央集中+区控制器”(Central&Zone)架构,根据物理空间将整车分为若干对称区域,并为每个区域集成高性能的控制器。该架构主要包括三个部分:中控ECUs负责计算和信息处理;跨区域通信网采用车载以太网作为主干网,提供高带宽的通信服务;跨区域控制器作为某一区域的控制单元,构成了汽车中央计算单元的神经网络。大众新一代EEA采用跨域融合架构,由基础服务单元、智能座舱域控制器和自动驾驶域控制器组成,虽然不是中央集中式的架构,但也降低了系统的复杂性。华为提出了“C-C”架构,主要分为智能座舱、整车控制和智能驾驶三个域控制器,为跨域融合架构方案,具有软件可升级、硬件可替换、传感器可扩展等特点。
根据上述EEA的相关研究,本文设计了基于TSN的“多域控制器+区域控制器”相结合的EEA,如图1所示。
图1 基于以太网的电子电气架构
该架构包括域控制器、传感器、执行器、区域控制器等。自动驾驶域控制器(Domain Controller 1)通过车载以太网与激光雷达、毫米波雷达、摄像头相连接。底盘区域相关的控制单元,如前、后电机控制器,车身稳定系统,制动器,电池管理系统等,与底盘域控制器(Domain Controller 2)相连,实现底盘、动力控制。座舱域控制器(Domain Controller 3)连接转向柱组合开关、组合仪表等控制单元。车身域控制器(Domain Controller 4)通过与区域控制器(Zone Controller 1~5)或直接与ECU相连实现车门、座椅、车灯、空调等系统的控制。其中,区域控制器按物理位置分组,连接附近的外围组件。区域控制器只完成转发,不完成处理任务,处理将在域控制器中完成。在通信协议方面,整车采用TSN协议进行数据交换,满足高带宽的速率要求,同时有利于系统的扩展和IT、OT的融合。
TSN面临的主要挑战是正确有效地调度ECU上的应用程序和网络中的时间触发消息[6]。目前,TSN主要采用离线生成的调度表来调度时间触发数据流[11]。本节针对TSN调度问题建立模型,并利用SMT实现网络中时间触发流的传输调度,以满足车载网络实时性和确定性的要求。
基于所设计的EEA,绘制了如图2所示的车载网络通信拓扑,各节点名称如表1所示。其中,不同的节点在延迟性、鲁棒性等方面的传输需求不尽相同。对于不同功能域及不同类型的数据传输,其传输需求如表2和表3所示。
图2 车载通信系统网络拓扑模型
表1 车载通信系统网络节点名称
表2 不同域数据传输需求
表3 不同类型数据传输需求
TSN网络拓扑可以用图G(V,E)表示[12],其中,V表示一组节点,E表示网络中链接节点的边。连接两个顶点的边定义了两个方向的数据链路,用L表示数据链路构成的集合:
∀v1,v2∈V:(v1,v2)∈E
⟹[v1,v2]∈L,[v2,v1]∈L。
(1)
式中:(v1,v2)表示无向数据连接;[v1,v2]表示从v1到v2的有向数据链接;[v2,v1]表示从v2到v1的有向数据链接。一系列数据流链路构成了数据通路。用p表示从发送端v1到接收端vr的数据通路:
p=[[v1,v2],…,[v(r-1),vr]]。
(2)
(3)
时间触发的调度最初在2010年由Steiner用线性约束进行建模[13],该模型从以下几个方面阐述了时间触发调度应满足的线性约束:
(1)无冲突约束
对于任意两条数据流fi和fj在同一时间内只能有一条数据流向数据链路[vk,vl]发送报文,否则会发生冲突:
(4)
式中:LCM(F.period)表示所有数据流周期的最小公倍数;a、b为整数。
(2)路径依赖约束
对任意的一条数据流fi,它在相邻的两条数据链路[vx,vj]、[vj,vy]上传输时,总是先到达节点vj,然后经转发后从节点vj发出。设pdelay[vx,vj]为节点vx的发送处理时间,ldelay[vx,vj]为数据链路[vx,vj]上的传播时延,该约束表示为
∀vl∈VL:∀pi∈vl:∀[vx,vj],[vj,vy]∈pi:
(5)
(3)缓存占用约束
对于TSN交换机,其硬件参数(内存大小、缓冲区深度等)会对交换机节点vj带来一组最大延迟时间约束:
∀vl∈VL:∀pi∈vl:∀[vx,vj],[vj,vy]∈pi:
(6)
式中:membound为常数,由交换机硬件参数决定。
(4)端到端时延约束
端到端时延约束描述了根据应用程序的要求,数据流fi允许的最大端到端时延为
(7)
式中:last(fi)表示数据通路中最后一个数据链路;first(fi)表示数据通路中第一个数据链路。
SMT是寻找公式满足性(对变量取值使得某个公式成立),很多形式化验证的问题可以转化成公式满足性问题。基于SMT的调度方法分为两个部分:一量生成调度约束并将它们添加到求解器的“逻辑语境”中,然后调用求解器。因此,对时间触发的程序设计是由这些阶段相互决定的。对于本文,时间触发点调度过程可用图3进行说明。
图3 时间触发调度器原理概述
图3中,调度器为所有数据帧生成上述的调度约束,并将其添加到SMT求解器的“逻辑语境”中,然后调用SMT求解器来求解结果。当SMT求解器成功返回时,则满足了调度约束,并且可以通过适当的API函数访问返回结果(模型),该结果就是TT调度表。
车载网络协议的选择主要依据车载电子系统的应用特点、成本和技术限制。FlexRay主要是用于线控技术的车载网络协议,受成本影响,主要用于高档汽车。LIN总线是一种开放式的低成本、低带宽的串行通信标准,主要用作CAN总线的辅助子总线。MOST是一种专为车载多媒体应用而设计的数据总线,环形结构导致其容错能力有限,且其垄断性强,开发成本高。在所有车载网络协议中,CAN网络是应用最广泛的总线协议,覆盖了车辆的大部分应用。CAN总线的应用涵盖了故障诊断、仪表显示、电源、车身、动力和底盘控制等领域,是汽车的骨干网络。
本节主要对当前主流通信网络CAN网络与TSN网络进行对比,进一步说明TSN网络能够替代当前主流通信网络成为下一代车载网络。
在CAN网络中,从节点发送数据帧到数据帧发送完成有一个延迟时间,最坏传输条件下的延迟时间称为最长延迟时间。每个数据帧在总线上传输时都有实时性要求。一个数据帧所能承受的传输延迟时间的极限称为该数据帧的最大延迟时间,其计算公式为[14]
Rm=Wm+Cm。
(8)
式中:Wm是最坏情况下数据帧的最长等待时间,即竞争总线占用权的时间。最坏情况是当数据帧m想要发送时,网络中所有优先级比它高的数据帧都在争夺总线占用权,且当前网络中正在传输比它优先级低的所有数据帧中占用总线时间最长的一个。因此,最长等待时间Wm包括以下3项内容:一是在所有优先级低于数据帧m的数据帧中,传输时间最长的数据帧的总线占用时间;二是所有优先级高于m的数据帧的总线占用时间之和;三是总线上可能出现的错误帧的延迟时间。用Cm表示传输数据帧m的总线占用时间,它可由下式来计算:
(9)
式中:τbit是总线位时间;Sm是数据场字节数,Stuff1是填充位场中前39位需要填充的位数。
考虑CAN数据帧在最好情况下即Wm=0的时延。在数据帧传送过程中,插入了10个填充位,总线速率为500 kb/s。本文调研了256条CAN报文消息[15-16],并根据式(9)计算了最好情况下的时延。表4列出了部分CAN报文消息,其中截止时间即CAN报文最好情况下时延。基于2.2节的TSN调度模型,对CAN报文消息进行了调度。由于CAN报文有效负载较小(≤8 B),考虑到以太网所传输的数据最小为64 B,因此,调度过程中将CAN报文数据负载均设为64 B,并将最好情况下CAN报文时延作为端到端时延约束,从中选取了表4所列出的数据进行了对比,结果如表5所示。
表4 部分CAN报文消息
表5 TSN报文与CAN总线报文端到端时延
从表5可以看出,在负载增大的情况下,TSN网络的数据传输时延也远远小于CAN总线最优情况下的传输时延,这表明TSN能够显著降低数据传输时延,具有非常高的通信效率。
ICV数据传输的一个特点是异构源多、数据量大,如车上的各类传感器、控制器、远程通信等都会产生海量的数据。传统的汽车架构中,音视频流等大数据流通过MOST、LVDS等总线传输,导致车内多种网络共存,使网络复杂化,增加开发时间和开发成本。TSN能够打破信息网络和控制网络的隔阂,实现IT与OT的融合。本节在原数据上加入了车载ADAS数据进行调度。表6列举了车载ADAS数据流的信息[17]。
表6 ADAS消息数据
表7是ADAS数据的调度结果,可以看出TSN能够满足大流量的ADAS数据的实时传输,实现车内不同需求的网络的融合。
表7 ADAS数据调度结果
随着ICV的发展,越来越多的终端设备将会被引入到车上,造成车内数据流的增加。保证这些数据流的高效实时传输,对未来汽车的发展具有重要意义。
时间触发的调度是个NP完全问题[18],调度性能受网络拓扑、带宽、周期性业务流数量等的影响。为了面对未来可能增长的车载数据流量,确保网络的可扩展性,本文采用增量调度的方法对更大规模的数据流进行了调度,调度器的性能如图4所示。从图中可以看出,随着流量的增加,调度的时间也不断增加,但其增加的速度是线性的,说明该调度器能够解决更多数据流量的调度问题,满足未来车载通信的需求。
图4 增量式调度的调度时间
本文基于时间敏感网络技术,设计了下一代汽车的电子电气架构。针对该架构的网络拓扑,采用通用的TSN调度模型,对车内的控制数据以及ADAS等数据进行了调度。结果表明:在传输更大的数据的情况下,TSN的传输时延也大大优于CAN总线网络,端到端时延能够减少约99%;同时,在引入了ADAS等大流量数据流的情况下也能很好满足车载通信的对传输时延的要求;在不同的网络负载下测试了增量式调度器的调度性能,验证了在更大规模的数据流量的情况下TSN也能够支撑未来智能汽车的数据传输需求。因此,TSN有望成为下一代车载通信网络。但是,本文没有考虑存在非周期突发数据流的情况下及异构网络下数据流的调度,将会在下一步的研究中继续改进,为以后TSN在车辆上的部署提供参考。