孔韻雯,李 峭,湯雪乾,熊華鋼
TTE網絡壓縮功能計算開銷的測量方法
孔韻雯,李 峭,湯雪乾,熊華鋼
(北京航空航天大學電子信息工程學院,北京100191)
針對通過傳遞協議控制幀(PCF幀)實現分布式節點之間的時鐘同步的時間觸發以太網(TTE)的關鍵參數獲取問題,通過剖析TTE時鐘同步協議的原理,提出了不用訪問同步主控器(SM)或壓縮主控器(CM)的底層驅動,僅通過捕獲并觀測SM和CM之間的PCF幀,得到給定TTE網絡壓縮功能運行的計算開銷的測量和計算方法。采用FPGA硬件實現了相應的捕幀測量裝置,從理論分析和實際測試兩個方面實現了關鍵參數計算開銷的測量,通過共計13 724次實驗得到的計算開銷平均值為32 757 ns。
時鐘同步;時間觸發以太網;協議控制幀;計算開銷;FPGA
Abstract: Clock Synchronization in Time-Triggered Ethernet(TTE) is implemented by exchanging Protocol Control Frames(PCF) among distributed network nodes.A measuring method was proposed to make the calculation overhead of compression function in the specified TTE network measured and calculated in each round of synchronization operation by capturing and observing PCF between Synchronization Master(SM) and Compress Master(CM) without extra accesses to the lowlevel drivers of the concerned SMs and CM.The PCF capturer and observer were implemented by FPGAs,by which the analytical and practical measurement of the calculation overhead were realized.The average calculation overhead of 13 724 experiments was 32 757 ns.
Key words:clock synchronization; time-triggered Ethernet; protocol control frame; calculation overhead;FPGA
隨著載人航天飛行器電子系統復雜程度的提升,需要采用綜合化互連技術替代飛行器內種類繁多的總線和網絡,以降低布線的體積、重量和功耗。時間觸發以太網(Time-Triggered Ethernet,TTE)不僅在全雙工交換式以太網物理層上實現了可以精確到微秒乃至亞微秒量級的分布式時鐘同步[1],成為安全關鍵性的時間觸發(Time-Triggered,TT)通信的基礎;而且剩余帶寬還能容納關鍵性等級較低的事件觸發流量,支持既有設備的接入;有望成為未來載人航天電子系統的骨干互連網絡[2]。TTE中的時間觸發通信可以在安全關鍵性系統中代替普通以太網部分傳統的事件觸發通信方式,從而滿足了嚴格的時間確定性,有效改善普通以太網的實時性、確定性和可靠性[3]。2011年,美國SAE組織發布了TTE標準[3]。
美國NASA已經將TTE網絡作為獵戶座(Orion)載人飛船的骨干網絡,速率為1 Gbps。該網絡替代了傳統的多種總線,支持不同類型的數據和通信需求,并經過抗輻照加固以適應外層空間環境,形成一個高可靠、安全靈活的分布式綜合化電子系統[4]。
TTE網絡由端系統(End System,ES)、專用交換機和物理鏈路構成。圖1給出獵戶座載人飛船的TTE互連拓撲結構[5]。在該飛船的早期型號中,包含乘員艙8臺交換機和服務艙3臺交換機,其中交換機31和32是綜合化互連的核心,接入兩個VCM機架模塊,形成熱備份雙冗余配置,另有一個備份飛行控制單元(BFCU)不對稱地接入交換機22;在后續發展型號中,乘員艙增加了2臺交換機(交換機7、8),獲得了更充裕的冗余物理鏈路,便于實施更為復雜的多模冗余容錯策略。

