杜元生 陳沖 李軍



摘要:本文提出了一種基于BM3803處理器的1553B總線通信節點設計方案。文章首先介紹了BM3803處理器的硬件資源和1553B總線通信特點,其次采用1553B協議芯片B65170S6RH實現了BM3803和1553B總線之間的硬件接口電路設計,最后討論了1553B總線遠程終端通信軟件功能實現方法。實踐證明,該方案設計合理,能實現穩定可靠的1553B總線通信,具有工程應用價值。
關鍵詞:BM3803;1553B;B65170S6RH;遠程終端
中圖分類號:V416.8 文獻標識碼:A 文章編號:1007-9416(2020)08-0031-04
0 引言
BM3803MRGH是我國自主研制的一款基于SPARC V8體系結構的32位抗輻射加固微處理器,采用三模冗余及奇偶校驗等抗單粒子翻轉的容錯設計,滿足航天應用功能及性能要求[2]。1553B總線是分時制指令/響應式通信總線,作為一種高可靠性和實時的軍用串行總線標準[4],能夠完成信息綜合、資源共享、任務協調和容錯重構,是實現航天電子綜合化系統的關鍵。B65170S6RH是我國自主研制的一種1553B總線通訊控制器,其RT功能為1553B總線系統設計提供了一個智能解決方案。該器件內部集成有數字協議控制電路和雙路總線收發器模塊,適合高強度的應用環境。本文采用B65170S6RH實現基于BM3803處理器的1553B網絡遠程終端節點設計,具有通信穩定,自主可控和簡單實用的工程意義。
1 BM3803
BM3803處理器有28個地址總線和32個數據總線,內部包含整數處理單元IU,浮點處理器單元FPU,中斷控制器,帶有跟蹤緩沖存儲的硬件調試單元DSU,定時器,GPIO,看門狗,串口,支持PROM、SRAM、SDRAM和I/O映射空間訪問的存儲器控制器。通過外部存儲器控制器可以訪問PROM、存儲器映射的I/O設備、SRAM和SDRAM,其功能結構圖如圖1所示。
2 1553B總線
1553B總線是一種命令響應式總線,一主多從工作模式,半雙工通信,通信速率是1Mb/s。總線網絡中能掛接32個終端,每個終端相互獨立工作,按照終端功能可以分為三種類型:總線控制器(BC)、遠程終端(RT)和總線監控器(MT)。總線控制器控制總線上所有消息數據傳輸,消息由三種類型的字組成:命令字、數據字和狀態字。每個字的長度為20位,3位同步頭,16個消息位和1個奇偶校驗位,同步頭和奇偶校驗位是硬件自動添加的。如圖2所示,從上到下依次是命令字、數據字和狀態字的結構:
1553B總線遠程終端內部的工作過程就是堆棧指針→寫描述符→查找表→忙位查找表+非法命令表→消息塊的結構,如圖3所示,以BC-TO-RT消息為例,具體操作步驟如下:
(1)確定活動中的陳列(Area A/B);
(2)根據堆棧指針找到描述符,將收到的命令字寫入描述符的第四個儲存單元;
(3)解析命令字,查找子地址接收查找表,獲得消息塊地址;
(4)查找忙位查找表,確定該子地址是否允許訪問;
(5)查找非法命令表/模式碼表,確定本次通信是否合法;
(6)將消息塊地址寫入描述符的第三個存儲單元,即數據指針;
(7)根據數據指針找到消息塊,并將數據字順序寫入,這樣就完成了一個完整的消息。
3 接口電路設計
1553B接口芯片電路[1]包括總線收發器、通信協議處理器,雙RAM存儲器和主機接口仲裁等。B65170S6RH電路內部主要的邏輯模塊為:雙路收發器、完整的RT多功能協議邏輯、存儲器管理邏輯和中斷邏輯,4K×16位的靜態存儲器和與處理器總線的接口邏輯。B65170S6RH包含內部地址鎖存器和雙向的數據緩沖電路與處理器總線交換數據,可以很方便地與8位或者16位處理器進行接口通信,其整體框圖[3]如圖4所示。
BM3803MGRH處理器與B65170S6RH電路按照16位緩沖接口方案連接:處理器的D0~D15與B65170S6RH電路的D0~D15連接;由于BM3803為單字節尋址,在使用32位數據總線模式時,地址最低有效位為A2,故BM3803處理器的A2~A13依次連接至B65170S6RH電路的A0~A11;B65170S6RH電路的片選信號由BM3803的IOSN(IO空間選擇信號)和地址線進行譯碼邏輯,選中B65170S6RH電路的內部RAM和寄存器;將B65170S6RH電路的極性選擇信號置高,BM3803的寫信號與B65170S6RH電路的讀/寫信號相連;將B65170S6RH電路的零等待信號置高,并將READYD信號與BM3803的READY信號相連。BU65170 S6RH的A通道和B通道通過耦合變壓器B3266與1553B連接,如圖5所示。
4 通信軟件設計
4.1 總線數據傳輸機制
以某星載系統1553B總線通信協議為例,BC發起的數據傳輸流程采用更新數據傳輸機制,總線控制器組織總線數據傳輸,RT要求的數據傳輸流程,采用服務請求機制。RT通過總線狀態字中的服務請求位來標識數據傳輸請求,通過矢量字位標識請求傳輸的數據類型。
BC周期性地對RT進行輪詢,向遠程終端發出“發送狀態字”和“發送矢量字”方式指令。如返回狀態字中的“服務請求位”被置成1,則說明該遠程終端有服務請求。總線控制器進一步分析該遠程終端返回的矢量字,確定該終端需求的某種或幾種特定的數據傳輸類型,然后生成通信幀,啟動總線通信。
RT一旦在發送緩沖區準備好數據或是請求獲取某種數據類型時,將矢量字中相應位置1,待總線控制器將數據取走或發來數據后,再將矢量字中相應的位置0;總線控制器周期性地組織總線通信,遠程終端收到發送狀態字方式指令時檢查矢量字,如果發現本終端的矢量字大于0,RT將總線狀態字的服務請求位置1。
4.2 遠程終端軟件設計
遠程終端通信軟件包括遠程終端總線控制器配置和消息收發處理[5],本設計遠程終端總線控制器為B65170S6 RH芯片。總線控制器配置分兩部分,一部分是寄存器配置,另一部分是RAM配置,其中寄存器配置是對芯片工作模式、工作區域、中斷開關和鎖存RT地址等功能的設置,RAM配置是初始化RAM空間、堆棧指針、子地址查找表、忙位查找表、非法命令表、模式碼數據表和模式碼中斷使能表等。子地址查找表用來指向每個子地址存放數據塊的位置,相當于數據塊地址指針。子地址控制字用來管理每一個子地址數據塊的空間存儲方式。子地址數據塊存儲方式包括單消息模式、雙緩沖模式和循環緩沖模式[6]。本設計采用中斷方式接收總線消息,具體的數據處理流程如圖6所示。
5 結語
本文介紹了我國自主生產的BM3803處理器和1553B協議芯片B65170的特點,基于BM3803和B65170,設計了一種通用的1553B總線遠程終端接口電路,具體討論了B65170的初始化方法,實現了總線遠程終端通信數據處理軟件設計。實踐證明,該設計具有通用性,能實現穩定可靠的1553B網絡通信,具有工程應用借鑒意義。
參考文獻
[1] 王文萱,翟正軍.1553B總線處理器的比較分析與應用設計[J].微型機與應用,2016,35(8):23-25.
[2] 航天時代電子公司772所.BM3803MGRH用戶手冊2017.05.02-V2.5[Z].
[3] 航天時代電子公司772所.輻射加固1553B遠程終端控制器產品使用手冊2017.01.010-V1.2[Z].
[4] MIL-STD-1553B Designers Guide[Z].Data Device Corporation.
[5] 邢秀琴,姚竹亭.基于1553B總線的通信接口及其應用[J].中北大學學報,2007,28(1):91-94.
[6] 李改霞.1553B總線管理軟件設計與實現[D].西安:西安電子科技大學,2017.