- 相關推薦
談DIMA系統實時通信流量的時延分析方法論文
引 言
當前,先進的航空電子體系結構正從集中式綜合向分布式綜合發展,形成“分布式綜合模塊化航空電子(distributed integrated modular avionics,DIMA)”的概念。在DIMA系統中,為保證安全關鍵性處理任務的嚴格時間確定性,在采用分布式時鐘精確同步和時間觸發(timetriggered,TT)通信的同時,需兼容既有設備的事件觸發速率約束(rate-constrained,RC)通信。SAE AS6802標準定義的時間觸發以太網(time-triggered Ethernet,TTE)就是支持這種混合關鍵性流量的綜合化航空電子網絡互連解決方案。TT流量的時延確定性主要由離線設計的調度時刻表保證,W.Steiner等[3]提出由形式化方法求解組合優化問題以獲得可行調度時刻表的方案,然而,設計驗證過程中仍需要分析給定功能構件之間TT流量的時延參數。對于RC流量,雖然存在確定性網絡演算、隨機網絡演算、實時演算(real-time calculus,RTC)、軌跡法等多種分析方法,但考慮到DIMA系統中存在高優先級TT流量占用的情況,必須開發適應這種特定場景的建模與分析方法。本文基于DIMA系統綜合化互連配置的特征,從處理層次和互連層次相結合的角度,提出一套適用于分布式綜合航空電子系統的流量建模與時延分析方法,即:采用體系結構分析與設計語言(architecture analysis and designlanguage,AADL)描述系統的體系結構,基于體系結構模型進行TT流量的時延分析,采用模型轉換的方法將體系結構模型及其具體配置轉化為RTC分析模型,對RC流量的時延進行最壞情況分析。最后,結合典型的流量配置案例,對該方法進行了驗證。
1 DIMA系統的AADL模型
體系結構分析與設計語言(AADL)脫胎于具有長期航空電子領域應用基礎的MetaH 語言,適用于描述具有實時響應要求、容錯、必須經過認證的嵌入式實時系統,故特別適于對航空電子體系結構進行描述與分析。開放源碼AADL 工具環境(open source code AADL tool environment,OSATE)是AADL 開發小組開發與維護的一個Eclipse插件集,全面支持AADL 模型的構建與前端處理。本文即采用該工具開展DIMA系統的AADL建模與分析。
DIMA系統的體系結構兼具“綜合模塊化”與“分布式”兩大優點:一方面,對共享程度很高的硬件采用模塊化的構件實現,并使之具有統一的網絡互連接口;另一方面,由于硬件模塊和處理資源的分布式部署,允許異構的處理模塊通過高精度同步的網絡進行并行處理,并克服了集中式系統不利于散熱的缺點,解決了其電磁兼容等環境控制問題。綜合化互連對DIMA系統優點的發揮具有至關重要的作用,展示出在大型飛機上DIMA系統的處理與互連方式。
相比于集中式系統,分布式系統的核心處理資源不再集中于某個固定的區域內,而是在較大的范圍分布部署;同時,可重構性提高了這些分布式資源的利用率。據此,DIMA體系結構建模過程中必須著重考慮如下兩點:
(1)只能在較高層次的子系統中聲明分布式應用到資源的綁定情況。
由于資源的分布式排布,上層應用完全可能綁定到其它子系統所包含的硬件資源上。這種情況下,由于該應用所綁定的硬件資源不是其所屬的當前層次子系統中的構件,故只能在較高層次的子系統中對綁定情況進行聲明。如圖2所示的分布式系統(空心燕尾箭頭表示線程到處理器的綁定情況)中,線程T21綁定的處理器Proc1并不是子系統S2的子構件,只有在系統S_Top層次才能對這種綁定情況做出聲明。
(2)處理器需要針對綁定在其上的各個線程聲明調度方式。
由于處理器上綁定的線程可能來自不同的上層應用(中綁定到處理器Proc1上的線程T12與T21),因此建模過程中,處理器必須明確聲明對綁定在其上的每個線程,特別是分布式線程(如T21),可采取的調度方式。
2DIMA系統的流量模型
時間觸發以太網(TTE)是實現DIMA系統互連的關鍵,各個分布式節點對協議控制幀(protocol controlframe,PCF)打透明時鐘時戳,并根據PCF進行固化和壓縮操作以實現亞微秒級的時鐘校準,從而可支持同步消息跨越異構設備的傳輸。TTE網絡在為時間觸發(TT)流量提供嚴格的時間確定性保證的同時,為保護投資,還設置有優先級較低的速率約束(RC)和“盡力傳”服務類型。在航空電子網絡中,一般采用RC類型承載事件觸發的流量。AADL對端到端流量的模型描述,歸納定義為流規范(flow specification)、流實現(flow implementation)和端到端流(end-to-end flow)!傲饕幏丁痹跇嫾愋椭袑υ摌嫾辛鞯钠鹗(flowSource)、從輸入端口到輸出端口所通過的路徑(flow path)以及終止(flow sink)進行定義,流路徑上的端口類型可以不同,而且同一個端口可包含在多個流規范的定義中。
“流實現”在構件實現中通過一系列由子構件流規范的輸入端口到輸出端口的流路徑和連接的序列對流規范的具體結構進行描述,同一個流規范可以有多種實現形式!岸说蕉肆鳌痹跇嫾䦟崿F中采用關鍵字“end to end flow”對一條源于子構件、途經一系列子構件并終止于子構件的邏輯信息流進行聲明,雖然只涉及當前一層子構件,但子構件實現中還可以包含子構件,使端到端流的聲明逐層實例化,最終得到由流規范實例和連接實例組成的端到端流的實例。在典型AADL流模型中,線程構件T1、T2和T3分別是進程構件P1、P2和P3的子構件,系統S中由P1發出,經過P2到達P3的端到端流,具體到線程層次即表現為由T1發出,經過T2到達T3的端到端流。
3 DIMA通信流量的時延分析
為保證數據和事件的時間確定性滿足實時性能要求,從航空電子系統設計初期開始就需要對信息流量進行時延分析。在DIMA系統中,由于分布式計算和通信的實時行為既與網絡通信任務的配置有關,又涉及資源的規劃設計,故有必要從處理層次和互連層次相結合的角度綜合考慮,進行較為全面的時延分析。據此,本文擬定的DIMA系統通信流量時延分析方案。
3.1 時間觸發流量的時延分析
時間觸發(TT)流量是在封閉性系統中的時間確定性信道上進行傳輸的:一方面,系統中客戶端之間通過中心調度器實現協作,建立無沖突的全局調度方案;另一方面,對于具有時間確定性的傳輸信道,消息的最大和最小傳輸延遲由設計者預先設定,以確保消息傳輸時延的有界性。因此,TT流量的端到端傳輸過程中不存在因傳輸協議或多路復用造成的排隊延遲,只需在處理層次進行時延分析。
AADL提供了基于流模型的時延分析框架。該框架認為,端到端流的時延主要受如下4種因素影響:
(1)處理時間:主要包括執行時間和完成時間,相關的屬性有計算執行時間Compute_Execution_Time、截止期限Deadline、周期Period等,最壞情況的處理時間分析主要考慮Deadline以及Period。
(2)處理延遲:不同采樣方式造成的處理延遲是不同的,由于TTE網絡為系統提供了精確的分布式時鐘同步,需按照同步采樣的方式進行計算——處理時間加上所有的傳輸時間和延遲之后,再以采樣周期上取整。
(3)傳輸時間:主要受數據塊大小、連接或傳輸設備的速度,以及傳輸協議開銷的影響,相關的屬性包括數據塊大小Source_Data_Size、傳輸時長Transmission _Time等。
(4)傳輸延遲:這是實際傳輸協議或多路復用排隊的結果,需要借助框架之外的工具,并結合綜合化互連、流量約束等信息進行分析。相應的屬性為Propagation_Delay,其值需要由設計者預先給定。
OSATE平臺集成有相應的分析工具,即,流時延分析
插件(flow latency analysis plug-in)。該插件利用前文所述的相關屬性值,對特定流量的端到端時延進行分析計算,并以信息提示的形式給出結果。
3.2 速率約束流量的時延分析
對于速率約束(RC)流量,由于TTE并不提供嚴格的時間確定性保證,傳輸過程中可能存在因傳輸協議規定或多路復用造成的排隊延遲,因此,在利用AADL流時延分析插件進行處理層次時延分析的同時,還需要充分考慮傳輸過程中的排隊延遲,在互連層次進行分析。
AADL流時延分析框架的一個局限在于,無法通過自身的分析計算得出表征傳輸延遲的屬性值而需要設計者預先給定,故必須借助其它分析方法為該預設過程提供支持。作為網絡演算在實時應用領域的擴展,實時演算(RTC)基于精確描述事件流時間特征的事件模型,實現實時系統中各構件的時間性能、緩沖區需求和負載狀況的分析求解。
采用RTC 進行互連層次時延分析的前提是,系統AADL模型中必須包含構建相應RTC模型所需的參數。這些參數主要描述系統各個節點輸入的事件流的到達曲線、服務曲線,以及通信和處理過程的歷時,如處理器和線程的調度方式、總線的帶寬等。特別地,作為流量的入口和出口,構件的端口應當為RTC描述輸入流特性的周期-抖動-延遲(period-jitter-delay,PJD)模型提供相關參數。對此,可定義兩個屬性:輸入速率“Input_Rate”取值為范圍[s,p],其中,s表示在到達的事件流中相鄰兩個到達事件的最小時間間隔(參數D),p表示該事件流的周期(參數P);輸入抖動“Input_Jitter”的值表征PJD模型中的參數J。
由于AADL并未深入考慮互連層次的具體實現情況——部分所需的參數(如:線程的調度方式、PJD模型相關的端口屬性等)是標準AADL中未定義的,因此,需借助AADL的可擴展性,對標準AADL屬性集進行擴展,為相關構件增加適于表征具體互連特征的屬性,以補充與完善AADL模型,使之適用于互連層次的時延分析。與RTC參數相關的自定義屬性集的部分代碼。
4 AADL模型向RTC模型的轉換
在跨越處理和互連兩個層次進行時延分析的過程中,時間觸發(TT)流量可以直接在AADL流時延分析框架下進行分析,而對速率約束(RC)流量的分析必須借助其它專用的分析模型,即實時演算(RTC)模型。因此,必須實現從AADL模型到RTC模型的轉換,并且使轉換后的模型可以利用RTC分析工具快速獲取必要的時延參數;將這些參數加入到AADL體系結構模型中,以使體系結構模型的成熟度隨設計過程的深入而不斷提升。值得說明的是,模型轉換不僅涉及RC流量,考慮到TT流量(高優先級)在傳輸過程中會對RC流量(低優先級)造成影響,TT流量的配置和性能指標同樣需要一并轉換。
在具體的轉換過程中,要保持模型意義的一致性,必須結合流量和資源兩個角度綜合考慮,而從AADL模型中準確提取出資源對上層應用的限制關系,是保證模型一致性的關鍵。
資源角度——排定綁定在各個硬件資源上的應用的優先次序,次序較前者享有使用硬件資源的優先權:①對于處理器,按照與調度方式相應的屬性值排定綁定在其上的線程的優先次序,如對綁定在固定優先級(FPS)調度方式的處理器上的線程,應當按照各自的優先級屬性值進行降序排列;②對于總線,按照復用方式排定綁定在其上的連接的優先次序,如對TDMA方式,需先按照各自所占據的時隙對連接進行分組,每個時隙內部再進行排序,優先級高的連接享有對該時隙的優先訪問權。
流量角度——在應用已按資源利用的優先權完成排序后,依照流量方向,順次連接所經過的各個應用節點。按照上述方法,可從AADL模型中提取出資源對上層應用的限制關系。其中,上標r、e、c、m分別代表資源節點、輸入事件源節點、計算節點(對應于線程構件)和消息節點(對應于連接構件)。獲得資源對應用的限制關系后,需要再次按資源方向檢查各個應用節點,將符合特定條件的多個節點進行合并(如,接受EDF調度的多個節點可合并為一個EDF調度模型抽象節點),形成最終的RTC模型。在生成的RTC模型中,硬件資源的服務曲線沿資源利用優先級方向(縱向)“傳遞”,各流量的到達曲線沿流量方向(橫向)“傳遞”。
以上述模型轉換思想和方法為指導,本文開發了實現AADL模型向RTC模型轉換的插件。該插件以DIMA 系統AADL體系結構模型為分析對象,提取系統實例中的端到端流量信息和流量方向上各個應用節點中與RTC建模相關的屬性值,整合并存儲為以流量為導向的XML文件;的限制關系提取該XML文件中的資源信息并整理生成以資源為導向的XML文件;對流量導向和資源導向的兩個XML文件提供的信息進行綜合分析,最終生成存儲RTC模型的Matlab文件。
5 案例研究
展示出一個簡單DIMA系統案例的AADL模型。
由于頁面篇幅所限,用數字編號代表系統中的子構件。主要構件中相關屬性值的設定情況詳見(時間單位均為微秒)。
為便于討論,將4條端到端流量進行編號:
flow1:1->2->3->4->5->6->7->8->1
flow2:9->10->11->12->13->14->15->16->17(TT)
flow3:9->18->9
flow4:17->19->17
首先,借助OSATE平臺上的AADL流時延分析插件進行處理層次的時延分析,計算得各條流量的時延上界。然后,使用自行開發的模型轉換插件,將AADL模型轉化為RTC模型,并通過瑞士聯邦技術學院開發的RTC分析工具RTCToolBox對該模型進行互連層次的時延分析,計算得各個節點的互連層次時延上界。
對于flow1,因其流經多個節點,將所流經的各個節點
的時延上界相加,可得到一個總體的時延上界
Delay _Flow1=4+5.75+41.333+5+45.333+6.625+10.25=118.291(μs)
另一方面,依據“Pay Burst Only Once”原則計算所得的時延上界為117.042μs,顯然,后者是一個更“緊”的確界。
下面,對兩個層次的分析結果進行綜合:對于TT流量flow2,由于不存在因傳輸協議或多路復用造成的排隊時延,故綜合考慮處理和互連兩個層次的時延上界為:
Total_Delay _Flow2=838+0=838(μs)對于其它3條RC流量,將處理層次和互連層次的分析結果相加,即得到綜合考慮兩個層次的時延上界
Total_Delay _Flow1=832+117.042=949.042(μs)
Total_Delay _Flow3=53+10.75=63.75(μs)
Total_Delay _Flow4=53+6.75=59.75(μs)
在按照上述方法求得各條流量的時延上界參數后,即可利用這些參數開展系統實時性能評價,以及必要的迭代設計等后續工作。
6 結束語
本文基于DIMA系統特征,使用AADL語言建立系統體系結構模型和流模型,結合AADL流時延分析框架和RTC,提出一套處理與互連層次相結合的端到端流量的時延分析方法。該方法通過自行開發的插件將AADL模型轉換為RTC模型,在AADL體系結構模型與專業的RTC分析工具之間建立有機聯系,實現了跨層次的時延分析,可用于分布式綜合航空電子系統設計過程中通信任務的時間確定性分析與評價。
此外,在研究過程中發現,目前AADL語言在描述互連通信方面存在明顯的局限,如表征硬件設備之間互連的總線構件非常抽象,難以準確表述實際傳輸網絡中的分組交換情形等。因此,隨著DIMA系統在航空電子領域的逐漸推廣,AADL語言有必要增加相應的硬件設備互連建模符號的語義。
【談DIMA系統實時通信流量的時延分析方法論文】相關文章:
異構系統網絡通信技術分析論文11-07
長時延丟包網絡控制系統的分析與建模03-07
數字通信系統的應用方法11-15
嵌入式實時操作系統研究與分析03-12
計算機通信系統的構建論文11-16
基于Vxworks實時操作系統的串口通信程序設計與實現03-18
分析同步技術在通信系統中的應用價值12-05
網絡讀者訪問流量統計分析系統的研究與實現03-25
通信市場營銷策略分析論文05-24
長潭灌區通信系統的研究與建設論文06-09