圖1 獵戶座載人飛船的TTE互連拓撲結構[5]Fig.1 Topology of TTE interconnections in Orion CEV[5]
分布式時鐘同步是TTE網絡的關鍵技術,網絡中具有同步主控器(Synchronization Master,SM)、同步客戶端(Synchronization Client,SC)和壓縮主控器(Compression Master,CM)三種功能模塊,分別嵌入于主機端系統或交換機[6]。同一個同步域的TTE網絡節點通過傳遞協議控制幀(Protocol Control Frame,PCF幀)交換各自本地時鐘信息,CM對接收到的PCF幀實施固化和壓縮功能,求得平均的時間基準并發布,從而實現全局的時鐘同步。
壓縮功能中的關鍵參數對網絡時鐘同步的正常運行和精度保持有決定性作用。目前,TTTech公司擁有TTE網絡控制器的主要知識產權,并曾經根據航天用戶的需求對IP核進行專門優化(例如:產品目錄上為Pegasus版本[7],而提供給ESA的為Phoenix版本),但細節不對一般用戶公開。相應地,在規劃配置軟件TTE-Plan中,用戶無法獲知作為中間變量的部分關鍵參數,如CM運行壓縮功能時的計算開銷的取值并沒有在軟件或手冊中給出[8],不僅給實驗觀測TTE網絡時鐘同步過程帶來困難,而且對自主開發的TTE網絡接口與COTS網絡設備的互操作產生不利影響。
本文通過剖析TTE時鐘同步協議,提出了通過捕獲并觀測SM和CM之間的PCF幀,實測獲得關鍵參數計算開銷數值的方法。首先簡要介紹TTE網絡時鐘同步過程中的壓縮功能;隨后說明作為關鍵參數,計算開銷對于壓縮功能計算的作用,以及開發測量裝置得到該值的具體過程;最后根據實際測量結果的統計分析,說明該測試方法的有效性。
在TTE網絡中,利用PCF幀在每個綜合循環(Integrated Cycle,IC)輪次交換同步信息建立并維持全局的時鐘同步。PCF幀是類型為0x891d的以太網幀,PCF幀的數據載荷中包含4字節的IC輪次計數值和8字節的“透明時鐘”(Transparent Clock,TC)字段。其中,TC字段存儲從發送端口到當前端口的傳輸延遲累加值;當PCF幀經過支持透明時鐘機制的轉發或交換設備時,由硬件計算從輸入到輸出端口的時間,并累加入該字段。PCF幀的IC輪次計數值用于標記PCF幀被發送時所在的IC輪次[6]。
只有CM能運行壓縮功能,CM對各個PCF幀的固化時刻[3]進行容錯平均即“壓縮”,得到的平均時刻被稱為壓縮時刻tcp。以tcp作為時間的基準值,修正CM和SM的本地時鐘,從而實現全局的時鐘同步。
CM在接收到的PCF幀的最小固化時刻tp,1開啟固定長度的最大觀察窗TOW,接收該IC輪次剩余節點發送的PCF幀并記錄對應的固化時刻。如圖2,CM對各個PCF幀的固化時刻與最早固化時刻的時間差進行執行容錯平均算法[6],得到壓縮修正值TCC,并考慮觀察各個PCF幀的觀察窗寬度TOW和計算開銷時間TCO,壓縮時刻的計算式為tcp=tp,1+TOW+TCC+TCO。

圖2 壓縮功能時序圖Fig.2 Sequence diagram of compression function
根據容錯平均算法計算壓縮修正值TCC,當參與同步的SM數目小于4,則沒有容錯功能;當SM數目為2時,TCC的計算公式為式(1):

雖然容錯平均算法的執行時間不一定是固定值,但為了使壓縮操作具有時間確定性,要求計算開銷時間TCO在相同配置的TTE網絡中為固定值,意味著計算之后要等待相應的時間進行補足;而且CM的TCO值對于同步域中SM和SC應該是周知的。
利用FPGA器件自行開發核心邏輯,配合以太網物理層芯片硬件,構成關鍵參數計算開銷TCO的測量裝置(以下簡稱“測量裝置”),實現了通過捕獲PCF幀以及讀取PCF幀內的透明時鐘值獲得TCO的測量方法。
如圖3所示,本測量裝置包含兩個全雙工以太網接口,被串聯入一段全雙工物理鏈路,構成雙方向的數據幀過濾模塊,記為F1和F2,對于普通數據幀它們只是簡單地直通(cut-through)轉發,而對于PCF幀則進行截獲后轉發,記錄其到達時間,根據IC輪次計數值匹配上下行的PCF幀,讀取相應的幀內容并計算得到關鍵參數TCO。

