摘 要:隨著智能網(wǎng)聯(lián)和智能駕駛的高速發(fā)展,傳統(tǒng)的CAN/LIN網(wǎng)絡(luò)不足以支持車載網(wǎng)絡(luò)對(duì)數(shù)據(jù)帶寬的需求,因此車載以太網(wǎng)被廣泛應(yīng)用到車載網(wǎng)絡(luò)架構(gòu)中。車載以太網(wǎng)中的很多應(yīng)用實(shí)現(xiàn)需要基于高精度的時(shí)鐘同步。因此時(shí)間敏感網(wǎng)絡(luò)(TSN)協(xié)議族之一的IEEE 802.1AS協(xié)議被引入到車載以太網(wǎng)。IEEE 802.1AS協(xié)議通過(guò)將網(wǎng)絡(luò)中各節(jié)點(diǎn)的時(shí)鐘同步至主時(shí)鐘節(jié)點(diǎn),從而確保各節(jié)點(diǎn)的時(shí)鐘同步,同步精度控制在1us以內(nèi)。為有效驗(yàn)證車載以太網(wǎng)的時(shí)鐘同步質(zhì)量,介紹基于IEEE 802.1AS協(xié)議的主從時(shí)鐘同步偏差系統(tǒng)測(cè)試方案。
關(guān)鍵詞:車載以太網(wǎng) TSN IEEE 802.1AS 時(shí)鐘同步
以太網(wǎng)是目前應(yīng)用最廣泛的網(wǎng)絡(luò)協(xié)議,傳統(tǒng)以太網(wǎng)無(wú)法解決兩個(gè)交互節(jié)點(diǎn)時(shí)鐘同步的問(wèn)題,為了解決這個(gè)問(wèn)題,通信業(yè)界開(kāi)發(fā)了網(wǎng)絡(luò)時(shí)間協(xié)議NTP(Network Time Protocol)。網(wǎng)絡(luò)時(shí)間協(xié)議可以實(shí)現(xiàn)兩個(gè)交互節(jié)點(diǎn)時(shí)鐘同步偏差小于1ms,但仍然無(wú)法滿足工業(yè)控制以及車載網(wǎng)絡(luò)的時(shí)鐘同步要求。為了提高以太網(wǎng)設(shè)備間的同步精度,2000年成立了網(wǎng)絡(luò)精密時(shí)鐘同步委員會(huì),并于2001年起草了IEEE 1588[1]協(xié)議,IEEE 1588協(xié)議可以實(shí)現(xiàn)納秒級(jí)的時(shí)鐘同步。之后IEEE 802.1工作組在IEEE 1588協(xié)議基礎(chǔ)上,起草了時(shí)鐘同步協(xié)議IEEE 802.1AS[2],同步誤差控制在1us以內(nèi)。考慮到時(shí)鐘同步冗余的特性,IEEE工作組又基于IEEE 802.1AS協(xié)議,起草了IEEE 802.1AS_Rev[3]協(xié)議。該協(xié)議在IEEE 802.1AS的基礎(chǔ)上增加了多域的概念,可以實(shí)現(xiàn)主時(shí)鐘的備份和冗余,進(jìn)一步提高時(shí)間敏感網(wǎng)絡(luò)的魯棒性。
隨著智能網(wǎng)聯(lián)車和智能駕駛的高速發(fā)展,傳統(tǒng)的CAN/LIN網(wǎng)絡(luò)不足以支持當(dāng)前車載網(wǎng)絡(luò)對(duì)數(shù)據(jù)帶寬的需求,因此車載以太網(wǎng)被廣泛應(yīng)用到車載網(wǎng)絡(luò)架構(gòu)中。車載以太網(wǎng)是一個(gè)時(shí)間敏感網(wǎng)絡(luò),為滿足高精度時(shí)鐘同步,基于IEEE 802.1AS的時(shí)鐘同步協(xié)議被廣泛應(yīng)用到車載以太網(wǎng)中。
在車載以太網(wǎng)中,不只車身,輔助駕駛和座艙等域控對(duì)時(shí)鐘同步精度也有很高的要求。一些傳感器,比如雷達(dá),同樣需要。從系統(tǒng)層面對(duì)各個(gè)域控和傳感器之間的時(shí)鐘同步偏差進(jìn)行測(cè)試是比較困難的,比如在實(shí)車測(cè)試層面,時(shí)鐘同步測(cè)試將缺乏有效的測(cè)試手段。在實(shí)車測(cè)試階段,對(duì)各個(gè)域控的時(shí)鐘同步數(shù)據(jù)抓取分析,查看串口日志信息,采樣秒脈沖信號(hào)都比較困難。在實(shí)車測(cè)試之前,對(duì)整個(gè)車載網(wǎng)絡(luò)進(jìn)行多域控多傳感器之間的時(shí)鐘同步系統(tǒng)集成測(cè)試,能夠盡早發(fā)現(xiàn)、分析、定位相關(guān)問(wèn)題,縮短質(zhì)量環(huán)路,減輕實(shí)車測(cè)試壓力。
行業(yè)中目前存在兩種比較常見(jiàn)的主從時(shí)鐘偏差測(cè)試方案,分別是基于Reverse Sync和1PPS(1 Pulse Per Second)的時(shí)鐘同步偏差測(cè)試方案。分析對(duì)比了這兩種測(cè)試方案的優(yōu)缺點(diǎn),選擇基于1PPS的時(shí)鐘同步偏差系統(tǒng)測(cè)試方案。
1 時(shí)鐘同步原理
IEEE 802.1AS用于保證整個(gè)車載以太網(wǎng)的高精度時(shí)鐘同步,是TSN協(xié)議簇中重要的一部分。IEEE 802.1AS,又稱 gPTP(Generalized Precision Time Protocol )協(xié)議,通過(guò)主時(shí)鐘節(jié)點(diǎn)發(fā)送時(shí)鐘同步報(bào)文,從節(jié)點(diǎn)基于同步報(bào)文中的時(shí)間信息來(lái)動(dòng)態(tài)調(diào)整各自本地時(shí)鐘,從而達(dá)到與主時(shí)鐘時(shí)間同步的目的。
為更加精確地實(shí)現(xiàn)主從時(shí)鐘的同步,需要考慮時(shí)鐘同步報(bào)文在車載以太網(wǎng)上傳輸?shù)穆窂綍r(shí)延、經(jīng)過(guò)交換機(jī)的駐留時(shí)間和主從時(shí)鐘的頻率誤差。IEEE 802.1AS協(xié)議定義了BMCA(Best Master Clock Algorithm)算法[2],用于在時(shí)鐘同步域內(nèi)選舉主時(shí)鐘節(jié)點(diǎn)。但對(duì)于車載以太網(wǎng)來(lái)說(shuō),網(wǎng)絡(luò)拓?fù)浜凸?jié)點(diǎn)是固定的,同時(shí)為了在車載以太網(wǎng)喚醒后,主從節(jié)點(diǎn)有更快的同步性能,一般選擇禁用BCMA,配置固定的主時(shí)鐘節(jié)點(diǎn)和時(shí)鐘同步生成樹(shù)[2],因此BMCA算法在文章中不予介紹。
2 時(shí)鐘同步報(bào)文
IEEE 802.1AS協(xié)議在車載以太網(wǎng)中主要使用5種報(bào)文類型,分別是:Sync、Follow_Up、Pdelay_Req、Pdelay_Resp和Pdelay_Resp_Follow_Up。其中Sync和Follow_Up用于傳遞主時(shí)鐘的時(shí)間,Pdelay_Req、Pdelay_Resp和Pdelay_Resp_Follow_Up用于計(jì)算路徑時(shí)延和頻率補(bǔ)償。
3 路徑時(shí)延計(jì)算
時(shí)鐘同步報(bào)文在網(wǎng)絡(luò)傳輸過(guò)程中存在路徑時(shí)延,圖1展示了路徑時(shí)延的計(jì)算過(guò)程:
IEEE 802.1AS域內(nèi)的相鄰節(jié)點(diǎn)在喚醒后要進(jìn)行時(shí)延測(cè)量,如圖1所示。
(1)請(qǐng)求節(jié)點(diǎn)發(fā)送Pdelay_Req報(bào)文,記錄發(fā)送時(shí)間;
(2)響應(yīng)節(jié)點(diǎn)記錄收到Pdelay_Req的時(shí)間;
(3)響應(yīng)節(jié)點(diǎn)發(fā)送Pdelay_Resp給請(qǐng)求節(jié)點(diǎn),并在Pdelay_Resp報(bào)文中攜帶時(shí)間信息,同時(shí)記錄自己發(fā)送Pdelay_Resp的時(shí)間;
(4)請(qǐng)求節(jié)點(diǎn)收到Pdelay_Resp報(bào)文后,記錄收到該報(bào)文的時(shí)間;
(5)響應(yīng)節(jié)點(diǎn)發(fā)送Pdelay_Resp_Follwo_Up,并在Pdelay_Resp_Follwo_Up報(bào)文中攜帶時(shí)間信息;
(6)請(qǐng)求節(jié)點(diǎn)通過(guò)公式計(jì)算路徑時(shí)延:
上式的前提是請(qǐng)求和響應(yīng)節(jié)點(diǎn)都有相同的本地時(shí)鐘速率,而實(shí)際上兩個(gè)不同的本地時(shí)鐘間客觀存在的頻率差,對(duì)測(cè)量結(jié)果造成影響。為降低此類影響,協(xié)議中引入Neighbor Rate Ratio變量。
(7)Neighbor Rate Ratio為相鄰兩個(gè)節(jié)點(diǎn)的時(shí)鐘頻率比:
式中:r 表示響應(yīng)節(jié)點(diǎn)對(duì)請(qǐng)求節(jié)點(diǎn)的Neighbor Rate Ratio,和表示第n次測(cè)量時(shí)和的值,和表示作為基準(zhǔn)的第0次測(cè)量時(shí)和的值。
(8)修正后的路徑時(shí)延:
4 時(shí)鐘同步過(guò)程
如圖2所示, 收到傳輸?shù)臅r(shí)鐘同步報(bào)文Sync和Follwo_Up,再轉(zhuǎn)發(fā)給。通過(guò)研究整個(gè)傳遞過(guò)程,了解時(shí)鐘同步原理。
(1)發(fā)送Sync報(bào)文,并記錄發(fā)送的時(shí)間。
(2)發(fā)送Follow_Up報(bào)文,其攜帶以下關(guān)鍵信息。
1):主時(shí)鐘節(jié)點(diǎn)發(fā)送Sync報(bào)文的時(shí)間點(diǎn),在轉(zhuǎn)發(fā)過(guò)程中不會(huì)變更;
2):發(fā)送Sync報(bào)文時(shí)的本地時(shí)間點(diǎn)與主時(shí)鐘節(jié)點(diǎn)發(fā)送Sync報(bào)文時(shí)間點(diǎn)的差值;
3):主時(shí)鐘節(jié)點(diǎn)時(shí)鐘頻率與節(jié)點(diǎn)時(shí)鐘頻率之比。
(3) 收到發(fā)送的Sync報(bào)文,記錄收到的時(shí)間,并完成與主時(shí)鐘節(jié)點(diǎn)的時(shí)鐘同步,同步時(shí)間。
式中:表示的是節(jié)點(diǎn)計(jì)算出的同步時(shí)間,表示的是節(jié)點(diǎn)至的路徑時(shí)延。
(4)發(fā)送Sync報(bào)文給,并記錄發(fā)送Sync報(bào)文時(shí)間。
(5)發(fā)送Follow_Up報(bào)文給,發(fā)送前需要計(jì)算和:
1)
式中:為發(fā)送Follow_Up報(bào)文攜帶的參數(shù), 是對(duì)節(jié)點(diǎn)的時(shí)鐘頻率比。
2)
式中:為發(fā)送Follow_Up報(bào)文攜帶的參數(shù),是節(jié)點(diǎn)至的路徑時(shí)延,和分別是收到Sync報(bào)文的時(shí)間點(diǎn)和轉(zhuǎn)發(fā)Sync報(bào)文的時(shí)間點(diǎn),它們的差值代表Sync報(bào)文在節(jié)點(diǎn)內(nèi)所消耗的駐留時(shí)間,為主時(shí)鐘的時(shí)鐘頻率與的時(shí)鐘頻率之比。
5 主從時(shí)鐘同步偏差系統(tǒng)測(cè)試
主時(shí)鐘和從時(shí)鐘時(shí)間偏差測(cè)試是針對(duì)整個(gè)時(shí)鐘同步網(wǎng)絡(luò)的系統(tǒng)級(jí)測(cè)試,通過(guò)設(shè)備同時(shí)監(jiān)控時(shí)鐘同步網(wǎng)絡(luò)內(nèi)所有從時(shí)鐘與主時(shí)鐘的同步狀態(tài)和時(shí)間偏差。
針對(duì)時(shí)鐘同步偏差測(cè)試,主流有2種方案,基于Reverse Sync的測(cè)試方案和1PPS秒脈沖測(cè)試方案。
5.1 基于Reverse Sync的測(cè)試方案
5.1.1 測(cè)試原理
Reverse Sync是配置在從節(jié)點(diǎn)上的一種特殊的時(shí)鐘同步報(bào)文,它攜帶從節(jié)點(diǎn)的本地時(shí)間,測(cè)試設(shè)備捕捉到這個(gè)報(bào)文后,與主時(shí)鐘的Sync報(bào)文進(jìn)行對(duì)比,就可以計(jì)算出主從時(shí)鐘的時(shí)間偏差。
5.1.2 測(cè)試環(huán)境搭建與配置
(1)采用這種方案測(cè)試,被測(cè)件需支持IEEE 802.1AS_Rev。在一個(gè)時(shí)鐘同步域里,只能有一個(gè)主時(shí)鐘發(fā)送Sync報(bào)文,如果多個(gè)從節(jié)點(diǎn)在同一個(gè)時(shí)鐘同步域內(nèi)發(fā)送Reverse Sync,會(huì)導(dǎo)致整個(gè)時(shí)鐘同步域癱瘓。因此,從節(jié)點(diǎn)發(fā)送的Reverse Sync需要配置到另一個(gè)時(shí)鐘同步域中;
(2)該測(cè)試方案需要使用TSN-BOX,系統(tǒng)連接如下圖3所示。TSN-BOX與主時(shí)鐘進(jìn)行時(shí)鐘同步,同時(shí)收取從節(jié)點(diǎn)發(fā)送的Reverse Sync報(bào)文,得到每個(gè)從節(jié)點(diǎn)的本地時(shí)間,從而計(jì)算出主從節(jié)點(diǎn)的時(shí)鐘偏差。
5.1.3 局限性
(1)每個(gè)從節(jié)點(diǎn)均需配置Reverse Sync,增加了從節(jié)點(diǎn)的開(kāi)發(fā)和配置復(fù)雜度;
(2)該方案需要給每一個(gè)從節(jié)點(diǎn)配置一個(gè)時(shí)鐘同步域,而主流的車載交換機(jī)芯片一般只支持最多4個(gè)時(shí)鐘同步域,所以當(dāng)從節(jié)點(diǎn)比較多時(shí),無(wú)法支持同時(shí)進(jìn)行時(shí)鐘同步系統(tǒng)級(jí)測(cè)試。
基于上述限制,在實(shí)際項(xiàng)目中,采用下述基于1PPS的測(cè)試方案。
5.2 基于1PPS的測(cè)試方案
5.2.1 測(cè)試原理
采集所有從節(jié)點(diǎn)的秒脈沖,對(duì)比主時(shí)鐘的秒脈沖,從而計(jì)算出主從時(shí)鐘同步偏差。
5.2.2 測(cè)試環(huán)境搭建與配置
在實(shí)際項(xiàng)目中,采用一款基于1PPS測(cè)試時(shí)鐘同步偏差的測(cè)試設(shè)備PPS Tester,可以支持對(duì)24路1PPS通道同時(shí)進(jìn)行采集,24小時(shí)連續(xù)采樣,系統(tǒng)連接如圖4所示:
(1)把從時(shí)鐘和主時(shí)鐘的1PPS信號(hào)接入到PPS Tester;
(2)配置采樣通道的參數(shù),包括采樣脈沖輸入阻抗、電壓值、脈沖寬帶和是否為主節(jié)點(diǎn)等,如圖5所示;
(3)點(diǎn)擊開(kāi)始按鍵,開(kāi)始采樣測(cè)試。
1)測(cè)試結(jié)果分析
①1PPS脈沖
各域控秒脈沖采樣如圖6所示。
②同步精度
各從節(jié)點(diǎn)相對(duì)于主時(shí)鐘節(jié)點(diǎn)的時(shí)間偏差如圖7所示。
③數(shù)據(jù)統(tǒng)計(jì)
各從節(jié)點(diǎn)時(shí)鐘偏差當(dāng)前值、最大,最小和平均值統(tǒng)計(jì)如圖8所示。
④測(cè)試報(bào)告
測(cè)試報(bào)告分為測(cè)試信息、通道配置信息、測(cè)試統(tǒng)計(jì)結(jié)果和錯(cuò)誤日志等統(tǒng)計(jì)信息,如圖9所示。
(a)測(cè)試信息統(tǒng)計(jì)測(cè)試開(kāi)始時(shí)間、結(jié)束時(shí)間和測(cè)試時(shí)長(zhǎng);
(b)通道配置信息包括采樣通道分配信息、主從節(jié)點(diǎn)信息、1PPS脈沖采樣設(shè)置信息和同步精度限值信息;
(c)測(cè)試統(tǒng)計(jì)結(jié)果包括各通路的平均同步精度、同步精度最大和最小值、缺失信號(hào)計(jì)數(shù)、無(wú)效信號(hào)計(jì)數(shù)等;
(d)錯(cuò)誤日志會(huì)記錄異常事件發(fā)生的時(shí)間和當(dāng)時(shí)的時(shí)間同步精度,比如某路同步精度超過(guò)限值。
2)測(cè)試方案總結(jié)
該測(cè)試方案支持對(duì)車載網(wǎng)絡(luò)中的24路通道連續(xù)24小時(shí)采樣1PPS,統(tǒng)計(jì)各路時(shí)間偏差信息,時(shí)間偏差精度最高可達(dá)4ns,滿足基于IEEE 802.1AS協(xié)議的時(shí)鐘同步偏差系統(tǒng)測(cè)試需求。該測(cè)試方案存在的缺點(diǎn)是1PPS很難檢測(cè)出主從節(jié)點(diǎn)超過(guò)整秒倍數(shù)的時(shí)間偏差,比如從時(shí)鐘和主時(shí)鐘的時(shí)間偏差為2.333s,1PPS測(cè)試結(jié)果為偏差333ms。因此除了查看1PPS測(cè)試結(jié)果,還需要在時(shí)鐘同步后對(duì)比主從節(jié)點(diǎn)的秒級(jí)時(shí)間來(lái)完善該測(cè)試方案。
6 結(jié)論
對(duì)時(shí)間敏感網(wǎng)絡(luò)的時(shí)鐘同步協(xié)議IEEE 802.1AS進(jìn)行了詳細(xì)的研究,介紹了時(shí)鐘同步偏差系統(tǒng)測(cè)試方案,有效保障車載以太網(wǎng)的時(shí)鐘同步質(zhì)量??偨Y(jié)如下。
(1)介紹時(shí)鐘同步技術(shù)的發(fā)展過(guò)程,并給出在車載網(wǎng)絡(luò)中,基于IEEE 802.1AS協(xié)議的時(shí)鐘同步偏差系統(tǒng)測(cè)試的必要性;
(2)研究時(shí)鐘同步協(xié)議IEEE 802.1AS協(xié)議,具體包括時(shí)鐘同步原理、時(shí)鐘同步報(bào)文、路徑時(shí)延計(jì)算和時(shí)鐘同步過(guò)程;
(3)實(shí)踐主從時(shí)鐘同步偏差系統(tǒng)測(cè)試方案。對(duì)比2種常用時(shí)鐘同步偏差測(cè)試方案,選擇并使用符合項(xiàng)目要求的最優(yōu)方案。經(jīng)過(guò)對(duì)測(cè)試結(jié)果分析驗(yàn)證,該測(cè)試方案滿足項(xiàng)目需求,有效完成了項(xiàng)目中車載以太網(wǎng)時(shí)鐘同步的測(cè)試。
參考文獻(xiàn):
[1]IEEE 1588 standard for a precision clock synchronization protocol for networked" measurement and control systems[C]// IEEE Std 1588-2002. IEEE,2002.
[2]IEEE Standard for Local and Metropolitan Area Networks - Timing and Synchronization for Time-Sensitive Applications in Bridged Local Area Networks[C]// IEEE Std 802.1AS2011. IEEE,2011.
[3]IEEE Standard for Local and Metropolitan Area Networks - Timing and Synchronization for Time-Sensitive Applications[C]// IEEE Std 802.1AS-2020. IEEE,2020.
[4]Lim H T, Herrscher D, L V?lker, et al. IEEE 802.1AS time synchronization in a switched" Ethernet based in-car network[C]// Vehicular Networking Conference. IEEE,2011.
[5]Yong J K, Jin H K, Bo M C, et al. Performance of IEEE 802.1AS for automotive system using hardware timestamp[C]// IEEE International Symposium on Consumer Electronics." IEEE,2014.
[6]Kero N, Puhm A, Kernen T, et al. Performance and Reliability Aspects of Clock" Synchronization Techniques for Industrial Automation[J]. Proceedings of the IEEE,2019,PP(99):1-16.
[7]Garner G M, Ryu H . Synchronization of audio/video bridging networks using IEEE" 802.1AS[J]. IEEE Communications Magazine,2011,49(2):140-147.
[8]Yang K, Jie W, Xie M P, et al. A new design for precision clock synchronization based on FPGA[C]// 2009 16th IEEE-NPSS Real Time Conference. IEEE,2009.