唐 宇
(中國西南電子技術研究所,成都 610036)
傳統機載系統采用聯合式航空體系結構,由于功能軟件與特定的硬件綁定,軟件重用性差,系統重復開發、升級測試質量成本高,集成復雜。隨著集成技術的不斷發展,一種基于RapidIO高速交換總線網絡的模塊化綜合集成方法成為解決機載系統集成的有效途徑。該方法針對聯合式機載系統速率低、延遲大,硬件軟件耦合嚴重,系統維護升級困難問題,參考國際標準ISO/IEC18372《RapidIO互連規范》在RapidIO總線基礎上構建了基于“虛通道”的網絡管理與通信中間件,解決了實際工程問題,最終提煉升華為《機載系統串行RapidIO總線標準》(簡稱《機載RapidIO標準》)。本文第一節介紹了機載RapidIO標準的編制過程,第二節分析了機載RapidIO標準,重點是網絡管理與通信層標準,第三節論述了利用該標準的設計原則。
RapidIO是一種分組交換結構,目的是連接線路板上的芯片和機箱內的線路板。1997年由Motorola等11個單位發起成立了RapidIO行業協會。2003年10月被國際標準化組織(ISO)和國際電工委員會(IEC)批準為開放式系統互連參考模型OSI/IEC18372《RapidIO互連規范》。
該規范分三層體系結構,分別為邏輯層、傳輸層和物理層。其中物理層對應OSI七層網絡模型中的物理層及鏈路層,傳輸層對應OSI七層網絡模型中的網絡層,邏輯層對應OSI七層網絡模型中的傳輸層及表示層。
邏輯層規范位于最高層,定義全部協議和包格式,為端點器件發起和完成事務提供必要的信息,包括邏輯I/O操作、消息傳遞操作、共享內存操作、流控及數據流操作。傳輸層規范定義RapidIO地址空間和在端節點間傳輸包所需的路由信息。物理層規范定義了器件級接口細節,如包傳輸機制、流控、電氣特性和底層錯誤管理等。
串行RapidIO總線是一種新型高性能、低引腳數、基于報文交換的互連體系結構,預計可以滿足現在和未來20年機載綜合射頻系統互連需求。《機載RapidIO標準》的主要內容基于ISO/IEC18372《RapidIO互連規范》(以V1.3版本為主、兼容V2.0版本的部分內容)及在機載系統中應用RapidIO總線的經驗積累和成果總結,經過嚴謹論證,結合工程驗證情況,采用、剪裁和演進。本標準的主要構成部分及內容來源包括:
a)串行物理層,因為并行物理層在機載系統中很少采用,所以剪裁掉,只保留《RapidIO互連規范》“第6部分:串行協議鏈路物理層”;
b)公共傳輸層,采用《RapidIO互連規范》“第3部分:公共傳輸規范”;
c)邏輯層,采用《RapidIO互連規范》的“第1部分:輸入/輸出邏輯規范”、“第2部分:消息傳遞邏輯規范”和“第5部分:全局共享存儲器邏輯規范”;
d)網絡管理與通信層,為在機載系統中應用RapidIO總線相關成果和經驗的總結。
如圖1所示,通過對國際標準的《RapidIO互連規范》三層體系內容進行選用和剪裁,在邏輯層之上新增加網絡管理與通信層,形成適用于機載系統集成設計的《機載RapidIO標準》。

