一種新型1553B備份總線(xiàn)控制器設計與實(shí)現
共享RAM中固定地址及ACE協(xié)議芯片寄存器初始化完成后,協(xié)議芯片即工作于RTMT模式,當協(xié)議芯片接收到有效命令,將觸發(fā)消息結束中斷,中斷服務(wù)程序完成對該條消息的處理。首先,用全局變量CurrQueuePtr記錄尚未處理的中斷隊列指針,其初始值為中斷隊列的起始地址0x1000;中斷向量隊列指針寄存器始終存放的是下一次中斷待寫(xiě)入的中斷隊列指針,讀取中斷向量隊列指針寄存器(1F)內下一次待寫(xiě)入的中斷隊列指針NextQueuePtr,并進(jìn)行如下處理:

其中Rt_Do_Msg()函數主要完成RT功能下消息接收或發(fā)送后的相關(guān)處理,如新數據標志的置位與清除等,方式命令的處理等。Mt_Do_Msg()函數主要完成MT功能,將數據從較小的MT數據棧(0x800~0x9FF)根據監控過(guò)濾位,將需要監控的消息按照特定的格式重新組織并存儲到較大的MT數據緩沖區(0xA000~0xF000)內,以備用戶(hù)使用。
3 應用實(shí)例及分析
某項目采用1553B總線(xiàn)作為主干總線(xiàn),總線(xiàn)上共有RT 13個(gè),RT地址分別為1~13,1個(gè)BC,1個(gè)BBC,工作于RTMT模式下,RT地址為18。系統應用的消息類(lèi)型及條數見(jiàn)表2,系統應用要求BBC應能夠與BC同時(shí)獲取BC-RT及RT-BC之間的應用數據通信內容,用于同步解算。根據應用要求,若采用BBC工作于RT模式,排列出的總線(xiàn)消息類(lèi)型及消息條數見(jiàn)表3,根據應用需求,共有BC-RT消息24條,為了滿(mǎn)足BBC同時(shí)獲取BC-RT消息的需求,必須增加24條BC到BBC的消息,同樣,共有RT-BC的消息65條,為了滿(mǎn)足BBC同時(shí)獲取RT-BC消息的需求,必須增加65條RT-BBC的消息,BBC需排列接收消息為BC-BBC及RT-BBC的消息綜合,共計92條,遠遠大于BBC作為RT模式,僅能接收消息30條消息的限制,且總線(xiàn)傳輸存在延遲,導致BBC不能與BC同步獲取BC-RT與RT-BC的消息,因此,BBC工作于RT模式無(wú)法滿(mǎn)足應用需求。若采用BBC工作于MT模式,則無(wú)法滿(mǎn)足BC-BBC、BBC-BC及BBC-RT之間的數據傳輸要求。
采用新的設計方法后,BBC工作于RTMT模式,作為RT18可以滿(mǎn)足BBC-BC、BC-BBC、BBC-RT及RT-BBC之間的消息通信,同時(shí)作為MT可以有選擇的監控BC-RT及RT-BC的消息,無(wú)需額外增加BC-BBC及RT-BBC的消息,即可讓BBC與BC同步獲取相應應用數據內容,在不增加消息量的前提下,滿(mǎn)足了系統應用的需求。
4 結論
本文首先介紹了當前1553B方向BBC的最新應用模式,并基于1553B協(xié)議芯片給出了工作于RTMT模式下BBC的設計與實(shí)現方法,并結合工程實(shí)例,從實(shí)際應用需求出發(fā),分析了RTMT模式與以往RT或MT模式下的應用差別,在RT模式或者M(jìn)T模式均不能滿(mǎn)足系統要求的前提下,采用RT MT模式很好的解決了系統對于BBC新的應用需求,且無(wú)需增加任何總線(xiàn)負載,具有較強的工程實(shí)踐意義。
評論