李秀朋李少輝
(1中國電子科技集團公司第五十四研究所河北石家莊050081)
(2中國移動通信集團河北有限公司石家莊分公司河北石家莊050000)
軟件通信架構(gòu)是一個開放的通信架構(gòu)規(guī)范,它告知通信系統(tǒng)設(shè)計者在符合SCA規(guī)范的系統(tǒng)中,軟件和硬件如何操作來達到協(xié)調(diào)一致;SCA允許通信平臺(如軟件定義無線電)加載應(yīng)用(如波形),運行這些應(yīng)用并且組網(wǎng)成一個整體系統(tǒng);SCA被通信平臺(如電臺等)使用時,硬件和軟件設(shè)計人員就如同建筑師或策劃者使用一種當?shù)氐慕ㄖ?guī)范來設(shè)計和建造房屋[1]。
SCA并不只是一個開放和被商業(yè)接受的標準,它還使用了許多開放的商用標準并以此為基礎(chǔ)。通過遵循SCA定義文件中詳述的標準,硬件和軟件設(shè)計者知道設(shè)計什么設(shè)備和程序,但SCA并沒有告知硬件和軟件設(shè)計者怎樣來設(shè)計他們的設(shè)備和程序。當設(shè)計符合SCA規(guī)范時,符合SCA的網(wǎng)絡(luò)系統(tǒng)(如符合JTRS的電臺或其他通信系統(tǒng)等)將能夠滿足符合SCA規(guī)范標準的互操作性,就如按照當?shù)匾?guī)則設(shè)計的水電系統(tǒng)能夠滿足當?shù)氐慕ㄖ桶踩?guī)范[2]。
SCA主要由2部分組成,應(yīng)用層和基礎(chǔ)設(shè)施層,基礎(chǔ)設(shè)施層由紅方和黑方組成。紅方指戰(zhàn)術(shù)無線通信系統(tǒng)中處理未加密的需保密信息的功能模塊和總線,黑方指戰(zhàn)術(shù)無線通信系統(tǒng)中處理不保密信息或已加密的保密信息的功能模塊和總線。
軟件通信體系結(jié)構(gòu)采用了與以往無線通信裝備不同的體系架構(gòu),它不是簡單的依據(jù)數(shù)據(jù)流處理過程將系統(tǒng)中的各類軟件組合在一起,而是在系統(tǒng)內(nèi)部建立了一個通用的軟件平臺,由該平臺負責(zé)完成對系統(tǒng)內(nèi)各類硬件的管理,與通信過程相關(guān)的算法實現(xiàn)則由軟件平臺之上的應(yīng)用軟件完成。軟件平臺包括操作系統(tǒng)、分布式處理中間件和核心框架,其中操作系統(tǒng)和分布式處理中間件為成熟的商業(yè)軟件,核心框架需要依據(jù)本標準的定義開發(fā)。應(yīng)用軟件包括完成波形功能的各類組件,應(yīng)用軟件的開發(fā)可以由不同的廠家完成,波形組件通過裝配組合,承擔(dān)特定的波形功能[3]。
軟件體系結(jié)構(gòu)要能適用于大多數(shù)工業(yè)總線體系結(jié)構(gòu),支持可靠的傳送機制,包括總線的錯誤檢測和糾錯。板支持包作為軟件通信結(jié)構(gòu)中的總線驅(qū)動層,其位置介于主板硬件和操作系統(tǒng)之間,可以認為是屬于操作系統(tǒng)的一部分,其主要功能是支持操作系統(tǒng),使之能夠更好的運行于硬件主板之上。BSP是相對于操作系統(tǒng)而言的,不同的操作系統(tǒng)對應(yīng)于不同定義的BSP,在總線支持級的BSP應(yīng)當執(zhí)行相應(yīng)的檢糾錯機制[4],如圖1所示。
圖1 基礎(chǔ)設(shè)施-總線層
軟件架構(gòu)依賴商業(yè)組件來支持多種專用的串行和網(wǎng)絡(luò)接口(例如,RS-232、RS-422、RS-423、RS-485、以太網(wǎng)和 802.x等)。為了支持這些接口,可以使用多種低等級的網(wǎng)絡(luò)協(xié)議。(例如,PPP、SLIP、LAPx和其他。)波形聯(lián)網(wǎng)功能的原理也可以存在于操作系統(tǒng)層。(例如,完成波形之間路由的商業(yè)IP協(xié)議棧。)
由于無線通信裝備在應(yīng)用上的特殊性,操作系統(tǒng)應(yīng)為嵌入式實時操作系統(tǒng)(如VxWorks),主要提供本地系統(tǒng)引導(dǎo)、硬件設(shè)備驅(qū)動、內(nèi)存管理、進程管理和任務(wù)實時調(diào)度等功能,為上層軟件提供多線程支持。操作系統(tǒng)可以根據(jù)支持具體任務(wù)/板的環(huán)境進行調(diào)整。例如:
①因為特殊的處理器板原理,板級支持包(BSP)能夠調(diào)整實時操作系統(tǒng),包括電路板上支持專用設(shè)備/芯片的設(shè)備驅(qū)動;
②ORB需要支持必要交互處理器通信的設(shè)備驅(qū)動;
圖2 基礎(chǔ)設(shè)施-操作系統(tǒng)層
為了解決裝備內(nèi)部多處理器情況下的通信問題,降低上層應(yīng)用軟件對底層具體通信機制的依賴性,在軟件平臺中使用分布式處理中間件屏蔽底層差異,為上層軟件提供統(tǒng)一的開發(fā)模式,提高軟件的可移植性。目前國內(nèi)外均有成熟的CORBA商業(yè)軟件可用,考慮到無線通信裝備在計算資源上受限的情況,所選用的CORBA中間件應(yīng)該符合minimumCORBA規(guī)范,并提供命名服務(wù)、事件服務(wù)和日志服務(wù)[6],中間件設(shè)施如圖3所示。
圖3 基礎(chǔ)設(shè)施-中間件
核心框架是軟件平臺中最為核心的部分,通過核心框架定義的各類接口,為系統(tǒng)內(nèi)部軟和硬件管理提供了手段,是系統(tǒng)根據(jù)用戶需求提供不同的通信功能的重要基礎(chǔ)。
核心框架由基本應(yīng)用接口、框架控制接口、框架服務(wù)接口和域配置文件構(gòu)成?;緫?yīng)用接口中的"資源"接口是所有的波形組件必須繼承和實現(xiàn)的接口,波形組件只有實現(xiàn)這些接口,才能在系統(tǒng)中被正確地控制和使用;核心框架服務(wù)接口通常由平臺開發(fā)者完成,通過在系統(tǒng)內(nèi)部建立聯(lián)合文件系統(tǒng),用戶可以像使用本地文件系統(tǒng)一樣對電臺中的文件進行操作,而不必關(guān)心其具體物理位置;域配置文件采用XML語言對硬件和軟件進行描述和說明,系統(tǒng)中的所有波形組件和設(shè)備在提交驗收時,都必須提供配置文件描述其功能、屬性信息和依賴性關(guān)系等,核心框架如圖4所示。
圖4 基礎(chǔ)設(shè)施-核心框架
本文詳細分析了SCA軟件架構(gòu)及其各部分的功能和特點。SCA可以最大化利用一些現(xiàn)成的商用協(xié)議、軟件和產(chǎn)品,通過分層的和開放的商用基礎(chǔ)軟件將核心應(yīng)用和非核心應(yīng)用與底層硬件分離開;通過CORBA中間件技術(shù)提供分布式的處理環(huán)境,以提高波形應(yīng)用軟件的可移植性、可重用性和可擴展性。基于SCA設(shè)計的電臺,不僅能夠提高其硬件平臺的通用化水平,增加硬件設(shè)計的可重用性,同時增強了軟件設(shè)計的系統(tǒng)化水平,因此SCA為電臺的發(fā)展指明了方向。
[1]Joint Tactical Radio System.Software Communication Architecture(SCA)[P].USA:MSRC-5000SCA,2001.
[2]PLACEJ,KERR D,SCHAEFER D.Joint Tactical Radio System[C].IEEEMilitary Communications Conference,2000(19):209-213.
[3]周麗麗.SCA中間件技術(shù)淺析[J].計算機與網(wǎng)絡(luò),2011,37(10)51-53.
[4]王慶生.基于SCA規(guī)范的軟件無線電系統(tǒng)設(shè)計[J].現(xiàn)代導(dǎo)航,2012(1):56-60.
[5]孫佩剛,趙 海張文波.基于軟件通信體系結(jié)構(gòu)的波形實現(xiàn)及其研究[J].計算機工程,2006,32(17):170-172.
[6]陸志彬.基于軟件通信體系結(jié)構(gòu)的波形應(yīng)用研究與實現(xiàn)[D].四川:電子科技大學(xué),2008.