安百俊,呂 冰,李新民
(中航工業(yè)西安航空計(jì)算技術(shù)研究所,西安710068)
基于SM61864的GJB289A通信接口開(kāi)發(fā)和應(yīng)用
安百俊,呂 冰,李新民
(中航工業(yè)西安航空計(jì)算技術(shù)研究所,西安710068)
為滿(mǎn)足GJB289A接口小型化、輕型化、低功耗、高可靠性和靈活性應(yīng)用需求,設(shè)計(jì)一款采用SM320F2812作為智能處理器、SM61864芯片作為GJB289A控制芯片,采用FPGA實(shí)現(xiàn)主要邏輯的雙余度雙通道MBI。MBI能極大降低總線負(fù)載,提高總線傳輸效率。SM61864使得MBI具有BC、RT、Monitor、RTMT等功能。通過(guò)在線綜合與聯(lián)試,MBI模塊能夠滿(mǎn)足系統(tǒng)的快速、靈活等要求。
總線控制器(BC);遠(yuǎn)程終端(RT);遠(yuǎn)程終端組合選擇消息監(jiān)控(RTMT);數(shù)字信號(hào)處理器(DSP);可編程門(mén)陣列(FPGA)
當(dāng)前,航空電子系統(tǒng)中的主流通信網(wǎng)絡(luò)仍然采用GJB289A,因?yàn)镚JB289A總線技術(shù)成熟,可靠性高。MBI模塊作為航空電子系統(tǒng)中通用總線接口模塊,實(shí)現(xiàn)了GJB289A總線協(xié)議,被廣泛應(yīng)用。之前,MBI模塊廣泛采用UTMC公司生產(chǎn)的協(xié)議芯片實(shí)現(xiàn)GJB289A總線的ISBC協(xié)議。而ISBC協(xié)議,對(duì)系統(tǒng)總線通信表的設(shè)計(jì)要求很高,并且很不靈活。隨著總線負(fù)載的增加,傳統(tǒng)的MBI模塊在重量、體積、消息處理速度、存儲(chǔ)器容量、軟硬件編程方式等方面已經(jīng)無(wú)法滿(mǎn)足系統(tǒng)要求。這樣,迫切需要設(shè)計(jì)一款新的MBI來(lái)解決上述“弱點(diǎn)”,以提高系統(tǒng)的性能和靈活性。
通過(guò)介紹MBI模塊的實(shí)現(xiàn),推廣SM61864在今后MBI設(shè)計(jì)上的應(yīng)用。
通常,GJB289A總線網(wǎng)絡(luò)上有且只有一個(gè)BC,同時(shí),會(huì)有最多31個(gè)遠(yuǎn)程終端。BC用于組織消息傳輸和管理網(wǎng)絡(luò),RT按照BC傳輸?shù)闹噶?,可以接收BC傳輸?shù)南?,發(fā)送消息到BC或其他RT。航空電子通信系統(tǒng)對(duì)應(yīng)的結(jié)構(gòu)如圖1所示。
BC的硬件設(shè)計(jì)保持和以前設(shè)計(jì)相同的思路,采用SM61864實(shí)現(xiàn)航空電子系統(tǒng)物理層和數(shù)據(jù)鏈路層的功能;軟件固化在MBI模塊上的智能處理器內(nèi)部FLASH中;驅(qū)動(dòng)軟件則駐留在主機(jī)上,由應(yīng)用軟件根據(jù)系統(tǒng)需要實(shí)現(xiàn)對(duì)通信軟件的控制。
圖1 航空電子通信系統(tǒng)層次結(jié)構(gòu)
MBI在設(shè)計(jì)重量上要求盡可能輕、體積上盡可能小、消息處理速度盡可能快、存儲(chǔ)器容量盡可能大、軟硬件編程盡可能方便,因此,在設(shè)計(jì)的時(shí)候,使用SM61864帶來(lái)的如下優(yōu)點(diǎn):
a.實(shí)現(xiàn)了MPBC協(xié)議,兼容以前的ISBC協(xié)議,同時(shí)增加了很多新特點(diǎn);
b.Mini-ACE集成了GJB289A總線協(xié)議處理能力和雙余度收發(fā)器功能,體積大幅減小,重量大幅減輕;
d.主要采用3.3V邏輯供電,5V收發(fā)器供電,使得MBI電源設(shè)計(jì)簡(jiǎn)單,功耗低;
e.具備了作為BC時(shí)能監(jiān)控RT到RT消息和RT到RT廣播消息;
f.作為RT的同時(shí),可以作為選擇消息監(jiān)控,監(jiān)控除自身外所有其他RT的消息;
g.具有透明模式和緩沖模式,可以和MBI上處理器通過(guò)其DMA功能訪問(wèn)MBI上共享存儲(chǔ)器。
MBI模塊上有兩路獨(dú)立的MBI(MBI1和MBI2)。每路MBI的硬件結(jié)構(gòu)如圖2所示。
其中,MBI的邏輯電路是通過(guò)FPGA實(shí)現(xiàn)的,主要功能有:
a.DSP相關(guān)的控制邏輯;
b.DSP外部存儲(chǔ)器接口邏輯;
c.RTC邏輯;
d.與主機(jī)接口的66MHz/33MHz 32位數(shù)據(jù)接口的PCI從設(shè)備邏輯。
其中,DSP相關(guān)的控制邏輯,主要實(shí)現(xiàn)在透明模式下,與ACE之間的DMA控制邏輯和內(nèi)部“READY”邏輯;
DSP外部存儲(chǔ)器接口邏輯,主要實(shí)現(xiàn)多協(xié)議復(fù)用總線控制器上的RAM和雙口存儲(chǔ)器右端口、信號(hào)燈的譯碼,以及相關(guān)的IO端口譯碼;
RTC邏輯,采用VHDL語(yǔ)言設(shè)計(jì),在功能上保持以前的RTC功能,精度20us/40us可選擇,向上計(jì)數(shù),帶復(fù)位、鎖功能;
PCI從設(shè)備邏輯,未使用傳統(tǒng)的PCI橋,而是結(jié)合PCI總線規(guī)范,采用VHDL語(yǔ)言實(shí)現(xiàn);
圖2 MBI結(jié)構(gòu)示意圖
主機(jī)接口邏輯,實(shí)現(xiàn)雙端口存儲(chǔ)器左端口、信號(hào)燈的譯碼,以及相關(guān)的IO端口譯碼,同時(shí)實(shí)現(xiàn)主機(jī)接口部分的“READY”邏輯;
為了避免主機(jī)處理器和DSP或協(xié)議芯片對(duì)雙口存儲(chǔ)器訪問(wèn)的沖突,采用BUSY邏輯實(shí)現(xiàn);
SM61864則接成“透明”模式,通過(guò)DMA訪問(wèn)外部雙口存儲(chǔ)器,RT地址鎖存信號(hào)上拉,通過(guò)配置ACE內(nèi)部寄存器,可以靈活的設(shè)置MBI模塊作為RT時(shí)的RT地址。
SM61864總線信號(hào)通過(guò)ACE內(nèi)部的雙接收發(fā)送器,采用變壓器耦合方式和SM61864總線通信網(wǎng)絡(luò)相連接。
調(diào)試的時(shí)候,加載軟件目標(biāo)碼到DSP內(nèi)部的RAM中;
固化的時(shí)候,燒寫(xiě)軟件目標(biāo)碼到DSP內(nèi)部的FALSH中。
MBI的軟件包括通信軟件和驅(qū)動(dòng)軟件。
通信軟件駐留在MBI模塊上DSP內(nèi)部FALSH存儲(chǔ)器中;驅(qū)動(dòng)軟件駐留在主機(jī)上,提供標(biāo)準(zhǔn)的API接口,供應(yīng)用軟件調(diào)用,實(shí)現(xiàn)對(duì)MBI的控制,和系統(tǒng)控制程序、應(yīng)用程序等進(jìn)行動(dòng)態(tài)聯(lián)編。
通信軟件設(shè)計(jì)是在DSP專(zhuān)用開(kāi)發(fā)工具CCStudio3.1下開(kāi)發(fā)的。驅(qū)動(dòng)軟件是在Tornado2.2下開(kāi)發(fā)的,同時(shí)移植到AE 653操作系統(tǒng)下的WorkBench2.0上,使得在不同操作系統(tǒng)上都可調(diào)用MBI模塊驅(qū)動(dòng)程序。MBI軟件的頂層結(jié)構(gòu)如圖3所示。
圖3 MBI軟件頂層結(jié)構(gòu)圖
主機(jī)和MBI之間的通信采用“命令/響應(yīng)”方式,即主機(jī)向MBI模塊的DPRAM中命令字單元寫(xiě)相應(yīng)命令,而MBI執(zhí)行該命令之后,會(huì)在DPRAM中響應(yīng)字單元寫(xiě)響應(yīng)字。
MBI主要執(zhí)行的命令有:初始化、自測(cè)試、啟動(dòng)、停止、軟復(fù)位、加載看門(mén)狗等,此外,MBI對(duì)RT上下網(wǎng),自測(cè)試失敗,緊急消息,互為熱備份RT同時(shí)上網(wǎng)等,需要向主機(jī)發(fā)送中斷請(qǐng)求。MBI內(nèi)部需要處理的中斷主要有ACE中斷,在作為BC的時(shí)候,還包括內(nèi)部定時(shí)器周期中斷。
5.1 MBI傳輸軟件各模塊的實(shí)現(xiàn)
初始化模塊,首先通過(guò)配置DSP內(nèi)部的PLL電路,XINTF接口,設(shè)置DSP的系統(tǒng)時(shí)鐘頻率、CPU時(shí)鐘頻率以及外部接口工作時(shí)鐘頻率等,并配置DSP訪問(wèn)外部各存儲(chǔ)區(qū)域的時(shí)序。然后,依據(jù)主機(jī)需要的MBI模塊的工作方式(BC,RT,MT或RT/MT),配置雙口存儲(chǔ)器中的相關(guān)單元,初始化SM61864內(nèi)部的固定訪問(wèn)區(qū)域,配置寄存器、中斷使能、棧指針寄存器等,使得ACE能按照指定的模式工作。
在BC模式,消息棧設(shè)置為1K字,最多可存放256條消息,數(shù)據(jù)緩沖區(qū)采用雙緩沖模式,遵循系統(tǒng)要求的MPBC協(xié)議。
在RT模式,RT地址可以配置,使用單緩沖,忙位設(shè)置;可以使用命令非法化表,依據(jù)RT地址、發(fā)送/接收位、子地址、數(shù)據(jù)字計(jì)數(shù)等設(shè)置RT相關(guān)消息是否合法;可以將方式命令、廣播命令的數(shù)據(jù),根據(jù)需要,放置在特定區(qū)域。
在MT模式,可以根據(jù)系統(tǒng)需要,設(shè)置采用字監(jiān)控模式或者選擇消息監(jiān)控模式。選擇字監(jiān)控,可以設(shè)置各種不同的觸發(fā)條件;選擇消息監(jiān)控,通過(guò)設(shè)置消息監(jiān)控管理表,可以依據(jù)RT地址,發(fā)送/接收位,子地址進(jìn)行消息選擇,并且有獨(dú)立的命令棧和數(shù)據(jù)棧。MBI可以將命令棧中的命令和數(shù)據(jù)棧中的“數(shù)據(jù)”重新組織成一條完整的消息,驅(qū)動(dòng)接口通過(guò)系統(tǒng)提供的刷新標(biāo)志,將該消息數(shù)據(jù)提交給應(yīng)用。
在RT/MT模式,MT只能采用選擇消息監(jiān)控,可以實(shí)現(xiàn)MBI作為RT工作的同時(shí),實(shí)現(xiàn)選擇消息監(jiān)控。這時(shí),MBI需要根據(jù)RT命令棧指針和MT命令棧指針的變化,決定當(dāng)前消息結(jié)束中斷是RT消息還是MT消息。
自測(cè)試模塊,完成MBI內(nèi)部資源的自測(cè)試,并將自測(cè)試結(jié)果存儲(chǔ)在雙口存儲(chǔ)器中,當(dāng)自測(cè)試失敗時(shí),向主機(jī)發(fā)送中斷請(qǐng)求。主要完成的測(cè)試有:DSP自檢,雙口存儲(chǔ)器測(cè)試,RTC功能測(cè)試,ACE自測(cè)試等。
啟動(dòng)和停止模塊,是啟動(dòng)或者停止MBI模塊按照初始化的功能工作。工作的時(shí)候,完全遵循系統(tǒng)提出的MPBC協(xié)議。協(xié)議嚴(yán)格控制消息傳輸時(shí)間,控制消息重試,消息傳輸通道等,極大地提高了總線通信效率,減小了通信負(fù)載,并提高了系統(tǒng)地可靠性。
軟復(fù)位模塊,完成自測(cè)試功能和初始化功能,并設(shè)置復(fù)位標(biāo)志;
加載WDT模塊,依據(jù)系統(tǒng)需要的WDT時(shí)間,加載并啟動(dòng)WDT定時(shí)器工作。
5.2 MBI驅(qū)動(dòng)軟件接口函數(shù)的實(shí)現(xiàn)
基本接口驅(qū)動(dòng)提供:主機(jī)讀、寫(xiě)MBI模塊DPRAM;主機(jī)讀、寫(xiě)MBI模塊IO端口的基本接口函數(shù)。
MBI控制程序提供了:主機(jī)向MBI模塊DPRAM命令字單元寫(xiě)初始化命令、自測(cè)試命令、啟動(dòng)命令、停止命令、加載WDT命令,然后獲取MBI模塊響應(yīng)字的相應(yīng)驅(qū)動(dòng)程序接口函數(shù)。
TMR控制程序提供了主機(jī)讀、寫(xiě)MBI模塊上RTC以及讀取BC與RT的RTC差值等驅(qū)動(dòng)程序。
系統(tǒng)控制驅(qū)動(dòng)程序提供了主機(jī)更改MBI模塊作為BC時(shí)的子系統(tǒng)模式,獲取RT通道狀態(tài)和通道切換狀況,以及軟復(fù)位MBI模塊的驅(qū)動(dòng)程序。
消息控制程序提供了主機(jī)從MBI模塊接收消息緩沖區(qū)中提取消息數(shù)據(jù)和向發(fā)送消息緩沖區(qū)寫(xiě)消息數(shù)據(jù),以及找出兩個(gè)消息號(hào)之間,接收消息數(shù)據(jù)已經(jīng)刷新的消息邏輯號(hào)的驅(qū)動(dòng)接口函數(shù)。
中斷服務(wù)程序提供了主機(jī)依據(jù)MBI模塊所發(fā)出的中斷和記錄中斷原因,進(jìn)行相關(guān)中斷處理的過(guò)程。MBI中斷主機(jī)的原因有:緊急消息中斷,看門(mén)狗上溢中斷,自測(cè)試失敗中斷,RT上下網(wǎng)中斷,熱備份RT同時(shí)上線中斷等。
由SM61864實(shí)現(xiàn)的MBI,在系統(tǒng)單元進(jìn)行綜合的時(shí)候,對(duì)各項(xiàng)功能的驗(yàn)證如下:①作為BC,完全實(shí)現(xiàn)了系統(tǒng)要求的MPBC協(xié)議,能正常、穩(wěn)定、靈活的組織消息傳輸,重試管理正常,通道管理正常,同時(shí)具備熱備份功能;②作為RT,能靈活的進(jìn)行RT地址配置,能正常接收與之相關(guān)的消息和正確響應(yīng)方式命令;③作為MT的時(shí)候,能夠?qū)偩€上所有的消息數(shù)據(jù)進(jìn)行字監(jiān)控,也可以對(duì)選擇的消息進(jìn)行監(jiān)控;④作為RTMT的時(shí)候,能作為RT的同時(shí),對(duì)總線上其他的RT消息進(jìn)行監(jiān)控。
綜上所述,由Mini-ACE所實(shí)現(xiàn)的MBI,能完成系統(tǒng)提出的所有需求,并可以穩(wěn)定、可靠地工作。
由SM61864實(shí)現(xiàn)的MBI,采用MPBC協(xié)議,引入了時(shí)間調(diào)度和消息幀管理等機(jī)制,為系統(tǒng)設(shè)計(jì)提供了一種靈活的思路,為今后AFDX通信網(wǎng)絡(luò)、FC總線通信網(wǎng)絡(luò)的研究奠定了良好的基礎(chǔ)。但SM61864總線速度沒(méi)有根本性的提高,仍然使用1MHz的總線速度,今后,可以逐步考慮使用10MHz,100MHz的總線,進(jìn)而轉(zhuǎn)入千兆以太網(wǎng)、FC網(wǎng)絡(luò)。最后,希望廣大讀者能提供寶貴的意見(jiàn)和建議。
[1] Helmy A.Small world in wireless networks[J].IEEE Communications Letters,2003,7(10):490-492.
[2] Zemanoval L,Zhou CS,Kurths J.Structural and functional clusters of complex brain networks[J].Physica D,2006,224(1-2):202-212.
[3] Girvan M,Newman M E J.Community structure in social and biological networks[J].Proceedings of the National Academy of Sciences of the United States of America,2002,99(12):323-330.
[4] Newman E J.The structure and function of complex networks[J].SIAM Review,2003,45(2):167-256.
[5] Zhou T,Zhao M,Chen G R.Phase synchronization on scale-free networks with community structure[J].Phys Lett A,2007,368(6):431-434.
Development and Application of GJB289A Based on SM61864
An Baijun,Lv Bing,Li Xinmin
(Xi’an Aeronautics Computing Technique Research Institute,AVIC,Xi’an 710068,China)
Tomeet the requirements ofminimization,low-power,high-credibility and flexibility of MBImodule,a new MBImodule is designed in this paper,which uses the mini DSP processor SM320F2812 of TICorp.as the processor,BU61865 of DDC as the GJB289A protocol processor and FPGA to realize themain logic circuit.The MBImodule has two redundant channels and is capable to minimize the payload of the bus to improve the bus transmission efficient.Themini-ACE can be used as the bus controller,remote terminal,bus monitor and the combination of remote terminal and select messagemonitor.After the integration in the system-design institute,the MBImodule satisfies the requirements of high speed and flexibility.
Bus Controller(BC);Remote Terminal(RT);Remote Terminal and selected Message Monitor(RTMT);Digital Signal Processor(DSP);Field Programmable Logic Array(FPGA)
10.3969/j.issn.1002-2279.2015.03.008
TP393
A
1002-2279(2015)03-0024-03
安百?。?982-),男,吉林安圖人,學(xué)士,工程師,主研方向:硬件研發(fā)。
2014-10-14