機載PD火控雷達系統1553B總線(xiàn)驅動(dòng)層與傳輸層軟件界面分析
狀態(tài)區——狀態(tài)區是雙口區數據結構中的首要環(huán)節,驅動(dòng)層軟件通過(guò)狀態(tài)區設置MBI板工作狀態(tài),控制傳輸層軟件工作。傳輸層以特定單元查詢(xún)方式獲得驅動(dòng)層控制命令,并將執行結果返回狀態(tài)區,驅動(dòng)層根據傳輸層反饋信息獲得總線(xiàn)系統工作狀況。表1列出了狀態(tài)區的詳細數據內容。
表1 總線(xiàn)狀態(tài)區內容
控制方向 | 狀態(tài)字名稱(chēng) | 功 能 |
驅動(dòng)層傳輸層 | 工作方式字 | 定義MBI板BC/RT方式 |
終端(RT)號碼 | 置RT地址號 | |
總線(xiàn)通訊表地址 | 標識子系統總線(xiàn)通訊表首址 | |
工作狀態(tài)標志字 | 控制MBI板工作狀態(tài) | |
傳輸層驅動(dòng)層 | 故障標志字 | MBI板自檢返回信息 |
傳輸故障標志字 | 說(shuō)明故障消息塊 | |
終端故障字 | 說(shuō)明RT故障 | |
中斷標志字 | 說(shuō)明中斷性質(zhì) | |
MBI命令執行標志字 | 說(shuō)明MBI執行命令狀態(tài) | |
矢量字 | 存放RT矢量字 |
狀態(tài)區中的數據單元分為驅動(dòng)層對傳輸層的控制指令和傳輸層向驅動(dòng)層的反饋狀態(tài)兩大類(lèi),其中工作方式字用于定義MBI板作為BC或RT;終端號碼僅對RT有效,它標識RT的終端地址號,同一總線(xiàn)系統中任兩個(gè)RT節點(diǎn)不能有相同的地址號;總線(xiàn)通訊表地址用于標識總線(xiàn)通訊表的首地址,其長(cháng)度則由通訊表內部的結束標志確定;工作狀態(tài)標志字是狀態(tài)區中動(dòng)態(tài)變化較多的數據單元,它用于控制MBI的工作狀態(tài),如初始化、自檢測、啟動(dòng)數據傳輸和停止工作等;故障標志字是傳輸層軟件反饋的MBI板自檢信息,它主要包括MBI板上的器件故障信息;傳輸故障標志字給出在傳輸過(guò)程中發(fā)生故障的消息塊在總線(xiàn)表中的首地址,此標志字僅對BC有效;終端故障字給出在傳輸過(guò)程中發(fā)生故障的RT地址及相應的故障標識,此標志字也僅對BC有效;中斷標志字是MBI板在向宿主機發(fā)出中斷前置入的標識信息,主要用于說(shuō)明此中斷的性質(zhì);MBI命令執行標志字是傳輸層執行驅動(dòng)層命令后返回的結果信息,內容包括完成、超時(shí)、通訊錯誤等;矢量字用于動(dòng)態(tài)總線(xiàn)調度,它標明請求加入傳輸的消息塊號,使用此機制可以節省正常的總線(xiàn)通訊開(kāi)銷(xiāo)。
總線(xiàn)表——總線(xiàn)通信表具有總線(xiàn)表和通信表兩種不同的形態(tài),其中總線(xiàn)表是在BC上根據系統應用任務(wù)需求構造,用于管理和組織系統中各節點(diǎn)間有效的數據傳輸〔2〕??偩€(xiàn)表是一個(gè)環(huán)形結構(圖4),它由所有通過(guò)總線(xiàn)傳輸的消息塊的命令組組成,每一命令組共8個(gè)字,其中首指針就是該命令組的首地址的偏移量;控制字包含了消息傳輸狀態(tài)、消息剪裁標志(SKIP)、重試標志、傳輸方向標志、延遲時(shí)標等控制信息;命令字1是接收方RT的地址號、消息子地址號、消息長(cháng)度等信息的組合,命令字2則是發(fā)送方RT的地址號、消息子地址號、消息長(cháng)度等信息的組合,當發(fā)送或接收方有一個(gè)為BC時(shí),相應的接收或發(fā)送命令置0;數據表指針只對RT與BC之間的傳輸有效,它標識此消息塊在BC雙口區內的地址;狀態(tài)字1和狀態(tài)字2分別對應于命令字1和命令字2,用于反饋RT執行該消息傳輸的結果狀態(tài),內容包括消息出錯位、子系統忙位等;尾指針指向下一命令組的首址,特別是最后一個(gè)尾指針指向總線(xiàn)表的首址。
通信表——由于RT和BC性質(zhì)上的區別,RT上用于控制消息傳輸的通信表與BC上的總線(xiàn)表相比更為簡(jiǎn)單,每個(gè)子系統根據本子系統數據傳輸的需求填寫(xiě)數據輸入輸出結構,驅動(dòng)層軟件根據數據結構生成子系統所需的總線(xiàn)通訊表并存入通信表區。輸入輸出數據結構主要給出信息存放的邏輯號,說(shuō)明數據存放的子地址、傳輸消息長(cháng)度、數據是否允許覆蓋及緊急消息標志等。
數據接收區——數據接收區包含兩個(gè)可以交替使用的數據緩沖區,其中每個(gè)緩沖區包括32個(gè)數據塊,每一塊的長(cháng)度是32字,它們存放接收到的總線(xiàn)系統數據。
數據發(fā)送區——數據發(fā)送區的組成與數據接收區一樣,用于存放子系統準備發(fā)送到總線(xiàn)系統的數據。
圖4 BC總線(xiàn)表環(huán)形結構
中斷記錄表——中斷記錄表是由若干個(gè)中斷記錄組成的鏈形結構(圖5),它向驅動(dòng)層軟件提供各個(gè)通過(guò)中斷實(shí)現通訊的消息塊的信息,每個(gè)記錄中的中斷狀態(tài)字包含了中斷的有效性、及時(shí)性、正確性和消息分類(lèi)等信息;消息指針標識了BC命令塊指針或MT(Monitor Terminal)消息塊指針或RT描述符空間指針;尾指針指向下一中斷記錄。
圖5 中斷記錄表結構
4 通訊機制
在雷達系統1553B總線(xiàn)中,應用層軟件之間的每一次數據通訊都必須經(jīng)過(guò)兩次傳輸層與驅動(dòng)層軟件之間的通訊才能得以實(shí)現,所以傳輸層與驅動(dòng)層之間的消息通訊的一致性、完整性和實(shí)時(shí)性都是建立總線(xiàn)通訊機制中必須考慮的重要問(wèn)題。
讀寫(xiě)鎖機制——由于驅動(dòng)層軟件和傳輸層軟件分別駐留在宿主機和MBI兩個(gè)CPU系統中,除少數緊急消息通過(guò)中斷實(shí)現通訊外,其它均采用異步通信方式,因此它們之間的數據通訊必須首先解決一致性問(wèn)題。例如,設雷達系統在t時(shí)刻輸出的目標測量數據為距離R(t)、速度V(t)、方位A(t)和俯仰E(t),它們應該具有某種函數關(guān)系
F(R(t),V(t),A(t),E(t),t)=0
當總線(xiàn)通訊中每一組數據內的目標數據均具有相同的時(shí)間參量時(shí),(1)式便能成立;而當這組數據不具有相同的時(shí)間參量時(shí),(1)式便不能成立。在某些情形,這種不匹配的時(shí)間關(guān)系會(huì )導致嚴重的后果,這就是數據傳輸的一致性問(wèn)題。解決此問(wèn)題的一個(gè)有效的方法就是建立消息緩沖區的讀寫(xiě)鎖機制。
評論