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