趙曉敏,王 騰,李宗輝,宮新樂,黃 晉,魏 鵬
(1.合肥工業(yè)大學 汽車與交通工程學院,合肥 230009;2.北京交通大學 計算機與信息技術學院,北京 100044;3.清華大學 車輛與運載學院,北京 100084;4.天津市宇航智能裝備技術企業(yè)重點實驗室,天津 300451)
時間敏感網絡(Time-sensitive Networking,TSN)是由IEEE 802.1TSN小組制定的一系列基于以太網的標準協議。TSN通過一系列協議為網絡提供高帶寬、低時延以及確定性的端到端服務[2],因此有望成為滿足未來汽車通信架構需求的首選技術。
目前TSN的標準化工作還未完成,仍有部分協議處于草案階段,而針對TSN的研究工作業(yè)已展開。Zhou等[3]擴展了IEEE802.1Qbv中基于可滿足性模理論(Satisfiability Modulo Theories,SMT)的門控制列表(Gate Control Lists,GCLs)調度模型并進行了評估,驗證了TSN在大數據流、確定性和低延遲需求的汽車網絡中的潛力。Dürr等[4]引入了無等待數據包調度問題(No-wait Packet Scheduling Problem,NW-PSP)對時間敏感網絡中的調度進行建模,并將其映射到作業(yè)研究領域的一個著名問題——無等待車間調度問題(No-wait Job-shop Scheduling Problem,NW-JSP),提出了一種禁忌搜索算法來高效地計算調度問題,并提出了一種調度壓縮技術來減少調度中的保護帶數量。Kim等[5]針對車內實時數據傳輸提出了一種啟發(fā)式的TSN調度算法,包括一種數據流在鏈路上的分配方法和一種減少端到端時延的調整過程,能夠在可接受的時間內生成調度時間表。
同時,TSN作為車載網絡也面臨一些挑戰(zhàn)。現代汽車是一個高度互聯的分布式系統,具有上百個電子控制單元(Electronic Control Unit,ECU)和2 000多個信號[6],這些ECU和信號執(zhí)行各種汽車功能,如何保證在大量數據流的情況下網絡中不同應用程序的實時要求,是TSN所面臨的主要挑戰(zhàn)。此外,當前汽車網絡是一個復雜的異構網絡,各種類型的數據共存,因此,在應用TSN網絡時,時間敏感流量和非時間敏感流量可能共享同一以太網鏈路,如何最大程度地減少網絡中非時間敏感流量對時間敏感流量的干擾以及突發(fā)數據流和周期數據流的調度是TSN面臨的又一挑戰(zhàn)。隨著TSN相關硬件的普及,以太網將很快成為車內通信的骨干,但是,從成本和風險的角度考慮,從現有架構突然轉向以太網架構是不太可能的,采用由以太網為主干網和傳統網絡組成的異構網絡將有助于這一過渡,因此,實現TSN與現有網絡的融合尤其是與CAN網絡的橋接,也是所面臨的一個主要問題。在工業(yè)應用中,TSN面臨的一個核心挑戰(zhàn)是在設計、分析和仿真階段執(zhí)行TSN網絡配置,同時考慮應用程序的時間要求[7]。
本文針對智能網聯汽車應用場景設計了基于TSN的下一代車載網絡體系架構,構建了TSN的調度模型并對車載數據流進行了調度,最后驗證了所提出的下一代車載網絡的可行性。
智能網聯汽車(Intelligent Connected Vehicle,ICV)已成為汽車行業(yè)的發(fā)展方向,軟件定義汽車的理念成為共識。傳統汽車的分布式電子電氣架構(Electronic/Electrical Architecture,EEA)受限于算力不足、通信帶寬低、軟件升級不便等,不能滿足ICV發(fā)展的需求,EEA升級已成為ICV發(fā)展的關鍵,車輛架構正朝著基于通用計算平臺的面向服務架構的方向發(fā)展。
傳統汽車多采用分布式EEA。這種分布式架構采用點對點的連接方式,即每個模塊都有一個單獨的ECU,各ECU之間一對一地進行通信。在汽車發(fā)展初期,汽車功能單一,分布式架構能夠滿足汽車通信的需求。但隨著ICV的發(fā)展,人們對汽車的需求越來越多,汽車EEA也必須升級,以支撐ICV的發(fā)展。ICV對車輛EEA的需求主要體現在以下幾個方面:
(1)高帶寬、低時延
無人駕駛、高級輔助駕駛(Advanced Driver Assistance System,ADAS)、信息娛樂系統、智慧交通等技術需要大量高清攝像機、激光雷達、各種傳感器、遠程通信和信息娛樂設備的支持,從而增加了車內的數據流量。據了解,一個典型的現代中型車大約有40個電子子系統、50~100個微處理器和 100多個傳感器[8]。文獻[9]指出來自車內攝像頭和信息娛樂設備的數據流幾乎呈指數增長。這些變化趨勢對帶寬和端到端時延提出了更高要求。
(2)高算力
隨著人工智能技術在自動駕駛領域的應用,車載控制器芯片的計算能力面臨嚴峻挑戰(zhàn)。有數據表明,自動駕駛的等級每提高一個級別,域控制器的算力將提高一個數量級。目前,L3級自動駕駛需要24個TOPS的算力,L4級自動駕駛需要4 000+TOPS的算力[10]。人工智能對算力的巨大需求將是對汽車EEA的一大考驗。
ICV的發(fā)展推動了汽車EEA的變革。目前,許多企業(yè)已經推出了基于未來汽車功能需求的下一代EEA解決方案。2017年,特斯拉在其量產車型Model3中首次使用了域集中式EEA。該架構由自動駕駛及娛樂控制模塊、右車身控制器和左車身控制器組成。自動駕駛及娛樂控制模塊負責控制攝像頭和雷達傳感器等,右車身控制器集成自動泊車、座椅控制、扭矩控制等功能;左車身控制器集成了車內照明、轉向柱控制等功能。兩個車身控制器還通過CAN總線與執(zhí)行單元、轉向控制和防抱死系統等執(zhí)行器相連,可直接操作車輛。豐田公司提出了一種“中央集中+區(qū)控制器”(Central&Zone)架構,根據物理空間將整車分為若干對稱區(qū)域,并為每個區(qū)域集成高性能的控制器。該架構主要包括三個部分:中控ECUs負責計算和信息處理;跨區(qū)域通信網采用車載以太網作為主干網,提供高帶寬的通信服務;跨區(qū)域控制器作為某一區(qū)域的控制單元,構成了汽車中央計算單元的神經網絡。大眾新一代EEA采用跨域融合架構,由基礎服務單元、智能座艙域控制器和自動駕駛域控制器組成,雖然不是中央集中式的架構,但也降低了系統的復雜性。華為提出了“C-C”架構,主要分為智能座艙、整車控制和智能駕駛三個域控制器,為跨域融合架構方案,具有軟件可升級、硬件可替換、傳感器可擴展等特點。
根據上述EEA的相關研究,本文設計了基于TSN的“多域控制器+區(qū)域控制器”相結合的EEA,如圖1所示。
圖1 基于以太網的電子電氣架構
該架構包括域控制器、傳感器、執(zhí)行器、區(qū)域控制器等。自動駕駛域控制器(Domain Controller 1)通過車載以太網與激光雷達、毫米波雷達、攝像頭相連接。底盤區(qū)域相關的控制單元,如前、后電機控制器,車身穩(wěn)定系統,制動器,電池管理系統等,與底盤域控制器(Domain Controller 2)相連,實現底盤、動力控制。座艙域控制器(Domain Controller 3)連接轉向柱組合開關、組合儀表等控制單元。車身域控制器(Domain Controller 4)通過與區(qū)域控制器(Zone Controller 1~5)或直接與ECU相連實現車門、座椅、車燈、空調等系統的控制。其中,區(qū)域控制器按物理位置分組,連接附近的外圍組件。區(qū)域控制器只完成轉發(fā),不完成處理任務,處理將在域控制器中完成。在通信協議方面,整車采用TSN協議進行數據交換,滿足高帶寬的速率要求,同時有利于系統的擴展和IT、OT的融合。
TSN面臨的主要挑戰(zhàn)是正確有效地調度ECU上的應用程序和網絡中的時間觸發(fā)消息[6]。目前,TSN主要采用離線生成的調度表來調度時間觸發(fā)數據流[11]。本節(jié)針對TSN調度問題建立模型,并利用SMT實現網絡中時間觸發(fā)流的傳輸調度,以滿足車載網絡實時性和確定性的要求。
基于所設計的EEA,繪制了如圖2所示的車載網絡通信拓撲,各節(jié)點名稱如表1所示。其中,不同的節(jié)點在延遲性、魯棒性等方面的傳輸需求不盡相同。對于不同功能域及不同類型的數據傳輸,其傳輸需求如表2和表3所示。
圖2 車載通信系統網絡拓撲模型
表1 車載通信系統網絡節(jié)點名稱
表2 不同域數據傳輸需求
表3 不同類型數據傳輸需求
TSN網絡拓撲可以用圖G(V,E)表示[12],其中,V表示一組節(jié)點,E表示網絡中鏈接節(jié)點的邊。連接兩個頂點的邊定義了兩個方向的數據鏈路,用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表示從發(fā)送端v1到接收端vr的數據通路:
p=[[v1,v2],…,[v(r-1),vr]]。
(2)
(3)
時間觸發(fā)的調度最初在2010年由Steiner用線性約束進行建模[13],該模型從以下幾個方面闡述了時間觸發(fā)調度應滿足的線性約束:
(1)無沖突約束
對于任意兩條數據流fi和fj在同一時間內只能有一條數據流向數據鏈路[vk,vl]發(fā)送報文,否則會發(fā)生沖突:
(4)
式中:LCM(F.period)表示所有數據流周期的最小公倍數;a、b為整數。
(2)路徑依賴約束
對任意的一條數據流fi,它在相鄰的兩條數據鏈路[vx,vj]、[vj,vy]上傳輸時,總是先到達節(jié)點vj,然后經轉發(fā)后從節(jié)點vj發(fā)出。設pdelay[vx,vj]為節(jié)點vx的發(fā)送處理時間,ldelay[vx,vj]為數據鏈路[vx,vj]上的傳播時延,該約束表示為
?vl∈VL:?pi∈vl:?[vx,vj],[vj,vy]∈pi:
(5)
(3)緩存占用約束
對于TSN交換機,其硬件參數(內存大小、緩沖區(qū)深度等)會對交換機節(jié)點vj帶來一組最大延遲時間約束:
?vl∈VL:?pi∈vl:?[vx,vj],[vj,vy]∈pi:
(6)
式中:membound為常數,由交換機硬件參數決定。
(4)端到端時延約束
端到端時延約束描述了根據應用程序的要求,數據流fi允許的最大端到端時延為
(7)
式中:last(fi)表示數據通路中最后一個數據鏈路;first(fi)表示數據通路中第一個數據鏈路。
SMT是尋找公式滿足性(對變量取值使得某個公式成立),很多形式化驗證的問題可以轉化成公式滿足性問題?;赟MT的調度方法分為兩個部分:一量生成調度約束并將它們添加到求解器的“邏輯語境”中,然后調用求解器。因此,對時間觸發(fā)的程序設計是由這些階段相互決定的。對于本文,時間觸發(fā)點調度過程可用圖3進行說明。
圖3 時間觸發(fā)調度器原理概述
圖3中,調度器為所有數據幀生成上述的調度約束,并將其添加到SMT求解器的“邏輯語境”中,然后調用SMT求解器來求解結果。當SMT求解器成功返回時,則滿足了調度約束,并且可以通過適當的API函數訪問返回結果(模型),該結果就是TT調度表。
車載網絡協議的選擇主要依據車載電子系統的應用特點、成本和技術限制。FlexRay主要是用于線控技術的車載網絡協議,受成本影響,主要用于高檔汽車。LIN總線是一種開放式的低成本、低帶寬的串行通信標準,主要用作CAN總線的輔助子總線。MOST是一種專為車載多媒體應用而設計的數據總線,環(huán)形結構導致其容錯能力有限,且其壟斷性強,開發(fā)成本高。在所有車載網絡協議中,CAN網絡是應用最廣泛的總線協議,覆蓋了車輛的大部分應用。CAN總線的應用涵蓋了故障診斷、儀表顯示、電源、車身、動力和底盤控制等領域,是汽車的骨干網絡。
本節(jié)主要對當前主流通信網絡CAN網絡與TSN網絡進行對比,進一步說明TSN網絡能夠替代當前主流通信網絡成為下一代車載網絡。
在CAN網絡中,從節(jié)點發(fā)送數據幀到數據幀發(fā)送完成有一個延遲時間,最壞傳輸條件下的延遲時間稱為最長延遲時間。每個數據幀在總線上傳輸時都有實時性要求。一個數據幀所能承受的傳輸延遲時間的極限稱為該數據幀的最大延遲時間,其計算公式為[14]
Rm=Wm+Cm。
(8)
式中:Wm是最壞情況下數據幀的最長等待時間,即競爭總線占用權的時間。最壞情況是當數據幀m想要發(fā)送時,網絡中所有優(yōu)先級比它高的數據幀都在爭奪總線占用權,且當前網絡中正在傳輸比它優(yōu)先級低的所有數據幀中占用總線時間最長的一個。因此,最長等待時間Wm包括以下3項內容:一是在所有優(yōu)先級低于數據幀m的數據幀中,傳輸時間最長的數據幀的總線占用時間;二是所有優(yōu)先級高于m的數據幀的總線占用時間之和;三是總線上可能出現的錯誤幀的延遲時間。用Cm表示傳輸數據幀m的總線占用時間,它可由下式來計算:
(9)
式中:τbit是總線位時間;Sm是數據場字節(jié)數,Stuff1是填充位場中前39位需要填充的位數。
考慮CAN數據幀在最好情況下即Wm=0的時延。在數據幀傳送過程中,插入了10個填充位,總線速率為500 kb/s。本文調研了256條CAN報文消息[15-16],并根據式(9)計算了最好情況下的時延。表4列出了部分CAN報文消息,其中截止時間即CAN報文最好情況下時延?;?.2節(jié)的TSN調度模型,對CAN報文消息進行了調度。由于CAN報文有效負載較小(≤8 B),考慮到以太網所傳輸的數據最小為64 B,因此,調度過程中將CAN報文數據負載均設為64 B,并將最好情況下CAN報文時延作為端到端時延約束,從中選取了表4所列出的數據進行了對比,結果如表5所示。
表4 部分CAN報文消息
表5 TSN報文與CAN總線報文端到端時延
從表5可以看出,在負載增大的情況下,TSN網絡的數據傳輸時延也遠遠小于CAN總線最優(yōu)情況下的傳輸時延,這表明TSN能夠顯著降低數據傳輸時延,具有非常高的通信效率。
ICV數據傳輸的一個特點是異構源多、數據量大,如車上的各類傳感器、控制器、遠程通信等都會產生海量的數據。傳統的汽車架構中,音視頻流等大數據流通過MOST、LVDS等總線傳輸,導致車內多種網絡共存,使網絡復雜化,增加開發(fā)時間和開發(fā)成本。TSN能夠打破信息網絡和控制網絡的隔閡,實現IT與OT的融合。本節(jié)在原數據上加入了車載ADAS數據進行調度。表6列舉了車載ADAS數據流的信息[17]。
表6 ADAS消息數據
表7是ADAS數據的調度結果,可以看出TSN能夠滿足大流量的ADAS數據的實時傳輸,實現車內不同需求的網絡的融合。
表7 ADAS數據調度結果
隨著ICV的發(fā)展,越來越多的終端設備將會被引入到車上,造成車內數據流的增加。保證這些數據流的高效實時傳輸,對未來汽車的發(fā)展具有重要意義。
時間觸發(fā)的調度是個NP完全問題[18],調度性能受網絡拓撲、帶寬、周期性業(yè)務流數量等的影響。為了面對未來可能增長的車載數據流量,確保網絡的可擴展性,本文采用增量調度的方法對更大規(guī)模的數據流進行了調度,調度器的性能如圖4所示。從圖中可以看出,隨著流量的增加,調度的時間也不斷增加,但其增加的速度是線性的,說明該調度器能夠解決更多數據流量的調度問題,滿足未來車載通信的需求。
圖4 增量式調度的調度時間
本文基于時間敏感網絡技術,設計了下一代汽車的電子電氣架構。針對該架構的網絡拓撲,采用通用的TSN調度模型,對車內的控制數據以及ADAS等數據進行了調度。結果表明:在傳輸更大的數據的情況下,TSN的傳輸時延也大大優(yōu)于CAN總線網絡,端到端時延能夠減少約99%;同時,在引入了ADAS等大流量數據流的情況下也能很好滿足車載通信的對傳輸時延的要求;在不同的網絡負載下測試了增量式調度器的調度性能,驗證了在更大規(guī)模的數據流量的情況下TSN也能夠支撐未來智能汽車的數據傳輸需求。因此,TSN有望成為下一代車載通信網絡。但是,本文沒有考慮存在非周期突發(fā)數據流的情況下及異構網絡下數據流的調度,將會在下一步的研究中繼續(xù)改進,為以后TSN在車輛上的部署提供參考。