圖3 測量裝置模塊圖Fig.3 Measurement device module diagram
根據TTE網絡壓縮功能的原理,利用參與同步的SM數目為2時容錯操作被屏蔽的作用,設計了含有2個SM(SM1和SM2)與1個CM的測試實驗方案。
在SM1與CM之間的全雙工物理鏈路中插入本測量裝置,記為A1;同理,在SM2與CM之間插入測量裝置,記為A2,其連接關系如圖4。

圖4 計算開銷測量拓撲圖Fig.4 Calculation overhead measurement topology
設從SM到CM數據幀所經過的通信鏈路為上行鏈路,從CM到SM數據幀經過的通信鏈路為下行鏈路。A1的F1模塊在上行鏈路捕獲的由SM1發送的PCF幀記為,其透明時鐘記為;F2模塊在下行鏈路捕獲相同IC輪次由CM發送的 PCF幀記為,其透明時鐘記為,測量裝置捕獲至捕獲的時間間隔為Δt1;同理,針對同一IC輪次(兩臺測量裝置分別記錄PCF幀中的輪次信息,數據采集后進行匹配),A2獲得一對和的內容,以及計時值Δt2;設最大傳輸延遲Dmax和技術時延2×thw已知;從PCF幀中可以獲得透明時鐘,加入了技術時延補償之后得的透明時鐘值為和=1,2。
不失一般性,假設SM1的本地時鐘快于SM2,即SM1發送的在CM內的固化時刻tp,1早于SM2發送的的固化時刻,時間Δt1和Δt2內和被處理的過程如圖5所示。

圖5 測量計算開銷的同步過程Fig.5 Synchronization process of calculation overheadmeasurement
由于只有兩個被CM固化的時刻點被壓縮,對照公式(1)和圖5 可得式(2)、(3):

將式(2)和式(3)相加,對銷掉 TCC,整理后得到計算開銷TCO如式(4):

對于使用100BASE-T以太網物理層的TTE網絡,采用FPGA實現了如前所述的PCF幀的捕獲和計算功能,而且能夠對非PCF幀直通透明傳輸,即:能夠在不影響正常網絡通信的條件下,測量獲得TTE時鐘同步壓縮函數中計算開銷TCO的數值。
同時,FPGA本身的技術時延已經通過透明時鐘機制補償至TC字段,從而保證了被測PCF幀TC字段表示的時延是客觀的。
根據§2所述測量原理,實驗設備的連接如圖4所示,包含2個SM(SM1和SM2)和1個CM,以及測量裝置A1和測量裝置A2,測量得到Δt1和Δt2,根據式(4)可以得到當前TTE網絡系統的CM計算開銷TCO。目前實驗室擁有4個商用貨架產品構成的SM節點,為了增加實驗的規模并盡量消除隨機誤差,將它們兩兩組合,配合含有CM的交換設備,共進行了6組實驗。根據部分實測數據計算得到的每輪計算開銷TCO原始結果和6組實驗的統計結果分別如表1和表2所示。
例如,在第一組實驗中,圖6(a)和 6(b)顯示了測量獲得的Δt1和Δt2;從細部觀察,圖6(c)中可見同一輪次二者數值的差值遠小于100 ns,說明TTE網絡正常運行的時候,TCC的絕對值很小。正是由于雙SM實驗屏蔽了容錯操作,才能在TCO的測量中消除雖然微小但未知的參量TCC的系統誤差。圖7為根據實測到的每輪Δt1和Δt2,計算獲得的計算開銷TCO;可以發現,將原始計算數據進行線性回歸,擬合直線的斜率幾乎0,說明統計平均消除了隨機誤差,統計結果符合TCO并不隨同步輪次變化的特性。

