新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 一種新型1553B備份總線控制器設計與實現

        一種新型1553B備份總線控制器設計與實現

        作者: 時間:2013-10-29 來源:網絡 收藏
        2.2 中斷服務處理
        共享RAM中固定地址及ACE協議芯片寄存器初始化完成后,協議芯片即工作于RTMT模式,當協議芯片接收到有效命令,將觸發消息結束中斷,中斷服務程序完成對該條消息的處理。首先,用全局變量CurrQueuePtr記錄尚未處理的中斷隊列指針,其初始值為中斷隊列的起始地址0x1000;中斷向量隊列指針寄存器始終存放的是下一次中斷待寫入的中斷隊列指針,讀取中斷向量隊列指針寄存器(1F)內下一次待寫入的中斷隊列指針NextQueuePtr,并進行如下處理:
        f.JPG
        其中Rt_Do_Msg()函數主要完成RT功能下消息接收或發送后的相關處理,如新數據標志的置位與清除等,方式命令的處理等。Mt_Do_Msg()函數主要完成MT功能,將數據從較小的MT數據棧(0x800~0x9FF)根據監控過濾位,將需要監控的消息按照特定的格式重新組織并存儲到較大的MT數據緩沖區(0xA000~0xF000)內,以備用戶使用。

        3 應用實例及分析
        某項目采用作為主干總線,總線上共有RT 13個,RT地址分別為1~13,1個BC,1個BBC,工作于RTMT模式下,RT地址為18。系統應用的消息類型及條數見表2,系統應用要求BBC應能夠與BC同時獲取BC-RT及RT-BC之間的應用數據通信內容,用于同步解算。根據應用要求,若采用BBC工作于RT模式,排列出的總線消息類型及消息條數見表3,根據應用需求,共有BC-RT消息24條,為了滿足BBC同時獲取BC-RT消息的需求,必須增加24條BC到BBC的消息,同樣,共有RT-BC的消息65條,為了滿足BBC同時獲取RT-BC消息的需求,必須增加65條RT-BBC的消息,BBC需排列接收消息為BC-BBC及RT-BBC的消息綜合,共計92條,遠遠大于BBC作為RT模式,僅能接收消息30條消息的限制,且總線傳輸存在延遲,導致BBC不能與BC同步獲取BC-RT與RT-BC的消息,因此,BBC工作于RT模式無法滿足應用需求。若采用BBC工作于MT模式,則無法滿足BC-BBC、BBC-BC及BBC-RT之間的數據傳輸要求。

        g.JPG


        采用新的設計方法后,BBC工作于RTMT模式,作為RT18可以滿足BBC-BC、BC-BBC、BBC-RT及RT-BBC之間的消息通信,同時作為MT可以有選擇的監控BC-RT及RT-BC的消息,無需額外增加BC-BBC及RT-BBC的消息,即可讓BBC與BC同步獲取相應應用數據內容,在不增加消息量的前提下,滿足了系統應用的需求。

        4 結論
        本文首先介紹了當前1553B方向BBC的最新應用模式,并基于1553B協議芯片給出了工作于RTMT模式下BBC的設計與實現方法,并結合工程實例,從實際應用需求出發,分析了RTMT模式與以往RT或MT模式下的應用差別,在RT模式或者MT模式均不能滿足系統要求的前提下,采用RT MT模式很好的解決了系統對于BBC新的應用需求,且無需增加任何總線負載,具有較強的工程實踐意義。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 永和县| 宁阳县| 桑植县| 分宜县| 阿克苏市| 南投县| 焉耆| 闽侯县| 天峻县| 榕江县| 宜春市| 博爱县| 同仁县| 江都市| 织金县| 凤冈县| 出国| 锡林郭勒盟| 衡阳市| 颍上县| 鄄城县| 大邑县| 乐安县| 抚州市| 承德县| 晋宁县| 吉首市| 铜山县| 左云县| 古蔺县| 邹城市| 武强县| 禹城市| 河津市| 财经| 集贤县| 麟游县| 邢台市| 寿宁县| 自治县| 桃园县|