新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于1553B飛機總線系統通訊軟件的設計

        基于1553B飛機總線系統通訊軟件的設計

        作者: 時間:2012-09-08 來源:網絡 收藏


        這5層之間功能劃分明確,接口簡單,從而為硬軟件的設計實現奠定良好的基礎[2]。應用層是通信系統的最高層次,他實現通信系統管理功能(如初始化、維護、重構等)和解釋功能(如描述數據交換的含義、有效性、范圍、格式等)。

        驅動層是應用層與低層的軟件接口。為實現應用層的管理功能,驅動層應能控制子系統內多路傳輸總線接口(簡稱MBI)的初始化、啟動、停止、連接、斷開、啟動其自測試,監控其工作狀態,控制其和子系統主機的數據交換。

        傳輸層控制多路傳輸總線上的數據傳輸,傳輸層的任務包括信息處理、通道切換、同步管理等。
        數據鏈路層按照MILSTD規定,控制總線上各條消息的傳輸序列。
        物理層按照MILSTD規定,處理總線物理介質上的位流傳輸。
        應用層、驅動層在各個子系統主機上實現,傳輸層、數據鏈路層、物理層在MBI上實現。

        5 總線系統設計

        在某型飛機航空總線系統的設計中,一個很重要的工作就是總線的設計。航空總線設計包括:驅動層和應用層的軟件設計。其中驅動層直接驅動總線接口板主要完成各個寄存器的配置,實現數據的發送和接收;應用層是設計中的最高層,他管理整個系統的功能[3]。作為一塊接口板,設計的重點在于驅動層的軟件的設計,他包括3個方面的內容:
        (1)FPGA部分的軟件。
        (2)DSP部分的軟件。

        (3)上位機操作系統驅動軟件。
        5.1 FPGA程序控制功能

        該部分采用VHDL語言編寫,實現1553B總線數據的接收、發送、曼徹斯特II碼、錯誤檢出、奇偶檢驗、與DSP的接口和譯碼電路等功能。其中發送單元與接收單元是并行工作的,由邏輯門電路實現。這里從軟件角度畫出流程圖如圖5所示。


        5.2 DSP程序控制功能

        DSP控制部分程序實現的功能如下:

        (1)對總線接口板的初始化(包括初始化DSP本身內部電路和寄存器FPGA及上位機通訊寄存器)。

        (2)實現RT地址識別
        由于是多RT總線接口板,所以收到數據后,應該判別該RT地址是否屬于該接口板;

        (3)與上位機消息傳輸控制功能
        消息傳輸控制程序完成總線應傳輸的數據在總線接口 板和上位機之間的數據交換。包括數據的讀寫過程和自檢測過程,所要完成的操作如下: ①向FPGA寫入發送數據(到總線)。
        ②從FPGA內讀出數據(該數據由DSP處理)。
        ③向雙口RAM寫入數據(到上位機)。
        ④自檢測過程。自檢測過程是在收到上位機的自檢命令后,實現接口板的數據發送 和接收性能測試。

        (4)中斷控制程序
        在DSP芯片TMS320F206接口的設計中,使用3個硬件中斷,INT1,INT2由FPGA來產生,INT3 則由上位機來產生。INT1表明FPGA的接收單元已收到一個數據,通知F206讀數,INT2表明FPGA的接收單元已收到一個錯誤數據,通知F206讀取錯誤狀態信息,INT3是上位機和接口板數據傳輸控制的一種手段,通過INT3中斷,上位機告訴接口板進行數據接收還是數據發送操作,發送多少數據,采用的消息格式以及總線控制等信息。

        DSP部分的軟件采用C++和匯編語言混合編程,關鍵路徑如中斷服務程序,數據發送和接收程序都采用匯編語言以達到最大的執行效率,主程序采用C++編寫。

        DSP部分軟件的流程圖,如圖6所示。


        5.3 上位機控制程序

        主要實現上位機在特定的操作系統下對接口板的軟件驅動、數據通訊和傳輸控制。主要使用C++在Windows環境下進行軟件開發。

        6結語

        本文介紹了一種基于FPGA和DSP對某型通訊軟件設計與實現的方法。在實際的運用中,較好的實現了總線系統通訊功能,對1553B總線研究具有一定的使用和參考價值。

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 类乌齐县| 阿图什市| 雅安市| 亚东县| 全椒县| 安塞县| 正镶白旗| 荆门市| 四会市| 乐昌市| 慈溪市| 米泉市| 平江县| 莱芜市| 鄂托克前旗| 莒南县| 凤城市| 绥江县| 宜阳县| 台中市| 樟树市| 嘉义县| 河南省| 蓬溪县| 昔阳县| 大埔县| 女性| 灵璧县| 浠水县| 青神县| 班戈县| 台中市| 皮山县| 同德县| 青海省| 渭源县| 古浪县| 桂平市| 贞丰县| 宜春市| 大余县|