武瑞歡 曾曉東
摘要:MIL-STD-1553B是一種具有高可靠傳輸特性的總線協議,在航空航天等領域占據著十分重要的地位。為解決新裝備對于1553B總線通信接口模塊體積小和低功耗的需求,本文基于1553B總線協議及其特點,研究了HOLT公司某型號的1553B協議芯片,提出一種以該HOLT芯片為協議芯片的1553B總線通信接口設計方案。通過仿真測試,結果顯示該設計滿足數據傳輸可靠實時的要求。
關鍵詞:1553B總線;HOLT協議芯片;BC;RT
中圖分類號:TP393 文獻標識碼:A
文章編號:1009-3044(2019)09-0223-02
MIL-STD-1553B是由美國提出應用在機載設備間信息傳輸的總線標準,它規定了數據間的傳輸協議,因其高可靠性、實時性和安全性等優點而廣泛應用于航空電子通信網絡。1553B接口模塊(MBI)是連接在飛機總線上多個子系統通信的接口,負責多個設備間消息的正確傳輸。隨著實際需求的增加,機載系統對通信接口模塊體積、功耗和成本等提出了更多的要求,HOLT公司的某1553B協議芯片因符合發展趨勢而逐漸成為1553B總線協議芯片的主要選擇。本文就此基礎上介紹一種新型的1553B接口模塊的設計方法。
1 1553B總線介紹
1553B總線系統內的功能節點分為三種類型:總線控制器(BC),遠程終端(RT)和總線監控器(MT)。BC負責總線上所有命令的管理和調度, RT被動接收BC的指令并完成相應的操作,這種指令響應型的通信模式避免了對總線資源的爭奪。MT負責監控總線系統,可實現全部或者根據配置選擇性的記錄數據并存儲,方便出現問題進行排故。1553B總線的架構見圖1。
1553B總線采用A,B個傳輸通道,若當前通道出現故障則可切換到備份通道保證數據的正常傳輸。還結合采用BC和BBC互為備份,總線看門狗WDT和總線自測試保證高可靠性。協議制定了命令的響應時間,消息的間隔時間和每次傳輸消息的長度,實現了通信效率的提升。1553B傳輸媒介為屏蔽雙絞線,為隔離單點故障協議推薦使用變壓器耦合方式,這種情況下理論上短截線長度不超過6m,總共的電纜長度不大于100m[1]。
2 設計原理
2.1 HOLT某型芯片介紹
該芯片是由HOLT公司根據1553B標準研制生產的一款通信協議芯片。芯片采用BC/ RT /MT硬件一體化設計,由軟件編程工作模式。其上集成了雙曼徹斯特編碼解碼器、收發器、帶誤碼檢測校正功能的64k大小的片內靜態RAM來滿足應用的需求。單個IC的尺寸為15×15mm,封裝相對主流的協議芯片更小,成本也更加滿足生產需求。
該芯片作為BC擁有多幀消息調度、消息重傳調度、存儲消息數據、異步信息插入和狀態錯誤報告等功能。所有的1553B錯誤檢查可以自動執行,包括RT響應時間,曼徹斯特編碼,同步頭,位計數值,字計數值等[2]。
該協議芯片可被配置為兩種RT,每個RT都擁有獨立描述符表,非法命令表、主機終端配置和狀態寄存器,并分配獨立的RAM,兩個RT可被獨立的復位和初始化。
芯片作為終端時的狀態通過可編程的中斷呈報給主機進行處理。主機的中斷來自設備硬件或者是使能的終端設備,并使用硬件中斷寄存器、中斷記錄緩存和中斷計數記錄地址寄存器來管理中斷。該型號協議芯片的功能結構圖見圖1。
2.2硬件設計
本設計采用HOLT協議芯片 + DSP 來搭建整個硬件系統。DSP作為核心處理器實現傳輸層的功能。協議芯片用作1553B協議處理器,實現物理層的連接和數據鏈路層的功能。可編程邏輯器件FPGA作為高速的組合邏輯和時序邏輯控制器,實現DSP和協議芯片之間主要的控制邏輯[3]。整個硬件設計見圖2。硬件組成包括通信處理器接口電路,實時時鐘電路,復位電路和總線接口電路。
通信處理器接口電路:DSP對協議處理器的片選和讀寫控制信號[4]通過FPGA的譯碼后輸出到協議芯片。協議芯片使用16位的數據線和16位的地址線,地址位的最低位在8位處理器用來標志第一個和第二個字節。
復位電路:硬件復位時,命令處理器、總線編解碼器和內部邏輯被清除,所有時標被復位,復位最短延遲時間為200ns。通過設置主狀態寄存器和復位寄存器相應的標志位可以對MT、RT1和RT2實現軟件復位,BC模式下只有硬件復位。
通信總線接口電路:由隔離變壓器和雙通道的數據收發器組成。HOLT 芯片的片上邏輯和收發器需要的電壓為3.3V,隔離變壓器保護與總線連接的終端的安全。收發器為MIL-STD-1553 隔離變壓器和設備提供了接口,完成電平信號和曼徹斯特2型碼的轉換。
實時時鐘電路:為協議芯片提供工作時鐘為50MHz,DSP時鐘為20MHz,還有看門狗和定時服務。其中BC、MT、RT1、RT2都有獨立的時間標計數器,BC和RT的計數器可以共享一個時鐘,MT的時鐘由單獨的外部晶振提供。
2.3軟件設計
1553B總線通信軟件是實現接口模塊與子系統主機應用軟件間的接口控制與數據傳遞的專用軟件,提供各類消息數據的讀、寫支持;對計時器的控制及處理;對各種中斷原因分析及處理。軟件包括驅動層軟件和傳輸層的軟件。驅動軟件駐留在主機中,為應用層提供API接口,使應用層實現對1553B通信模塊的管理和控制。傳輸層軟件固化在主處理器的FlASH中,調試時將傳輸軟件的目標碼加載到內部RAM中運行。子系統主機和1553B接口模塊之間的交互使用“指令響應型”的方式,主機在DPRAM的命令字單元中寫入命令字,命令字通過傳輸層的解析后下發給協議芯片組織信息的傳輸,MBI模塊在命令成功執行后會將該命令字寫入雙口的響應字單元。驅動層的功能分解圖見圖3。
驅動層的功能有:系統控制管理,如MBI模塊的初始化、模塊狀態的設置(GO、STOP和BIT)、以及工作模式(BC、RT、MT)的配置;總線時鐘管理,利用讀寫RTC實現BC與子系統的時鐘同步,BC通過使用授時命令實現整個網絡中設備的時間同步;中斷的解析和處理,如底層進行終端上下網查詢操作后上報中斷碼和中斷字,上層通過解析完成設備的上下網管理[4];數據的收發,在MBI的緩沖區讀取和寫入數據,檢查接收緩沖區是否有數據更新。
傳輸層主循環一直檢查相應的命令字單元,通過解析命令字完成相關的操作。傳輸層需要完成的功能有:解析主機命令并執行,如主機下達MBI工作模式的命令后,底層通過配置主配置寄存器來設置工作模式(BC、RT、MT);中斷的上報,如對新收到的消息進行解析后為緊急消息,則設置中斷標志并上報給主機;對收發消息的處理,協議芯片不能自動設置消息的標志位,所以傳輸層需要對收發的數據進行處理。傳輸層的處理流程見圖4。
2.3.1 BC設計
1553B中BC負責整個系統中設備間信息的傳輸,組織消息的調度,并通過總線表和通信表維護整個通信網絡。該協議芯片全面兼容支持MIL-STD-1553B的消息格式,其作總線控制器時通過使用命令塊來支持1553B功能的實現,命令塊按照消息的邏輯號排列。命令塊包括了BC控制字、命令字、狀態字、數據地址指針等字。其中控制字由主機初始化和維護,包括消息格式、消息重試使能、總線屬性等。協議芯片作為BC通過解析命令字塊中消息的類型調用特定的處理完成傳輸工作,并自動將消息響應后傳回的狀態字寫入RAM,其中包括當前通道、錯誤檢測、錯誤類型等[5]。主機通過訪問命令塊表中相應地址空間可以得到消息的狀態字并執行下一步操作。
2.3.2 RT設計
在主機完成對RT相關寄存器的配置后,RT可以在自主的回復消息而很少需要主機的干預。RT的描述符按照子地址的順序排列,與通信表相對應。協議芯片在RAM中定義了每種消息類型的存儲區間,設備在接收到消息時根據描述符指針的位置識別命令類型后完成BC要求的操作。RT每次處理完一個命令,設備會自動更新該命令對應的描述符表控制字,其中控制字中設置了命令指示的數據的存儲方式、地址和中斷信息。
BC負責總線中所有消息的調度和控制,RT不具備主動發起消息的能力,只能被動的接收來自BC的指令并完成指定的操作。在收到接收命令后,RT將會自動對描述符中接收子地址指向的1~32個數據字進行存儲,并返回BC一個狀態字。當RT有消息需要上報時,過程相對接收更為復雜: 首先RT需要將要上報的數據寫到緩沖區中,設置對應的矢量字;BC在每個周期會定時發出發送矢量字命令,周期性的詢問RT是否有數據需要發送;RT回復狀態字和一個數據字,BC通過解析該數據字,查詢總線表中相關的指令后組織消息的發送;RT端在發送數據后清除相應的矢量字。
3 結論
本文在1553B總線接口應用新需求上,提出了使用HOLT公司的某型號芯片作為協議芯片,DSP作為核心處理器的1553B接口模塊設計方法,以此實現新裝備對于1553B通信模塊的要求。在實際應用中該系統運行穩定可靠,達到設計效果。
參考文獻:
[1] 數字式時分制指令/響應型多路傳輸數據總線, 國防科學技術工業委員會,1997,11;
[2] HOLT數據手冊HOLT INTEGRATED CIRCUITS,2014.12.
[3] 劉陶,張翀,譚志宏.高性能DSP在1553B 總線中的設計與實現[J].航空計算技術,2017,47(2).
[4] 曾曉東,牟明,張成.基于61864協議芯片的1553B總線控制器通信接口設計[J].設計應用,2014(11):112.
[5] 范祥輝,楊寒,史巖,等.一種1553B 總線多功能接口模塊設計與實現[J].信息通信,2017(2):170.
【通聯編輯:唐一東】