圖1 機載RapidIO標準演進過程
確定“網絡管理與通信層”為本標準重要內容,來自于機載系統對模塊化綜合系統體系結構的需求。而解決航空模塊級高度綜合集成系統復雜性問題的根本出路在于如何將物理上高度耦合的系統劃分為邏輯上松耦合系統,提高系統各實體的內聚性,降低各功能實體之間的耦合性。
模塊化綜合系統體系結構的諸多優勢事實上也正是充分利用了分布式應用計算系統技術的進步而獲得的。模塊化綜合系統用“虛通道”技術代替先前聯合式系統中點到點有線互連,在一個集成的物理網絡上通過軟件在任意處理器之間創建虛連接的數據或命令通道,構建了功能強大的實時分布式計算能力,使得模塊化綜合系統最終脫離了傳統聯合式系統結構硬件的束縛,邏輯上實現松耦,本標準的網絡管理與通信層正是在機載系統的平臺上構建構建了一個是解決機載環境下的模塊化綜合系統集成的有效手段之一。
機載系統的功能實現是通過其內不同模塊上的不同處理器間通信實現的。通常每個處理器只有1個物理端口,但根據完成的軟件功能情況,可配置多個“虛通道”,多個“虛通道”復用同一個物理端口,這樣功能軟件就與實際硬件無關。本標準與國外標準的不同在于針對機載系統的模塊的綜合化作了量身定制:邏輯層之上構建網絡管理與通信層,如圖2所示。該層內的通信組件實現了“虛通道”,應用軟件可通過通信組件屏蔽硬件差異,這樣一個硬件就能部署多個應用,讓用戶只關注應用,降低硬件對功能的復雜度;網絡管理組件管理RapidIO這種分布式網絡資源,讓系統控制對應用軟件在具體硬件的部署有詳細的把控。
網絡管理與通信層的頂層為用戶接口層,為應用軟件提供統一的API應用編程接口,每個應用都使用同樣的接口,用戶無需關心底層硬件結構,屏蔽了應用隨底層環境的改變而改變,有助于用戶集中精力在應用邏輯部分。
網絡管理與通信層中間層為核心層,包括網絡管理及通信管理兩個軟件子系統。其中,網絡管理軟件子系統主要完成RapidIO網絡發現及枚舉、RapidIO網絡資源抽象及倉儲、RapidIO網絡實時監測、RapidIO網絡節點重構、RapidIO主備網絡重構等功能。通信管理子系統主要完成通信連接建立、通信句柄管理、數據接收處理、數據發送處理、通信事件處理等功能。
網絡管理與通信層底層為環境適配層,主要針對機載綜合射頻系統內的不同硬件模塊,如信號處理模塊、網絡管理模塊、數據處理模塊完成RapidIO驅動及協議處理。

圖2 網絡管理與通信層結構
從機載系統的功能需求出發,根據系統規模規劃RapidIO網絡架構,遵循“由下至上”從物理層到傳輸層、邏輯層再到網絡管理與通信層中間件提供應用程序接口的設計原則。物理層、傳輸層和邏輯層除遵守國際標準《RapidIO互連規范》對應層相應的內容外,針對機載系統,需要額外符合以下設計原則:
物理層的設計原則:
a)RapidIO網絡內的節點屬于主節點、葉子節點和交換節點之中的任意一種;
b)主節點和葉子節點間通過交換節點互連,主節點和葉子節點之間不直接連接;
c)主節點和交換節點之間、葉子節點和和交換節點之間采用相同的物理層鏈路模式(1x或者4x)和相同的鏈路傳輸速率。
d)RapidIO網絡采用星型或者雙星型的互連拓撲。
傳輸層設計原則:
a)所有主節點和葉子節點一律使用大端模式(Big Endian);
b)使用RIO總線的節點范圍為0~255;
c)針對雙星型互連冗余拓撲網絡,主網管節點的ID為0,備網管節點的ID為254,剩余的1~253為葉子節點和交換節點共用。255保留為維護包使用。
邏輯層設計無額外要求。
通過在邏輯層的基礎上構建網絡管理與通信層,實現機載系統的通信中間件功能。其環境適配層與邏輯層的RapidIO驅動接口相接,用戶接口層與應用軟件的功能接口相接,按照如下接口封裝API函數,用戶直接調用這些API函數就能完成數據收發功能:
trcsGetPort(CONNOBJ*objConn,char *szPortName,int nTimeout,int nGroupNumber,int receiveType)
函數說明:獲取連接對象
rcsSend(CONNOBJ nConnObj,char *pData,int nDataLen,int fl ag);
函數說明:發送數據。
在應用過程中,功能應用者通過rcsGetPort實現虛端口名稱與通信句柄的映射,通過rcsSend完成發送數據。
現代軍事電子系統的長壽命周期特點要求系統能夠不斷的進行功能擴展或需求變更,性能要求也不斷提升,這導致機載系統設計復雜性急劇增加,本文針對《機載系統串行RapidIO總線標準》進行了深入剖析,對在實際工程中如何在RapidIO總線基礎上使用網絡管理與通信中間件,實現功能軟件與硬件解耦合,提出了具體方法,具有指導作用。