技術(shù)領(lǐng)域
本發(fā)明涉及現(xiàn)場總線通信領(lǐng)域,特別涉及一種通過光纖、以太網(wǎng)傳輸?shù)牟捎锰囟〝?shù)據(jù)幀結(jié)構(gòu)的命令響應(yīng)式高速總線數(shù)據(jù)傳輸方法及設(shè)備。
背景技術(shù):
高速數(shù)據(jù)總線技術(shù)是航空電子系統(tǒng)的的關(guān)鍵技術(shù),航空電子系統(tǒng)是現(xiàn)代飛機(jī)的“大腦”和“神經(jīng)中樞”,機(jī)載總線網(wǎng)絡(luò)則是其關(guān)鍵的“神經(jīng)網(wǎng)絡(luò)”,現(xiàn)有機(jī)載網(wǎng)絡(luò)互聯(lián)主要基于以下幾種技術(shù)標(biāo)準(zhǔn),一是MIL-STD1553總線標(biāo)準(zhǔn),二是基于光纖的FC-AE-1553總線標(biāo)準(zhǔn),三是基于以太網(wǎng)的AFDX總線標(biāo)準(zhǔn)。
MIL-STD-1553總線是美國專為飛機(jī)設(shè)備指定的一種信息傳輸總線標(biāo)準(zhǔn),實(shí)時(shí)性可靠性高,其總線工作頻率為1Mbps,采用曼徹斯特II碼,半雙工工作方式,主要的硬件部分為總線控制器iC,遠(yuǎn)程終端iT以及可選的監(jiān)控器iM??偩€最多支持31個(gè)遠(yuǎn)程終端,信息格式有10種類型,其消息的發(fā)起者均為總線控制器iC。
國內(nèi)航空航天設(shè)備仍然大量采用MIL-STD-1553B總線進(jìn)行數(shù)據(jù)通信,而MIL-STD-1553B總線在支持終端聯(lián)機(jī)數(shù)量、傳輸速率方面產(chǎn)生了瓶頸。隨著航空航天設(shè)備的發(fā)展,電磁干擾和電磁脈沖對MIL-STD-1553總線的影響越來越嚴(yán)重。
FC-AE-1553是將MIL-STD-1553B協(xié)議映射到光纖通道上得到的“吉比特1553”協(xié)議。
傳統(tǒng)以太網(wǎng)的不確定性、魯棒性、容錯(cuò)性差的特點(diǎn),使之不能在實(shí)時(shí)性高的航電領(lǐng)域發(fā)展,AFDX總線標(biāo)準(zhǔn)是在傳統(tǒng)以太網(wǎng)標(biāo)準(zhǔn)基礎(chǔ)上發(fā)展起來,采用冗余結(jié)構(gòu)、流量控制、VL虛鏈路等技術(shù)消除傳統(tǒng)以太網(wǎng)的弱點(diǎn),使適應(yīng)航電總線領(lǐng)域。
上述三種技術(shù)在報(bào)文負(fù)載比重方面均有較大的開銷,AFDX的最小命令需要48個(gè)字節(jié),F(xiàn)C-AE最小命令需要36字節(jié),既降低了總線有效帶寬,同時(shí)也增加了單個(gè)命令的延遲時(shí)間。另外上述三種技術(shù)主要應(yīng)用在民用領(lǐng)域,采用多層次協(xié)議體系,報(bào)文層層嵌套。如果轉(zhuǎn)為軍用時(shí),由于其調(diào)度一般在較高層次發(fā)生,因此其調(diào)度時(shí)間不可避免的在不同層次間消耗,在同等速率下的平均調(diào)度時(shí)間受協(xié)議層次影響很大。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明針對上述現(xiàn)有技術(shù)的不足,提出一種通過光纖、以太網(wǎng)傳輸?shù)牟捎锰囟〝?shù)據(jù)幀結(jié)構(gòu)的命令響應(yīng)式高速總線數(shù)據(jù)傳輸方法及設(shè)備。
根據(jù)本發(fā)明的一個(gè)方面,提供了一種數(shù)據(jù)傳輸方法,將數(shù)據(jù)按特定的幀格式封裝成數(shù)據(jù)幀進(jìn)行傳輸,所述特定的幀格式包括以下字段:
常量字段:Proto、Version字段,分別為報(bào)文遵循的協(xié)議以及協(xié)議版本;
消息控制字段:Pv,用來指示數(shù)據(jù)幀是否為廣播消息;Priority,標(biāo)識數(shù)據(jù)幀的優(yōu)先級;Retry,重傳次數(shù)標(biāo)志;
源地址、目的地址、目的端口字段:Source iT、Dest iT、iPort,用來指示網(wǎng)絡(luò)中的節(jié)點(diǎn)地址;
數(shù)據(jù)幀特性字段:Frame Index,多幀序號;Payload Length,數(shù)據(jù)有效負(fù)載長度;Flags,數(shù)據(jù)幀標(biāo)識;Response Code,數(shù)據(jù)響應(yīng)標(biāo)識;
命令特性字段:Command Seq,用于標(biāo)識總線消息的唯一性序列;RP,標(biāo)識數(shù)據(jù)幀是命令還是響應(yīng);Command,總線命令編碼;
校驗(yàn)字段:Frame Check Sequence,用于CRC校驗(yàn)。
所支持的數(shù)據(jù)傳輸類型包括以下一種或多種:主控制器發(fā)送或廣播數(shù)據(jù)幀至遠(yuǎn)程節(jié)點(diǎn);主控制器請求遠(yuǎn)程節(jié)點(diǎn)發(fā)送數(shù)據(jù)至主控制器;主控制器請求遠(yuǎn)程節(jié)點(diǎn)發(fā)送數(shù)據(jù)到另一遠(yuǎn)程節(jié)點(diǎn);遠(yuǎn)程節(jié)點(diǎn)直接發(fā)送或廣播數(shù)據(jù)至另一遠(yuǎn)程節(jié)點(diǎn),不由主控制器發(fā)送命令;遠(yuǎn)程節(jié)點(diǎn)發(fā)送具有最高優(yōu)先級的中斷消息,該中斷消息只被主控制器響應(yīng),主控制器預(yù)先安排中斷消息向量表,中斷消息觸發(fā)某中斷向量,執(zhí)行固定的總線調(diào)度;由主控制器依據(jù)周期間隔定時(shí)廣播周期控制消息,總線上的所有節(jié)點(diǎn)遵循周期控制消息發(fā)起數(shù)據(jù)傳輸。
根據(jù)本發(fā)明的另一個(gè)方面,還提供了一種數(shù)據(jù)傳輸設(shè)備,所述數(shù)據(jù)傳輸設(shè)備包括:
封裝單元,用于將不同類型的數(shù)據(jù)業(yè)務(wù)按權(quán)利要求1所述的特定幀格式封裝成相應(yīng)的數(shù)據(jù)幀;
發(fā)送單元,用于將封裝好的數(shù)據(jù)幀發(fā)送至接收方;
接收單元,用于接收其他設(shè)備發(fā)送到本設(shè)備的數(shù)據(jù)幀;
解析單元,用于對接收到的數(shù)據(jù)幀進(jìn)行解析;
處理單元,用于根據(jù)解析單元的解析結(jié)果進(jìn)行相應(yīng)的處理。
與前述現(xiàn)有技術(shù)的三種標(biāo)準(zhǔn)相比,本發(fā)明的基于特定幀格式的數(shù)據(jù)傳輸方法由于有效包頭長度大大減小,既提高了總線有效帶寬,同時(shí)也降低了單個(gè)命令的延遲時(shí)間。
附圖說明
圖1示出本發(fā)明所述傳輸方法中的數(shù)據(jù)幀結(jié)構(gòu)示意圖。
圖2示出本發(fā)明的iC-iT消息(或廣播)示意圖。
圖3示出本發(fā)明的iT-iC消息示意圖。
圖4示出本發(fā)明的iT-iT消息(或廣播)示意圖。
圖5示出本發(fā)明的iT-iT直傳消息示意圖。
圖6示出本發(fā)明的總線中斷消息示意圖。
圖7示出本發(fā)明的UPID組成示意圖。
圖8示出本發(fā)明的采用特定數(shù)據(jù)幀結(jié)構(gòu)進(jìn)行數(shù)據(jù)傳輸?shù)耐ㄐ旁O(shè)備。
具體實(shí)施方法
下面結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)描述。應(yīng)當(dāng)理解,此處所描述的實(shí)施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
實(shí)施例1:
本實(shí)施例提供一種采用特定數(shù)據(jù)幀結(jié)構(gòu)的命令響應(yīng)式高速總線數(shù)據(jù)傳輸方法,總線傳輸速率范圍為10Mbps/100Mbps/1000Mbps,2Gbps/4Gbps/8Gbps,兼容光電兩種接口方式。采用數(shù)據(jù)幀協(xié)議層次一致性,減少幀頭冗余過大,降低平均調(diào)度時(shí)間。
為數(shù)據(jù)傳輸所設(shè)計(jì)的特定數(shù)據(jù)幀結(jié)構(gòu)如圖1所示,對各字段的解釋如下:
1 常量字段:Proto/Version分別為報(bào)文遵循的協(xié)議以及協(xié)議版本,長度分別為8比特及4比特;
2 消息控制:Pv用來控制數(shù)據(jù)幀是否為廣播消息,長度為1比特;Priority,標(biāo)識數(shù)據(jù)幀的優(yōu)先級,長度為3比特;Retry為重傳次數(shù)標(biāo)志,長度為2比特;
3 源地址、目的地址、目的端口:Source iT/Dest iT/Subaddress,用來指示網(wǎng)絡(luò)中的節(jié)點(diǎn)地址,長度均為16比特;
4 數(shù)據(jù)幀特性:Frame Index,多幀序號,長度為8比特;Payload Length,數(shù)據(jù)有效負(fù)載長度,長度為16比特;Flags,數(shù)據(jù)幀標(biāo)識,長度為8比特;Response Code,數(shù)據(jù)響應(yīng)標(biāo)識,長度為16比特;
5 命令特性:Command Seq,用于標(biāo)識總線消息的唯一性序列,長度為14比特;RP,標(biāo)識數(shù)據(jù)幀是命令還是響應(yīng),長度為1比特;Command,總線命令編碼,長度為7比特;
6 校驗(yàn):Frame Check Sequence,用于CRC校驗(yàn),長度為32比特(4個(gè)字節(jié));
7 負(fù)荷:Payload,用于承載實(shí)際待傳輸?shù)臄?shù)據(jù)。
本協(xié)議采用層次一致性幀頭,上述的幀頭在MAC層、鏈路層、傳輸層中均可見,包括Frame Check Sequence在內(nèi)其有效包頭長度為20個(gè)字節(jié)。
節(jié)點(diǎn)支持最多65536種數(shù)據(jù)類型
一個(gè)目的節(jié)點(diǎn)可能包含多種數(shù)據(jù)類型或多種用途,Subaddress字段用于區(qū)分目的節(jié)點(diǎn)的數(shù)據(jù)類型或數(shù)據(jù)通道,16位寬的Subaddress最多包含65536個(gè)數(shù)據(jù)類型,完全滿足現(xiàn)有傳輸需求。
報(bào)文長度優(yōu)化
本協(xié)議在實(shí)現(xiàn)命令響應(yīng)等命令方式的前提下,控制協(xié)議幀頭的長度為20個(gè)字節(jié)(包含校驗(yàn)),顯然在同等線路速度下,本協(xié)議網(wǎng)絡(luò)報(bào)文吞吐率遠(yuǎn)遠(yuǎn)大于其它高速數(shù)據(jù)網(wǎng)絡(luò)。
根據(jù)一般硬件設(shè)計(jì)最優(yōu)化(存儲器4KB邊界條件,DMA傳輸效率等)長度以及串行收發(fā)器穩(wěn)定傳輸?shù)目紤],限定本協(xié)議的最大傳輸單幀為3968 Byte,不足4KB的128個(gè)字節(jié)用于應(yīng)用層、監(jiān)控等功能擴(kuò)充需要的幀信息。
命令響應(yīng)
命令及應(yīng)答類型由Command字段定義,RP標(biāo)識當(dāng)前報(bào)文為命令還是響應(yīng)。本協(xié)議節(jié)點(diǎn)支持主控制器(iC)、遠(yuǎn)程節(jié)點(diǎn)(iT)、總線監(jiān)控(iM)三種類型。支持的命令包含下述基本類型:
1 iC-iT,主控制器發(fā)送數(shù)據(jù)幀至遠(yuǎn)程節(jié)點(diǎn)(或廣播);
2 iT-iC,主控制器請求遠(yuǎn)程節(jié)點(diǎn)發(fā)送數(shù)據(jù)至主控制器;
3 iT-iT,主控制器請求遠(yuǎn)程節(jié)點(diǎn)1發(fā)送數(shù)據(jù)到遠(yuǎn)程節(jié)點(diǎn)2(或廣播);
上述三種類型為一般總線具備的數(shù)據(jù)傳輸能力,在此基礎(chǔ)上,本協(xié)議制定了下述節(jié)點(diǎn)數(shù)據(jù)傳輸類型:
1 iT-iT直傳消息:遠(yuǎn)程節(jié)點(diǎn)1直接發(fā)送數(shù)據(jù)至遠(yuǎn)程節(jié)點(diǎn)2(或廣播),不由主控制iC發(fā)送命令;
2 中斷消息:遠(yuǎn)程節(jié)點(diǎn)iT發(fā)送的具有最高優(yōu)先級的短消息,類似于傳統(tǒng)的硬件中斷,中斷消息只被iC響應(yīng),iC節(jié)點(diǎn)預(yù)先安排中斷消息向量表,中斷消息觸發(fā)某中斷向量,執(zhí)行固定的總線調(diào)度;
3 周期控制消息:本協(xié)議在保證總線的確定性上提出了周期控制消息,周期控制消息由iC依據(jù)周期間隔定時(shí)廣播,總線上的所有節(jié)點(diǎn)遵循周期控制消息發(fā)起數(shù)據(jù)傳輸,保證總線調(diào)度的確定性。
周期與命令響應(yīng)
總線上的消息分為周期消息與非周期消息,周期消息一般由iC控制器預(yù)先安排的指令調(diào)度產(chǎn)生,每一條消息可以安排單周期執(zhí)行次數(shù)以及多周期執(zhí)行間隔。
非周期消息由應(yīng)用層隨時(shí)插入,適用于突發(fā)以及不定數(shù)據(jù)間隔的數(shù)據(jù)傳輸。
總線上的每條消息均包含命令以及可選的響應(yīng)。
iC-iT消息(或廣播)是iC向iT進(jìn)行控制或發(fā)送數(shù)據(jù)的過程,基本過程如圖2所示。
iT-iC消息是iC請求iT發(fā)送數(shù)據(jù)至iC的過程,基本過程如圖3所示。
iT-iT消息(或廣播)是由iT向iT進(jìn)行控制或者發(fā)送數(shù)據(jù)的過程,基本過程如圖4所示。
iT-iT直傳消息是由iT自我發(fā)起的向其它iT獨(dú)立進(jìn)行控制或者發(fā)送數(shù)據(jù)的過程,點(diǎn)到點(diǎn)傳輸,基本過程如圖5所示。
中斷消息是由iT向網(wǎng)絡(luò)強(qiáng)制廣播數(shù)據(jù)或狀態(tài)的過程,其基本過程如圖6所示。
中斷消息只能由iC處理,并且iC依據(jù)事先編排好的向量啟動(dòng)中斷消息處理調(diào)度程序。
采用上述特定幀結(jié)構(gòu)的進(jìn)行數(shù)據(jù)傳輸,還支持冗余管理與重傳。冗余管理在鏈路層完成,其實(shí)現(xiàn)基于一個(gè)48比特的鏈路層唯一標(biāo)識UPID,UPID的組成如圖7所示。
UPID’48b = CSEQ’14b + Retry’2b + SiT’16b + RI’1b + CMD’7b + FIDX’8b
鏈路層依據(jù)UPID的唯一性對可能接收到的冗余報(bào)文進(jìn)行過濾。
標(biāo)識Retry為2bit字段,最大重傳次數(shù)為3次,重傳依據(jù)為目的節(jié)點(diǎn)沒有在規(guī)定時(shí)間給出應(yīng)答。重傳次數(shù)超過三次后,返回鏈路層傳輸失敗標(biāo)記。
實(shí)施例2:
本實(shí)施例提供一種采用特定數(shù)據(jù)幀結(jié)構(gòu)進(jìn)行數(shù)據(jù)傳輸?shù)脑O(shè)備,如圖8所示,該通信設(shè)備包括封裝單元、發(fā)送單元、接收單元、解析單元、處理單元,其中:
封裝單元用于將不同類型的數(shù)據(jù)業(yè)務(wù)按圖1所示的幀格式封裝成相應(yīng)的數(shù)據(jù)幀;
發(fā)送單元用于將封裝好的數(shù)據(jù)幀發(fā)送至接收方;
接收單元用于接收其他設(shè)備發(fā)送到本設(shè)備的數(shù)據(jù)幀;
解析單元用于對接收到的數(shù)據(jù)幀進(jìn)行解析;
處理單元用于根據(jù)解析單元的解析結(jié)果進(jìn)行相應(yīng)的處理。
本發(fā)明所述數(shù)據(jù)傳輸方法及設(shè)備中,各種數(shù)據(jù)業(yè)務(wù)根據(jù)一定的規(guī)則進(jìn)行分類,發(fā)送方根據(jù)分類結(jié)果把不同類型的數(shù)據(jù)業(yè)務(wù)按圖1所示的幀格式封裝成相應(yīng)的數(shù)據(jù)幀,然后進(jìn)行傳輸,接收方對接收到的數(shù)據(jù)幀進(jìn)行解析后再做相應(yīng)的處理。由于包括Frame Check Sequence在內(nèi)的有效包頭僅為20個(gè)字節(jié),與背景技術(shù)的三種標(biāo)準(zhǔn)相比,數(shù)據(jù)幀包頭大大減小,既提高了總線有效帶寬,同時(shí)也降低了單個(gè)命令的延遲時(shí)間。
通過以上的實(shí)施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在可讀取的存儲介質(zhì)中,如計(jì)算機(jī)的軟盤,硬盤或光盤等,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備 等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
以上所述,僅為本發(fā)明的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。