表1 計算開銷測量結果Table 1 Test results of calculation overhead

表2 計算開銷統計結果Table 2 Statistical results of calculation overhead

圖6 Δt1和Δt2的測量結果Fig.6 Measurement result of Δt1and Δt2

圖7 計算開銷TCO的測量結果Fig.7 Measurement result of calculation overheadTCO
根據共計13 724次實驗得到的TCO平均值為32 757 ns,以95%的置信概率處在 (32 711,32 798)納秒范圍內。
本文研究了TTE時鐘同步壓縮功能中關鍵參數的測量方法,在毋需訪問或影響被測網絡硬件和底層驅動軟件的前提下,利用自行設計的測量裝置捕獲PCF幀計算得到了給定TTE網絡在CM運行壓縮功能時的關鍵參數計算開銷,并通過多組實驗多次測量的統計平均消除了隨機誤差。
采用固定閾值的計數器對壓縮功能進行定時,當實際的計算時間隨著網絡規模的不同而變化的情況下,應等待一小段時間,以保證TCO參數值為常量。值得說明的是,本測量結果在精度誤差范圍內接近32 768 ns,后者是二進制計數器經常采用的數值。我方正在利用多種渠道查證,力圖進一步證實。
本測試方法的原理與實驗設計適用于采用PCF幀進行的分布式時鐘同步。在實驗中應根據精度要求,合理選擇實驗硬件平臺。例如,本測試裝置的核心硬件采用Spartan-6 XC6SLX100T芯片,定時精度只能達到10 ns量級;對于定時精度需求更高的測試,則需要采用更精密的芯片,專業的布局布線,以面對更高主頻和更完善信號完整性設計實現的挑戰。
(References)
[ 1 ] Mezzalira L.Real-time systems[J].Journal of Systems Architecture, 1996, 42(6-7):387-390.
[2] Steiner W,Dutertre B.Layered diagnosis and clock-rate correction forthe TTEthernetclock synchronization protocol[C]//IEEE, Pacific Rim International Symposium on Dependable Computing.IEEE, 2011:201-207.
[3] 邱愛華,張濤,顧逸東.面向空間應用的時間觸發以太網[J]. 國防科技大學學報,2014(5):117-123.QIU Aihua, ZHANG Tao, GU Yidong.Time-triggered Ethernet for space utilization[J].Journal of National University of Defense Technology, 2014(5):117-123.(in Chinese)
[4] Baggerman C,Mccabe M,Verma D.Avionics system architecture for the NASA Orion vehicle[R].JSC-CN-18906,09ATC-0118,2009.
[5] Alexander Zarov.Modeling and Simulation of the TTEthernet Communication Protocol[D].Technical University of Denmark,2013.
[6] Steinhammer K, Kopetz H.Time-triggered ethernet[R].SAE AS6802,2011.
[7] Steiner W,Bauer G,Jameux D.Ethernet for space applications: Ttethernet[C] //International SpaceWire Conference 2008, Nara, Japan, 2008.
[8] Plankensteiner M.TTEthernet: a powerful network solution for all purposes[J].Maxwell: Periodiek der Electrotechnische Vereeniging, 2010, 13(3): 1-15.
(責任編輯:龍晉偉)
Measuring Method for Calculation Overhead of Compression Function in TTE Network
KONG Yunwen, LI Qiao, TANG Xueqian, XIONG Huagang
(School of Electronics and Information Engineering, Beihang University, 100191)
V243;TP393
A
1674-5825(2017)05-0645-05
2016-09-19;
2017-04-21
中央高校基本科研業務(YWF-15-GJSYS-055)
孔韻雯,女,碩士研究生,研究方向為航空電子綜合。E-mail:kongyw@buaa.edu.cn